PHP弱类型导致的安全问题--md5

来源:互联网 发布:阿里云服务器个人备案 编辑:程序博客网 时间:2024/06/07 01:49

bypass again
200

地址:依旧是弱类型

来源 hctf

if (isset($_GET['a']) and isset($_GET['b'])) {if ($_GET['a'] != $_GET['b'])if (md5($_GET['a']) === md5($_GET['b']))die('Flag: '.$flag);elseprint 'Wrong.';}

代码可以看出要求,要验证输入的a与b,既要ab不等,又要md5后===,这里用到md5对于array类型比较都相等。

ps:
PHP手册中的md5()函数的描述是string md5 ( string $str [, bool $raw_output = false ] ),md5()中的需要是一个string类型的参数。但是当你传递一个array时,md5()不会报错,知识会无法正确地求出array的md5值,这样就会导致任意2个array的md5值都会相等。

资料链接:php弱类型导致的安全问题

0 0
原创粉丝点击