<pre id="vvttv"><mark id="vvttv"><progress id="vvttv"></progress></mark></pre>
    <pre id="vvttv"></pre>

      <p id="vvttv"></p>

          <p id="vvttv"></p>

                <p id="vvttv"></p>

                <pre id="vvttv"><cite id="vvttv"><progress id="vvttv"></progress></cite></pre>

                  <output id="vvttv"><dfn id="vvttv"><th id="vvttv"></th></dfn></output>

                    <p id="vvttv"></p>

                    原文地址:http://drops.wooyun.org/tools/5751

                    0x00 簡介


                    Burpsuite作為web測試的神器,已經人手必備了。它提供的一系列互相配合的工具,極大的提高了手工測試的效率,從1.5版本開始,Burpsuite開始支持擴展。用戶可以自己開發擴展實現一些特殊的需求。不過目前關于Burpsuite擴展開發的中文資料很少。這里拋磚引玉總結一下學習的過程。

                    0x01 基礎知識


                    目前burpsuite官方支持用java,python,ruby開發擴展,選擇還是很多的。Brupsuite的擴展可以實現非常多的功能,比如自定義掃描,修改http請求和響應,修改burp配置等等。幾乎所以burpsuite功能都支持在擴展中進行控制。所以其實是可以用擴展把自己經常使用的功能做成自動化的。這也應該是一個最終的學習目標。官方文檔是首選的資料。中文介紹資料可以參考BurpSuite擴展API和HelloWold

                    0x02 環境配置


                    安裝python開發的擴展需要配置Jython環境。Jython下載直接下載Standalone Jar版本就可以。在extender標簽頁中選擇options標簽。在python environment中選中剛剛下載的jython standalon jar。

                    images

                    如果下載的是jython installer。需要在安裝的時候選擇standlone類型。之后再在burpsuite中選擇安裝目錄下的jython.jar.

                    如果沒有配置好jython環境。添加python編寫的擴展會報錯。

                    0x03 常用接口介紹


                    burpsuite的文檔中給了多個樣例以及詳細的API文檔

                    個人覺得最快的方法還是閱讀現成的擴展代碼。很多需求稍微修改現成的擴展就可以完成。Burp的Bapp store里的擴展安裝之后默認是在burpsuite同目錄下的bapps的文件夾內。

                    簡單介紹一下幾個最常用的接口:

                    interface IBurpExtender: 這個接口所有的擴展都需要實現.

                    Interface IBurpExtenderCallbacks: 這個接口幾乎是必備的。在編寫擴展的過程中會經常用到。

                    Interface IExtensionHelpers: 這個接口是新加的。提供了編寫擴展中常用的一些通用函數,比如編解碼、構造請求等。這樣就不需要重負造輪子了。

                    Interface IHttpRequestResponse: 這個接口包含了每個請求和響應的細節。在Brupsuite中的每個請求或者響應都是IHttpRequestResponse實例。

                    0x04 第一個burpsuite擴展


                    在web測試過程中,使用repeater調試接口是很常見的一個使用方式。現在很多接口都是返回包含unicode明文的json數據,比如這種

                    {"result":"passwd_error","msg":"\u7528\u6237\u540d\u5bc6\u7801\u9519\u8bef"}
                    

                    由于brup的decoder沒有對unicode的解碼,每次想要看一下這些unicode是是什么意思的時候都需要復制出來使用其他工具解碼。可以使用burp擴展來實現自動解碼unicode,從而提高測試的流暢性。

                    首先引入所需要的模塊,在BurpExtender類中定義我們需要的方法。

                    toolFlag是burpsuite中對工具進行識別的方式,proxy是4,repeater是64.可以在文檔里查看所有工具對應的flag值。這里幾行代碼就是先解碼返回值,查找unicode明文,進行解碼,之后再更新響應的body。

                    加載擴展之前,repeater看到的返回:

                    加載擴展之后:

                    代碼下載地址:github

                    0x05 相關資料


                    BurpSuite 擴展開發[1]-API與HelloWold burpextensions.com

                      <pre id="vvttv"><mark id="vvttv"><progress id="vvttv"></progress></mark></pre>
                      <pre id="vvttv"></pre>

                        <p id="vvttv"></p>

                            <p id="vvttv"></p>

                                  <p id="vvttv"></p>

                                  <pre id="vvttv"><cite id="vvttv"><progress id="vvttv"></progress></cite></pre>

                                    <output id="vvttv"><dfn id="vvttv"><th id="vvttv"></th></dfn></output>

                                      <p id="vvttv"></p>

                                      这里只有精品视频