waf 是什麼?
安全是乙個不斷對抗的過程,有防護手段,就有相應的繞過手段。
滲透測試過程中,waf 是必定會遇到的,如何繞過 waf 就是乙個問題。
waf繞過的手段千變萬化,分為3類
白盒繞過
黑盒繞過
fuzz繞過
白盒繞過
如果繞過:
大小寫變形:or,or,or
等價替換:and → && ,or → ||
……(例如 oorr)
白盒下的繞過主要針對原始碼進行審計,分析函式功能,構造特定的包進行繞過
黑盒繞過
架構層繞過 waf
尋找源站(針對雲 waf)
利用同網段(繞過防護區域:例如waf部署在同一網段的出口,使用網段的主機進行攻擊,流量不經過waf 。)
理解邊界漏洞(繞過防護區域:例如利用 ssrf 對其內部進行測試)
資源限制角度繞過 waf
post大 body
協議層面繞過 waf 的檢測
請求方式變換:get 變為 post
引數 汙染(在伺服器互動的過程中,http 允許 get 或者post 多次傳同乙個引數值,造成覆蓋,配合waf 解析的先後規則有可能繞過 waf 的防護)
協議未覆蓋繞過 waf
sql注釋符的繞過
函式分割符號
1、雲waf:
2、主機防護軟體:
在主機上預先安裝了這種防護軟體,和監聽web埠的流量是否有惡意的,所以這種從功能上講,較為全面。常見產品:雲鎖,安全狗等。
3、硬體防護軟體:
硬體waf可以理解為流量**,一般部署方式都需要流量經過他,針對資料報進行拆包-》清洗-》規則名中國-》放行/丟棄。常見產品:各產品鐵盒子waf
為什麼waf可被繞過:
1、業務與安全存在一定衝突
2、waf無法100%覆蓋語言,中介軟體,資料庫的特性。
3、waf本身存在的漏洞。
waf白名單機制:
waf存在某些機制,不處理和攔截白名單中的請求資料:
1、指定ip或ip段的資料
2、來自於搜尋引擎爬蟲的訪問資料。
3、其他特徵的資料
less-27實戰演示:
注:因為我們輸入的空格與--+這些符號都被系統處理為空,無法通過。這裡我們用了空格,union,select,--+繞過,%09或%0a代替空格,'3 分號代表閉合,後面的**就不會執行。
1、爆庫 security
'32、爆表:users
3、爆欄位:username,password
4、爆資料:username,password
'%09union%09select%091,(select%09group_concat(username,password)%09from%09users),'3
WAF 繞過方法
通常,即使繞過了waf的防護,前提條件是後端伺服器是否存在對應的漏洞,後端在開發時一定要在 中加入引數的過濾與校驗,不能只指望waf在中間進行防護,減少威脅面,編寫安全的 才是正確的做法。在bash shell中,問號?表示萬用字元,可以替換任意的單個字元 非空 表示萬用字元,可以匹配任意長度 包括...
waf繞過注入
waf 是什麼?安全是乙個不斷對抗的過程,有防護手段,就有相應的繞過手段。滲透測試過程中,waf 是必定會遇到的,如何繞過 waf 就是乙個問題。waf繞過的手段千變萬化,分為3類 白盒繞過 黑盒繞過 fuzz繞過 白盒繞過 如果繞過 白盒下的繞過主要針對原始碼進行審計,分析函式功能,構造特定的包進...
WAF繞過小結
瀏覽器向伺服器傳送請求的時候必須指明請求型別 一般是get或者post 如有必要,瀏覽器還可以選擇傳送其他的請求頭。大多數請求頭並不是必需的,但content length除外。對於post請求來說content length必須出現。大多數waf都會較全面地檢測來自get請求的攻擊,有選擇地檢測來...