依旧是弱类型
if (isset($_GET['a']) and isset($_GET['b'])) { if ($_GET['a'] != $_GET['b']) if (md5($_GET['a']) === md5($_GET['b'])) die('Flag: '.$flag); else print 'Wrong.'; }
($_GET['a'] != $_GET['b'])
此处a和b不想等
md5($_GET['a']) === md5($_GET['b']
此处a和b的MD5值相等
===
自处是强等
所以暂无法从弱类型出进行
这时就考虑md5函数的用法,
$_GET可以接受数组但MD5 md5()不能处理数组结构的数据
构造?a[]=1&b[]=2这样md5函数无法处理数组返回false完成匹配得到flag
Flag: nctf{php_is_so_cool}
转载于:https://www.cnblogs.com/maodun/p/6916449.html