BurpSuite-Team-Extension
この Burpsuite プラグインを使用すると、複数のテスターがライブ/履歴のプロキシリクエスト、スコープ、リピーター/イントルーダーのペイロードをリアルタイムで相互に共有でき、真に協調的な Web アプリケーションテストが可能になります。Team Server に接続して Team Room に参加すると、Burp クライアントを通過するすべてのリクエストがルーム内の他のテスターと共有され、その逆も同様です。
Request from clients to target propegated to other clients

Response from target to clients propegated to other clients

Features
-
すべてのクライアント間でリクエスト/レスポンスペアをリアルタイム共有
-
クライアントとサーバー間のすべてのトラフィックの相互 TLS 暗号化
-
1 つのサーバーで複数のチームを利用できる個別の Team Room
-
個々のチームメンバーまたはルーム全体のミュート
-
ルームへのトラフィック送信の一時停止
-
ルーム内のすべてのクライアント間でスコープを同期
-
リピーター/イントルーダーのペイロードを個々のチームメンバーまたはルーム全体と共有
-
特定のリクエスト/レスポンスペアを個々のチームメンバーまたはルーム全体と共有
-
Burp Suite の外部で共有できる Burp Suite リクエストへの共有リンクを生成
-
検出された Cookie の自動共有
-
検出されたパッシブ/アクティブスキャン結果の自動共有
-
すべてのリクエストまたはスコープ内のリクエストのみの共有を設定
-
Cookie の共有/受信を設定
-
問題 (Issue) の共有/受信を設定
-
接続設定の保存
How it works
この協調的な Web アプリケーションテストを可能にする要素は 2 つあります。1 つ目は、API を使用してリクエスト/レスポンスペアをキャプチャし、サーバーに転送して他のクライアントのトラフィックを受信する Burpsuite プラグインです。これは、このツールを使用する際にユーザーが目にするメイン UI です。2 つ目は、クライアントとルーム間の接続を管理する GO で書かれた軽量サーバーです。
サーバーの起動方法
github の Release からビルド済みの Linux バイナリをダウンロードできます。
または、次のように手動でビルドすることもできます:
go get github.com/Static-Flow/BurpSuiteTeamServer/cmd/BurpSuiteTeamServer
cd ~/go/src/github.com/Static-Flow/BurpSuiteTeamServer/
go get ./...
go install ./...
~/go/bin/BurpSuiteTeamServer -h
Burpsuite プラグインのインストール方法
jar ファイルは build/jar フォルダー内にプリビルドされています。プリビルドされた jar を使用するには:
- Burpsuite を起動します
- Extender タブに移動します
- 「Add」をクリックし、git リポジトリから jar ファイルを選択します
- "Burp TC" というタイトルの新しい Burpsuite タブが表示されます
Burp Team Server 機能の使用方法
Server Actions
これらの操作は、サーバーに接続したクライアントが実行できます。
サーバーへの接続
- "Burp TC" タブに移動します
- 選択したユーザー名、サーバーの IP アドレス、ポート、サーバーパスワード(必要な場合)を入力します
- "Burp TC" タブ内の "Configuration" タブに移動します
- "Select Certificate" ファイル選択ボタンを使用して、サーバー起動時に生成されたサーバー証明書を選択します
- "Select Certificate Key" ファイル選択ボタンを使用して、サーバー起動時に生成されたサーバー証明書キーを選択します
- "Connect" ボタンをクリックします
サーバーからの切断
- "Disconnect" ボタンをクリックします
新しいルームの作成
- "New Room" ボタンをクリックします
- ルーム名を入力します
- 必要に応じて、ルームのパスワードを入力します
- "Ok" をクリックします
ルームへの参加
- 中央右のパネルに現在のサーバールームが表示されます。存在しない場合は "No rooms currently" と表示されます
- 目的のルームを右クリックして "Join" をクリックします
- パスワードが必要な場合はプロンプトが表示されるので、ルームのパスワードを入力します
Room Actions
これらの操作は、サーバーに接続してルームに参加したクライアントが実行できます。
ルームから退出
- "Leave Room" ボタンをクリックします
サーバーへのデータ送信を一時停止
- "Pause" ボタンをクリックします
サーバーへのデータ送信を再開
- "Unpause" ボタンをクリックします
個々のチームメンバーをミュート
- 中央右のパネルに現在のルームメンバーが表示されます
- 目的のメンバーを右クリックして "Mute" をクリックします
個々のチームメンバーのミュートを解除
- 中央右のパネルに現在のルームメンバーが表示されます
- 目的のメンバーを右クリックして "Unmute" をクリックします
すべてのチームメンバーをミュート
- "Mute All" ボタンをクリックします
すべてのチームメンバーのミュートを解除
- "Unmute All" ボタンをクリックします
ルームスコープの設定
(これはルームを作成したクライアントのみが実行できます)
- Target タブを使用して、Burpsuite のスコープを必要に応じて設定します
- "Burp TC" タブ内で "Set Room Scope" ボタンをクリックします
ルームスコープの取得
- "Get Room Scope" ボタンをクリックします
これらの操作は、"Burp TC" タブ外の Burpsuite ツールに適用されます。
リピーターペイロードをチーム全体と共有
- Repeater タブ内で Request エディターを右クリックし、"Share Repeater Payload" にマウスオーバーします
- "To Group" を選択します
リピーターペイロードをチームメンバーと共有
- Repeater タブ内で Request エディターを右クリックし、"Share Repeater Payload" にマウスオーバーします
- "To Teammate" にマウスオーバーします
- 目的のチームメンバーの名前を選択します
イントルーダーペイロードをチーム全体と共有
- Intruder タブ内で "Positions" タブに移動します
- "Positions" タブ内で Request エディターを右クリックし、"Share Intruder Payload" にマウスオーバーします
- "To Group" を選択します
イントルーダーペイロードをチームメンバーと共有
- Intruder タブ内で "Positions" タブに移動します
- "Positions" タブ内で Request エディターを右クリックし、"Share Intruder Payload" にマウスオーバーします
- "To Teammate" にマウスオーバーします
- 目的のチームメンバーの名前を選択します
プロキシリクエストをチーム全体と共有
- Target タブ内で "Site map" タブに移動します
- "Site map" タブ内で共有したいエントリを右クリックし、"Share Request" にマウスオーバーします
- "To Group" を選択します
プロキシリクエストをチームメンバーと共有
- Target タブ内で "Site map" タブに移動します
- "Site map" タブ内で共有したいエントリを右クリックし、"Share Request" にマウスオーバーします
- "To Teammate" にマウスオーバーします
- 目的のチームメンバーの名前を選択します
Custom Actions
サーバー証明書の設定
- "Burp TC" エクステンションタブ内の "Configuration" タブに移動します
- "Select Cetificate" ボタンをクリックします
- ファイルピッカーを使用して、サーバーによって生成された "BurpServer.pem" ファイルを選択します
サーバー証明書キーの設定
- "Burp TC" エクステンションタブ内の "Configuration" タブに移動します
- "Select Cetificate Key" ボタンをクリックします
- ファイルピッカーを使用して、サーバーによって生成された "BurpServer.key" ファイルを選択します
共有リンクを URL として生成
- Repeater タブ内で右クリックし、"create link" を選択します
- "Burp TC" エクステンションタブ内の "Shared Links" タブに移動します
- 共有したいリンクを右クリックし、"Get link" を選択します
共有リンクを HTML リンクとして生成
- Repeater タブ内で右クリックし、"create Link" を選択します
- "Burp TC" エクステンションタブ内の "Shared Links" タブに移動します
- 共有したいリンクを右クリックし、"Get HTML Link" を選択します
生成したリンクの削除
- Repeater タブ内で右クリックし、"create link" を選択します
- "Burp TC" エクステンションタブ内の "Shared Links" タブに移動します
- 共有したいリンクを右クリックし、"Remove link" を選択します
スコープ内のリクエストのみを共有する設定
- "Burp TC" エクステンションタブ内の "Configuration" タブに移動します
- "Share all requests" チェックボックスをオフにします
検出された問題の送信設定
- "Burp TC" エクステンションタブ内の "Configuration" タブに移動します
- "Share issues" チェックボックスをオフにします
検出された Cookie の送信設定
- "Burp TC" エクステンションタブ内の "Configuration" タブに移動します
- "Share cookies" チェックボックスをオフにします
検出された問題の受信設定
- "Burp TC" エクステンションタブ内の "Configuration" タブに移動します
- "Receive shared issues" チェックボックスをオフにします
検出された Cookie の受信設定
- "Burp TC" エクステンションタブ内の "Configuration" タブに移動します
- "Receive shared cookies" チェックボックスをオフにします