SQL注入过狗
测试环境
安全狗v3.5
windows7
sqlilabs(php,mysql5.5.53,apache)
and和or绕过
安全狗拦截了and,or,&&,||
但是使用url编码即可绕过and=>&&=>%26%26,or=>||=>%7c%7c
%26%26 1,%26%260,%7c%7c 1, %7c%7c 0均拦截
1可以替换位True,0可以替换位False,绕过
Xor True 和 Xor False也可以绕过
order by绕过
以往的安全狗order by可以直接使用内联注释/!xxx/绕过,但安全狗更新后不再适用,我们可以用mysql的特性/!50445xxx/绕过
根据具体情况使用数字,我这里是mysql5.5.53很多数字都可以绕过,如果不行可以使用脚本生成筛选出合适的数字
union select绕过
union select同样可以使用/!50445xxx/绕过,和order by一样
database(),version(),user()绕过
直接使用database()会被拦截,在旧版的安全狗中用(database/* */())来绕过
新版的安全狗并未修复,用database/**/()仍然可以绕过,version()和user()也是一样
information_schema被禁止访问
新版的安全狗会拦截非法访问information_schema库,这里我尝试了各种常用的方法未能直接绕过,如果有大佬绕过了恳求能分享一下
由于不能使用information_schema,我绕过的方法是使用盲注或mysql=>5.7使用其他的特殊库也能查询到数据