WAF绕过主要是SQL注入,其他的WAF绕过方法在原理上都差不多。
1.WAF解析数据过程中
2.WAF匹配库匹配中
一些常见的方法
1.大小写混合
在规则匹配时只针对了特定大写或者小写的情况,在实战中可以通过混合大小写方法绕过
比如sql语句: unION sELEct 1,2,3
2.URL编码
很少的WAF不会对普通字符进行URL解码
正常语句:union select 1,2,3
编码过后:1.union%20select%201%2C2%2C3
2.\u0075\u006e\u0069\u006f\u006e\u0025\u0032\u0030\u0073\u0065\u006c\u0065\u0063\u0074\u0025\u0032\u0030\u0031\u0025\u0032\u0043\u0032\u0025\u0032\u0043\u0033
还有一种情况就是URL二次编码,WAF一般只进行一次解码,而如果web程序进行了额外的URL解码,即可绕过。
3.替换关键字
WAF才用替换或者删除敏感词汇,比如union,order by这些敏感词,如果只匹配一次就很容易绕过
正常sql语句:union select 1,2,3
替换过后:ununionion selselectect 1,2,3
4.使用注释
注释在截断SQL语句中用得比较多,在绕过时主要使用其代替空格,适用于检测过程中没有识别注释或者替换掉了注释WAF
5.多参数请求拆分
对于多个参数拼接到同一个SQL语句中的情况,可以将注
最低0.47元/天 解锁文章
188

被折叠的 条评论
为什么被折叠?



