记录几个实战sql绕过

前段时间的几次渗透测试中有几个有意思的sql注入,记录一下注入的绕过过程,网站地址及部分信息都有模糊处理,并已反映给相关单位。

0x01 案例一 绕安全狗

',报错,连sql语句都给了出来,典型的注入,原本以为属于可以直接一把梭的站

order by查字段遭遇安全狗拦截

现在需要手动绕过,感觉这个安全狗应该是比较老的版本

过滤字符:

order by

union select

Length(database())

……

不过滤单个字符,只过滤了相关组合查询语句,一番手动测试成功测出%23%0a可以绕过安全狗拦截

查字段payload

%20order%23%0aby%2013%23

%23#

%0a换行符

根据是否报错,查询出有13个字段,但是当使用联合查询注入盲注时这个payload失效,再次绕过安全狗

终极bypass如下,采用注释绕过,同时#必须用%23,不然会被安全狗拦截

/*&ID=-20 union select 1,2,3,4,5,6,7,8,9,10,11,12,13%23*/

0x02 案例二 盲注绕WTS

查询字段很顺利,直接order by 2查出2个字段但是联合查询注入失败,各种绕过都试了下均失败

又试了下盲注,居然过了,只是过程稍显麻烦

数据库长度为9

and Length(database())>9%23

然后burp抓包,设置爆破范围

and ORD(mid(database(),1,1))=95%23

设置AIISC范围95~122,因为mysql默认不区分大小写,默认都为小写

一位一位爆库

不再赘述。

Thank you very much if you can.

欢迎关注我的其它发布渠道