一些WAF的繞過方法

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語句中的情況,可以將注入語句分割插入
6.HTTP參數污染
HTTP參數污染是指當同一參數出現多次,不同的中間件會解析成不同的結果,
這個比較適合並且很多,類似的中間件太多,不做具體敘述
7.生僻函數
使用生僻函數代替常見的函數,在報錯注入中使用polygon()函數替換常用的updatexml(),
8.尋找網站源ip
對於雲防護的網站這個方法比較有效,只要找到真實網站ip,然後通過ip直接訪問地址,就不用訪問dns服務器進行解析,就可以繞過雲WAF的檢測
9.cookie
在正常的參數提取中,是GET/POST/COOKIE依次順序,如果WAF只檢測了GET/POST參數,而沒有cookie,可以將注入語句放入cookie中進行繞過

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章