看到这个标题就很感兴趣,前女友。。。
打开之后发现像一封信,
PHP是世界上最好的语言,打开源代码查看
发现中间有一个code.txt的文件,感觉可以探索一下。点击之后发现有php语句,应该有绕过的机制。
是很简单的语句,v1不能等于v2,但是md5要相等,并且v3不能等于flag。
strcmp(char s1, char s2)
如果s1 = s2 ,返回值为0;
s1 < s2,返回值为负数;
s1 > s2,返回值为正数;
在百度上查了一下,QNKCDZO和240610708的值不一样但md5一样,然后查到了md5的漏洞:不能识别数组。也就是说除了能够让v1和v2的值等于上面那两个数,也可以直接利用数组绕过。
也尝试了利用数组来进行绕过。
获得了flag!
SKCTF{Php_1s_tH3_B3St_L4NgUag3}
看来前女友还是说得还是对的,php是世界上最好的语言。
这道题感觉还比较简单,学习到了md5的知识,不过也提出了疑问,v3为何是数组???看来还需要多多学习
来吧,关注我一下,大家一起学习网络安全,共同进步~~
更新频率挺高哦!!实打实原创!!!