SQL- ffifdyop绕过
当看到这个绕过并没法察觉的时候,我就知道我的SQL注入还没入门,在浏览其他师傅的blog中,知道这是绕过中的一个奇妙的字符串
SQL-- ffifdyop绕过
绕过技巧解读
先给你看一个东西:276f7227,看到这个你想到了什么?
<----‘or’---->有没有给你一个很熟悉的感觉!是的这正是“ffidfyop”的md5加密后的值:276f722736c95d99e921722cf9ed621c 我们都知道SQL语句会自动将Hex转成Ascii来解释。
因此拼接之后:
select * from admin where password=''or'6<乱码>'
相当于select * from admin where password=''or'1
,一个永真式,以此来绕过MD5()。
同理的还有:129581926211651571912466741651878684928 也可达同样的效果
总之,相当于 select * from admin where password=''or ture
。
例题解读:
[BJDCTF 2020]easy_md5
打开链接,看到输入框,第一时间就想到注入:
试过诸多注入无果,抓了一下包,看到hint:
看到hint,就知道是绕过MD5()。
框内输入“ffifdyop”,成功绕过。
查看源代码,这里有很多种绕过方式:
1 | ?a=QNKCDZO&b=240610708 |
同理,POST双参数数组绕过。
这里有其他师傅的顶级理解:
弱类型比较变成了强类型比较了,这里就只能用php数组绕过,由于哈希函数无法处理php数组,在遇到数组时返回false,我们就可以利用false==false成立使条件成立
flag:NSSCTF{762d2772-8382-4ec4-9f9c-8354f7d0c995}
结
学到了新东西,这才是入门诶,呜呜呜,我好菜!!!