ffifdyop为万能sql注入密码
1 | "select * from 'admin' where password=' ".md5($pass,true)." ' " |
输入:ffifdyop
原因:数据库会把16进制转为ascii解释
如下: flag{welcome}的16进制是0x666c61677b77656c636f6d657d
而我们的md5(ffifdyop) 会返回16进制字符串
这时原来的语句就是:
1 | "select * from 'admin' where password='' or'6蒥欓!r,b' " |
or后面的句子第一个字母是非0打头的数字符,比如为 ‘ 1abc ’ 或者 ‘ -1bde ’都会被认为是true。
以0开头会认为是false.
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 li-yian!
评论