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使用其他的特殊库也能查询到数据

原文地址:https://www.cnblogs.com/g0udan/p/12662936.html