基于布尔和时间的盲注也碰到过好多了,记录一下盲注的方法吧。(其实是我经常忘记盲注的语句,所以专门写篇文章记录 XD)

基于布尔

1. 场景

SQL注入不一定可以直接得到我们想要的信息,有时候页面只有两种返回:true && false。这时候就可以利用盲注了。

2. 方法

方法1——使用left()函数进行猜测

?id=1' and left(database(),1)>'r'#

方法2——使用ascii()函数和substr()函数进行猜测

?id=1' and ascii(substr((select database()),1,1)>144#
当然这里也可以不用ascii(),直接使用substr来猜字符是什么。(反正写个脚本猜的也不慢(~ ̄▽ ̄)~)

猜库会了,猜字段啊,数据啊什么的应该也会了吧?(毕竟后面就是常规的注入了)

3. 例题

Bugku web login3(SHCTF))
Writeup)

基于时间

1. 场景

当 web application 执行了我们的语句但对返回的内容进行了过滤,就可以进行基于时间的盲注。

2. 方法

基于时间的注入可以用以下语句:

if语句

if(length(database())=8,sleep(10),1);

select语句

select case when (条件) then 代码1 else 代码 2 end;

方法就是这样,剩下的就是常规注入啦~

3. 例题

Bugku web INSERT INTO注入
Writeup

最后修改:2019 年 06 月 25 日
如果觉得我的文章对你有用,请随意赞赏