Buuctf-web-[BJDCTF2020]Easy MD5(ffifdyop绕过)

 响应头里发现sql语句

select * from 'admin' where password=md5($pass,true)

 

看了大佬博客,这个可以用ffifdyop绕过,绕过原理是:
ffifdyop 这个字符串被 md5 哈希了之后会变成 276f722736c95d99e921722cf9ed621c,这个字符串前几位刚好是 ' or '6
而 Mysql 刚好又会把 hex 转成 ascii 解释,因此拼接之后的形式是 select * from 'admin' where password='' or '6xxxxx',等价于 or 一个永真式,因此相当于万能密码,可以绕过md5()函数。

果然,我们提交之后就绕过了这个,来到了另一个页面

 查看源代码,发现可以接着绕过

  由于是get方式,我们可以构造payload:?a[]=1&b[]=2

  POST方式,传param1和param2两个参数,这两个参数还不能相等,但是md5转换后的值还要相等,在这里我们就用md5无法处理数组,然后都返回null,null=null然后就绕过了这个。

flag{4054608f-7d45-4173-94e3-f874e12c0320}

原文地址:https://www.cnblogs.com/tac2664/p/13823469.html