题目解析
解题链接:http://ctf5.shiyanbar.com/web/houtai/ffifdyop.php
一进去给个登录界面:
F12打开源码看看,哦吼,给了php代码提示:
SELECT * FROM admin WHERE username = 'admin' and password = 'xxx'
这个xxx就是md5($password,true),
这个语句很明显就是sql注入。那么我们就要构造xxx为 ' or ' 1...这种形式,让后面变成true。
构造password为ffifdyop,输出结果就为:'or'6�]��!r,��b
我们发现有 ' or ' 6...(后面乱码不用管)。这样就成功注入。
得到flag:
其实如果你仔细看这道题的url,你会有神奇的发现。
本题知识点
md5注入
md5(string,raw)
参数 | 描述 |
---|---|
string | 必需。规定要计算的字符串。 |
raw | 可选。规定十六进制或二进制输出格式:<br />true - 原始16字符2进制格式<br />false - 默认。32字符十六进制数 |
ffifdyop这个字符在16字符2进制格式中会变成一个特殊的格式
> 'or'6�]��!r,��b
可以进行sql注入。
Comments | NOTHING