午夜视频在线网站,日韩视频精品在线,中文字幕精品一区二区三区在线,在线播放精品,1024你懂我懂的旧版人,欧美日韩一级黄色片,一区二区三区在线观看视频

分享

【工具分享】DetSql-SQL注入探測插件工具,可快速從http流量中篩選出可能存在SQL注入的請求

 zZ華 2024-12-14

Image

簡介:

DetSql是一款基于Burp Suite Java插件API開發(fā)的SQL注入檢測工具,旨在高效地從HTTP流量中識別潛在的SQL注入風險請求。該插件設計的目標是在最小化干擾的同時,提升SQL注入測試的效率。通過智能分析網(wǎng)絡請求,DetSql能夠幫助安全測試人員快速定位那些可能含有SQL注入漏洞的請求。

提示:DetSql采用Montoya API進行開發(fā),BurpSuite版本需滿足(>=2023.12.1)

判斷方式:

為了便于說明,我們將請求中的一個參數(shù)值稱為 value,響應體稱為 respbody,value->respbody 表示當參數(shù)值為 value 時,發(fā)送請求所獲得的響應體為 respbody。以下的判斷方法依賴于MySQL、SQL Server、Oracle和PostgreSQL四種數(shù)據(jù)庫的某個版本進行測試。

報錯類型判斷:

在請求的任意參數(shù)值后面加上特定的報錯測試負載(PoC),形成新的參數(shù)值 value + PoC。這里的PoC包括但不限于 ',%DF'、',%DF'`%DF`,其中 %DF 考慮到了寬字節(jié)的問題,同時增加了URL編碼的單雙引號以及在處理JSON數(shù)據(jù)時的Unicode編碼單雙引號。發(fā)送帶有新參數(shù)值的請求后,檢查響應是否符合預定義的近100條報錯正則表達式之一。如果任何一個規(guī)則匹配成功,則認為存在報錯類型的注入,并將該參數(shù)標記為 errsql,同時備注相應的報錯正則表達式。反之,則認為不存在此類注入。

數(shù)字類型判斷:

當 value 是數(shù)字且不是JSON對象的鍵值時,執(zhí)行以下測試,否則不對該 value 進行進一步判斷:發(fā)送原始請求 value->respbody。發(fā)送帶有PoC1(value-0-0-0)的請求,獲取 respbody1 并使用Levenshtein距離算法與 respbody 比較相似度。如果相似度低于90%,則認為不存在數(shù)字類型注入。若相似度超過90%,繼續(xù)發(fā)送帶有PoC2(value-abc)的請求,獲取 respbody2,并與 respbody 和 respbody1 分別比較相似度。如果 respbody2 與兩者相似度均低于90%,則認為存在數(shù)字類型注入,并將該參數(shù)標記為 numsql。

order 類型注入:

對于非空的 value,執(zhí)行以下測試流程,否則不對該 value 進行進一步判斷:發(fā)送原始請求 value->respbody。發(fā)送帶有PoC1(value,0)的請求,獲取 respbody1,并使用Jaccard相似度算法與 respbody 比較,相似度低于90%則繼續(xù)下一步。發(fā)送帶有PoC2(value,xxxxxx)的請求,獲取 respbody2,再次與 respbody 比較相似度,低于90%則繼續(xù)。發(fā)送帶有PoC3(value,1)的請求,獲取 respbody3,與 respbody 比較相似度,若高于90%則認為存在Order類型的注入,標記為 ordersql。若未達到上述條件,繼續(xù)發(fā)送帶有PoC4(value,2)的請求,獲取 respbody4,與 respbody 比較相似度,若高于90%則同樣認為存在Order類型的注入。

字符類型注入:

