Bypass 護衛神SQL注入防禦
0x00 前言
護衛神一直專註伺服器安全領域, 其中有一款產品,護衛神·入侵防護系統 ,提供了一些網站安全防護的功能,在IIS加固模塊中有一個SQL防注入功能。
這邊主要分享一下幾種思路,Bypass 護衛神SQL注入防禦。
0x01 環境搭建
軟體版本:護衛神·入侵防護系統 V3.8.1 最新版本
測試環境:IIS+ASP/ASPX+MSSQL IIS+PHP+MySQL
0x02 WAF測試
護衛神SQL防注入的規則幾年了基本都沒有什麼變化,先來一張攔截測試圖:
姿勢一:%00截斷
%00截斷是上傳漏洞中常用的一個非常經典的姿勢,在SQL注入中,也可以用來Bypass。在WAF層,接收參數id後,遇到%00截斷,只獲取到 id=1,無法獲取到後面的有害參數輸入;
在ASPX+MSSQL中,支持%00來代替空白字元,構造的SQL語句得以成功執行,獲取數據。
在PHP+Mysql中,可以用,同樣可以進行Bypass。
姿勢二:GET+POST
當同時提交GET、POST請求時,進入POST邏輯,而忽略了GET請求的有害參數輸入,可輕易Bypass。
在IIS+ASP/ASPX+MSSQL IIS+PHP+MySQL 均適用。
姿勢三:unicode編碼
IIS伺服器支持對於unicode的解析,對關鍵詞進行unicode編碼繞過。
姿勢四:ASPX+HPP
在ASPX中,有一個比較特殊的HPP特性,當GET/POST/COOKIE同時提交的參數id,服務端接收參數id的順序GET,POST,COOKIE,中間通過逗號鏈接 。
UNION、SELECT、兩個關鍵字拆分放在GET/POST的位置,通過ASPX的這個特性連起來,姿勢利用有點局限,分享一下Bypass思路。
姿勢五:ASP %特性
在IIS+ASP中,當我們輸入un%ion,解析的時候會去掉%號,服務端接收的參數是union。
姿勢六:緩衝區溢出
在PHP+Mysql中,使用POST 大包溢出的思路可成功Bypass。
編寫一個簡單的Python腳本,當A的個數填充到49099時,可成功Bypass。
姿勢七:黑名單繞過
護士神SQL防注入,採用的是黑名單過濾,關鍵字並不全,比如只過濾union select,select from卻放過了,那麼這裡就存在很多種繞過的形式。
基本上報錯注入、盲注、延遲注入都可以很輕易Bypass,這時候直接利用SQLMAP,指定注入方式來獲取數據。
0x03 END
總結了幾種IIS下SQL注入 Bypass的思路,在實戰中也很常見。
歡迎分享本文,轉載請保留出處。
聽說公眾號讚賞功能升級了,我也來試試。
喜歡這篇文章的人也喜歡 · · · · · ·
Bypass
About Me
一個網路安全愛好者,對技術有著偏執狂一樣的追求。致力於分享原創高質量乾貨,包括但不限於:滲透測試、WAF繞過、代碼審計、安全運維。
※LaySNS_v2.2.0漏洞分析
※兩個簡單的CSRF漏洞實例
TAG:Bypass |