1. サポートセンター
  2. ドキュメント
  3. デスクトップ版
  4. ツール
  5. Intruder
  6. 入門

Burp Intruder入門

Burp Intruderは、カスタマイズした自動攻撃をWebアプリケーションに対して行うための強力なツールです。非常に柔軟性があり自由にカスタマイズでき、Webアプリケーションをテストする際の全ての種類のタスクを自動化できます。

注: Burp Intruderを使うと、一部のアプリケーションで予期しない影響が出る可能性があります。機能や設定にしっかり慣れるまで、本番以外のシステムだけで使うべきです。

Burp Intruderを習得するには、次の手順を実行します:

  1. まず、Burpのインストールと実行を確認し、Burpが使われるようブラウザの設定ができているか確認します。
  2. まだ何もしていなければ、対象アプリケーションの一部をブラウズし、BurpのTargetサイトマップにアプリケーションのコンテンツや機能の詳細を取り込みます。その前に、スピードアップのため、ProxyタブのInterceptタブで、Proxyのインターセプトを無効にします。(もし"インターセプト有効"となっていたら、クリックしてステータスを無効に反転させます)
  3. ProxyのHistoryタブに移動します。対象アプリケーションのから、パラメータを多くの含むような気になるリクエストを見つけます。そのうち1つのリクエストを選択し、コンテキストメニューから"Intruderに送信"を選択します。
  4. Intruderタブに移動します。Burp Intruderは、同時に複数の攻撃を設定できます。Intruderに送信された各リクエストが個別の攻撃のタブで開き、これらにはデフォルトで連番が付けられます。タブ名をダブルクリックすると名前変更ができ、ドラッグすると並び替えができ、タブを閉じたり新たなタブも開けます。
  5. Intruderに送信したリクエストに対して作成された攻撃タブ内で、Targetとポジションタブを見てください。送信したリクエストの詳細が自動的に入力されています。
  6. Burp Intruderの動作としては、ベーステンプレートリクエスト(あなたが送信したもの)を取得し、数多くの攻撃ペイロードを一通り、ベースリクエスト内の定義済みの場所にこれらのペイロードを配置し、できあがったリクエストそれぞれを発行します。ポジションタブでは、ベースリクエストにペイロードを挿入する位置を設定します。ペイロードを配置するであろう箇所をBurpが自動的に推測した結果が表示されているはずです。デフォルトで、全てのリクエストパラメータとcookieの値にペイロードが配置されます。ペイロードマーカの各ペアは1つのペイロードポジションを定義し、ベースリクエストのどこかのテキストを囲んでいる場合、ペイロードポジションが使われる際にそこがペイロードのコンテンツに置き換えられます。詳細については、ペイロードマーカのヘルプを参照してください。
  7. リクエストエディタの横にあるボタンでペイロードマーカの追加や削除ができます。リクエスト内の新しい場所にペイロードマーカを追加したり、他のマーカを削除してみて、効果を確認してください。ペイロードマーカの動作を理解したら、"自動§"ボタンをクリックしてBurpのデフォルトのペイロードポジションに戻してください。リクエスト自体のテキストを変更した場合は、手順3からやり直すとオリジナルのリクエストが入った新たなIntruder攻撃タブが作成できます。
  8. ペイロードタブに移動します。定義されたペイロードポジションに配置されるペイロードを定義します。デフォルト設定(ペイロードに"単純リスト"を使う)のままにし、リストにいくつかテスト文字列を追加します。"新規アイテムを入力"ボックスに独自の文字列を入力し、"追加"ボタンをクリックします。
  9. あるいは、"リストから追加"プルダウンメニューを使い、組み込みペイロード文字列から"ファジング - 簡易"を選択します
  10. 攻撃を開始する最低限のオプションを設定できました。Intruderメニューに移動し、"攻撃開始"を選択します。
  11. 攻撃すると、結果タブに一覧がある新しいウィンドウが開きます。結果一覧には生成された各リクエストごとにエントリがあり、使われたペイロードなど各種キーの詳細、HTTPステータスコード、レスポンス長などが表示されます。一覧で任意のアイテムを選択すると、完全なリクエストとレスポンスが表示できます。列見出しをクリックすると一覧を並べ替えられ、フィルターバーを使用して一覧のコンテンツのフィルターもできます。これらの機能は、Proxy履歴と同じように動作します。
  12. 攻撃ウィンドウには、この攻撃で使われた設定を表示する他のタブがあります。攻撃が開始された後でも、この設定のほとんどを変更できます。オプションタブで、"Grep - Match"までスクロールし、"これらの文字列にマッチするレスポンスにフラグをセットする"チェックボックスをオンにします。これでリスト内の各文字列に一致するレスポンスを検索し、マッチしたアイテムにフラグが立つようになります。デフォルトで、ファジングに便利ないくつかの一般的なエラー文字列が一覧に表示されますが、希望に応じて独自の文字列を設定できます。結果タブに戻り、リストのアイテムごとに列が追加され、各レスポンスでマッチする文字列が見つかったかどうか示すチェックボックスがあることを確認します。運がよければ、基本的なファジングでも、バグの存在を示すエラーメッセージを含むレスポンスが見つかるかもしれません。
  13. それでは、一覧内の任意のアイテムを選択し、そのアイテムのレスポンス見てください。レスポンスから気になる文字列(ページタイトルまたはエラーメッセージなど)を探します。一覧内のアイテムを右クリックし、コンテキストメニューから"レスポンスから抽出grepを定義"を選択します。ダイアログボックスで、レスポンス内の気になる文字列を選択し、"OK"をクリックします。各レスポンスからこの部分のテキストを抽出した新しい列(これは各ケースで異なる場合があります)が結果一覧に出現します。この機能で、何千もの大規模な攻撃のレスポンスの中から、気になるデータを検索できます。攻撃前または攻撃中に、オプションタブで"抽出grep"アイテムを設定できることを覚えておいてください。
  14. 結果一覧で任意のアイテムを選択し、コンテキストメニューを開きます。"Repeaterに送信"を選択し、Repeaterタブに移動してください。選択したリクエストが、次のテストのためにRepeaterツールにコピーされているでしょう。その他、コンテキストメニューには多くの有用なオプションがあります。Burpツール間のアイテム転送に関する詳細や、テストワークフローの全体概要は、 Burp Suiteの使い方を参照してください。
  15. 結果一覧または攻撃全体を保存するには、結果ウィンドウで"保存"メニューを使います。他のツールまたはスプレッドシートプログラムに、結果一覧を読み込めます。Burp UIメインのIntruderメニューから、保存した攻撃を再読み込みできます。
  16. これらの手順では、ファジング用の標準的な攻撃文字列とエラーメッセージの検索方法を使う、Burp Intruderの簡単な使用例のみ説明しています。Intruderには他にも、多くの攻撃タイプ、多くのペイロード、攻撃オプションがあります。詳細については、Burp Intruderの典型的な使用方法を参照してください。

Burp Intruderを使い始めるには、次のリンクを参照してください: