溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

利用Python開發(fā)Burp Suite插件的示例分析

發(fā)布時間:2021-12-04 09:58:25 來源:億速云 閱讀:342 作者:柒染 欄目:網(wǎng)絡管理

這篇文章將為大家詳細講解有關利用Python開發(fā)Burp Suite插件的示例分析,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

我們會在每個參數(shù)后面插入大量 sql 注入檢測參數(shù),并且通過接口類獲取發(fā)送的請求數(shù)據(jù)和接收響應數(shù)據(jù),然后根據(jù)響應數(shù)據(jù)判斷 sql 注入漏洞是否存在。

所需要的接口類

利用Python開發(fā)Burp Suite插件的示例分析

IIntruderPayloadProcessor:

這是一個 Intruder 工具的 payload 處理器,我們可以通過 IBurpExtenderCallbacks.registerIntruderPayloadProcessor() 注冊一個。此類里面有兩個函數(shù)需要實現(xiàn) getProcessorName()和 processPayload()

利用Python開發(fā)Burp Suite插件的示例分析

getProcessorName 方法:

用于獲取 payload 處理器的名稱

processPayload 方法:

當處理器每次應用 payload 到一次 Intruder 攻擊時,Burp 都會調(diào)用一次此方法

利用Python開發(fā)Burp Suite插件的示例分析

IHttpListener:

這是一個 http 監(jiān)聽器,burp 里的任何一個工具發(fā)起的 http 請求或收到 http 響應都會通知此監(jiān)聽器,通過 IBurpExtenderCallbacks.registerIntruderPayloadProcessor() 注冊,我們可以通過這個類得到交互數(shù)據(jù),進行分析和修改。此類里面有一個 processHttpMessage()需要實現(xiàn)。


利用Python開發(fā)Burp Suite插件的示例分析

processHttpMessage 方法:

需要獲取所有的 http 數(shù)據(jù)包,必須通過上述接口,重寫此方法。

利用Python開發(fā)Burp Suite插件的示例分析

(其他的 api 類在這不做介紹,可參考前幾篇文章)

代碼實現(xiàn)和解讀

第一步:

導入我們的 burpapi 類

利用Python開發(fā)Burp Suite插件的示例分析

第二步:

將需要用到的 sql 注入語句寫入數(shù)組

利用Python開發(fā)Burp Suite插件的示例分析

這里只做演示,這個地址上有大量測試語句:

https://github.com/trietptm/SQL-Injection-Payloads

第三步:

注冊所有需要注冊的接口類

利用Python開發(fā)Burp Suite插件的示例分析

第四步:

已經(jīng)注冊了 payload 生成器,現(xiàn)在完成我們 payload 生成器,

返回此接口的一個新實例。

利用Python開發(fā)Burp Suite插件的示例分析

第五步:

定于 intruder 工具的 payload 生成器。

利用Python開發(fā)Burp Suite插件的示例分析

第六步:

處理從 payload 生成器中返回的 payload

利用Python開發(fā)Burp Suite插件的示例分析

第七步:

先前已經(jīng)注冊好 http 監(jiān)聽器,現(xiàn)在使用 http 監(jiān)聽器獲取 http 請求和響應數(shù)據(jù),可以分析和修改交互數(shù)據(jù)。

利用Python開發(fā)Burp Suite插件的示例分析

messageInfo 是一個類,我們通過類方法獲取和修改相關數(shù)據(jù):

利用Python開發(fā)Burp Suite插件的示例分析

上圖可以看見 getHttpService()會返回一個 IHttpService 實例子

利用Python開發(fā)Burp Suite插件的示例分析

通過調(diào)用里面的方法可以獲取到詳細的 http 信息細節(jié)。

我的 pycharm 用的是 python3 的環(huán)境變量,目前 jython 只支持 python2,所有我們必須使用 python2 的語法進行打印,將結(jié)果輸出在 burp 終端。

最后貼一張完整代碼:

利用Python開發(fā)Burp Suite插件的示例分析利用Python開發(fā)Burp Suite插件的示例分析

注:使用的時候如下配置

利用Python開發(fā)Burp Suite插件的示例分析

最終效果:

利用Python開發(fā)Burp Suite插件的示例分析

關于利用Python開發(fā)Burp Suite插件的示例分析就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI