代码审计_strcmp比较字符串

题目链接:https://ctf.bugku.com/challenges

题解:

打开题目

PHP代码如下:

该代码中相关知识点链接如下:
isset函数:http://www.w3school.com.cn/php/func_misc_die.asp
strcmp函数:http://www.w3school.com.cn/php/func_string_strcmp.asp

对于传入非字符串类型的数据的时候,strcmp函数将发生错误,在5.3之前的php中,显示了报错的警告信息后,将return 0 ! 也就是虽然报了错,但却判定其相等了。 即:strcmp()在比较字符串和数组的时候直接返回0,这样通过把目标变量设置成数组就可以绕过该函数的限制

即flag为:flag{bugku_dmsj_912k}

原文地址:https://www.cnblogs.com/gzu_zb/p/10371681.html