對于JSON格式的數(shù)據(jù),只有當鍵值 value 被雙引號包圍時才進行后續(xù)測試,否則不對該 value 進行進一步判斷:發(fā)送原始請求 value->respbody。發(fā)送帶有PoC1(value')的請求,獲取 respbody1,與 respbody 比較相似度,低于90%則繼續(xù)。發(fā)送帶有PoC2(value'')的請求,獲取 respbody2,與 respbody1 比較相似度,低于90%則繼續(xù)。發(fā)送帶有PoC3(value'+')的請求,獲取 respbody3,與 respbody 比較相似度,若高于90%則認為存在字符類型注入。若未達到上述條件,繼續(xù)發(fā)送帶有PoC4(value'||')的請求,獲取 respbody4,與 respbody 比較相似度,若高于90%則同樣認為存在字符類型注入,標記為 stringsql。

附加判斷:

除了基于相似度算法的判斷之外,還引入了響應長度變化的閾值作為輔助判斷標準,以增強判斷的準確性。例如,當兩個響應長度相同視為完全相似;當響應長度差異超過一定值(如100字節(jié))時,輔助判斷的相似度設定為90%;當響應長度差異極小時,則直接采用算法計算的相似度進行比較。在實際判斷過程中,根據(jù)需要選擇算法計算的相似度或輔助判斷的相似度中較大的(或較小的)值來進行最終的相似度比較。

使用方法:

插件裝載: Extensions - Installed - Add - Select File - Next

主面板:

Image

左上角顯示原始流量的詳細信息,包括序號、請求來源、域名、請求方式、URL路徑、響應體長度及漏洞提示;右上角則列出測試請求的流量,涵蓋參數(shù)名、PoC、響應體長度、狀態(tài)碼、相似度、請求時間和漏洞提示,僅顯示存在漏洞的請求;左下和右下區(qū)域分別展示選中請求的詳細請求與響應內容。

在Logger模塊中查看掃描流量,選擇Extensions類型如下:

Image

例子:

報錯類型頁面:

Image

order類型頁面:

Image

數(shù)字類型頁面:

Image

字符類型頁面(包含多種類型):

Image

雙引號問題:

由于雙引號閉合的情況較為罕見,但經(jīng)過測試確實存在雙引號導致報錯的情形,因此在報錯類型檢測中仍然保留了雙引號的使用。用戶如需自定義報錯Payload,可以在配置面板中進行相應設置。

配置面板(config):

Image

配置說明:白名單:用于指定允許測試的請求域名,支持形式如 baidu.com、192.168.1.2,多個域名間使用豎線 | 分隔。不允許填寫C段地址,留空則表示測試所有域名。黑名單:用于指定禁止測試的域名,確保這些域名不會被誤測試。禁止后綴:列出不應被測試的靜態(tài)文件后綴,例如 .jpg、.png 等,默認已包含常見靜態(tài)文件的后綴。報錯 PoC:允許用戶自定義報錯類型的測試負載。一旦設置了自定義報錯 PoC,內置的報錯 PoC 將不再使用。設置后需點擊確認按鈕使配置生效。功能開關:開關:點擊勾選以啟動測試。測試 Cookie:勾選后將測試Cookie參數(shù)。只測報錯:勾選后將僅測試報錯類型注入,不進行其他類型的注入測試。接受 Repeater:勾選后,工具將監(jiān)聽并測試來自Repeater模塊的請求,同時考慮了請求去重功能,但對于來自Repeater模塊的請求不進行去重處理,確保每個請求都能被測試。其他特性:手動停止請求:對于來自Proxy模塊的請求,提供了手動停止測試的功能。通過右鍵菜單中的“結束該請求測試”選項,可以停止正在進行或等待測試的請求。請求的狀態(tài)會在UI中更新以反映這一變化。響應體大小限制:對響應體的大小進行了限制,響應體長度超過50000字節(jié)的請求將不被測試;長度在1000050000字節(jié)之間的請求測試速度可能會較慢,為此設置了一個較低的線程數(shù)以保證手動測試的基本需求。配置保存與加載:提供了將當前配置保存到文件或從文件中加載配置的功能,方便用戶管理和恢復測試設置。

手動停止頁面:

Image

Image

輔助面板(codetool):

Image

由于 burpsuite 自帶的 base64 編碼,URL 編碼解碼遇到中文會出現(xiàn)亂碼,因此添加了基于 UTF-8 的可編解碼中文的 base64,URL 編碼,如果 base64 解碼后為 json 字符串可點擊 JSON 格式化按鈕對其格式化,同時為便于查看中文還增加了 Unicode 解碼。

建議:

DetSql目的用于輔助手動測試,由于設置線程較小不利于大量請求時的被動掃描,建議使用時在白名單處設置測試域名或IP,如www.baidu.com,以此減少不必要的無效掃描,填baidu.com即代表baidu.com及其所有子域,多個可表示為baidu.com|qq.com

若出現(xiàn)卡頓建議按此配置,如下:

Image

正常很少出現(xiàn)卡頓情況,同時建議使用最新版進行測試,經(jīng)測試,未設置白名單將請求掃描數(shù)量快速加到170個左右未發(fā)現(xiàn)卡頓、閃退等異常,可正常運行,如下:

Image

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多