Webアプリケーションのセキュリティ診断に欠かせないツール、Burp Suite。その中でも特に強力な機能の一つが「Intruder」です。Intruderを使いこなせば、脆弱性スキャンやカスタム攻撃を自動化し、効率的に診断を進めることができます。しかし、設定項目が多く、最初は戸惑うかもしれません。
このブログ記事では、Burp Suite Intruderの基本的な使い方から、各設定項目の詳細、そして実践的な活用テクニックまで、網羅的に解説します。これを読めば、あなたもIntruderマスターになれるはずです!
Intruder タブの概要
Burp SuiteのIntruder機能は、HTTPリクエストの特定の部分(パラメータ値、ヘッダーなど)を、用意したペイロードリストで次々と置き換えながら送信し、レスポンスを分析するツールです。主に以下のような目的で使用されます。
- パスワードのブルートフォース攻撃
- ユーザー名やIDの列挙
- SQLインジェクションやクロスサイトスクリプティング(XSS)などの脆弱性ファジング
- パラメータ値の探索
- セッションIDの推測
- その他、リクエストの一部を変化させながら多数のリクエストを送信する必要があるあらゆるタスク
Intruderタブは、主に以下のサブタブで構成されています(バージョンによって多少異なります)。
注意: Burp Suite 2023.10以降のバージョンでは、Intruder固有の「Resource Pool」タブと「Options」タブの多くの設定が、プロジェクト全体の「Settings」メニュー(`Settings > Resource Pools` および `Settings > Tools > Intruder`)に統合されました。このガイドでは、最新の構成を基本としつつ、旧バージョンの概念にも触れます。
Target (ターゲット設定)
まず、攻撃対象となるベースリクエストを設定します。これは通常、Burp ProxyのHTTP履歴やRepeaterタブなどから、Intruderに送信したいリクエストを選択し、「Send to Intruder」を実行することで設定されます。
Targetタブでは、以下の情報を確認・編集できます。
- Host: ターゲットサーバーのホスト名またはIPアドレス。
- Port: ターゲットサーバーのポート番号。
- Use HTTPS: HTTPSを使用するかどうか。
通常、これらの値は送信元のリクエストから自動的に設定されるため、手動で変更することは稀ですが、必要に応じて調整可能です。特に、プロキシ経由でのアクセス設定などを確認する際に重要になります。
Positions (ポジション設定)
Positionsタブは、Intruder攻撃の核心部分を設定する場所です。ここでは、ベースリクエストのどの部分をペイロードで置き換えるか(ペイロードポジション)、そしてどのようにペイロードを挿入するか(攻撃タイプ)を定義します。
攻撃タイプ (Attack type)
Intruderには4つの攻撃タイプがあり、それぞれペイロードの挿入方法が異なります。目的に応じて適切なタイプを選択することが重要です。
攻撃タイプ | 概要 | ペイロードセット数 | ユースケース例 |
---|---|---|---|
Sniper (スナイパー) | 最も一般的に使用されるタイプ。複数のペイロードポジション (§…§) を設定できますが、攻撃時には1つのペイロードセットを使用し、各ポジションを順番にターゲットにします。つまり、一度の攻撃で1つのポジションのみにペイロードが挿入され、他のポジションは元の値のままです。 | 1 | 単一パラメータへのファジング、SQLインジェクションテスト、XSSテスト、単一フィールドへのブルートフォース |
Battering ram (破城槌) | 複数のペイロードポジションを設定できます。1つのペイロードセットを使用し、そのペイロードをすべてのポジションに同時に挿入します。 | 1 | ユーザー名とパスワードが同じである可能性をテストする場合、同じ値を複数のパラメータに挿入して挙動を確認する場合 |
Pitchfork (ピッチフォーク) | 複数のペイロードポジションを設定できます。ポジションごとに異なるペイロードセット(最大20個)を割り当てます。攻撃時には、各ペイロードセットから対応するペイロードを同時に取得し、それぞれのポジションに挿入します。例えば、ポジション1にはペイロードセット1の1番目の値を、ポジション2にはペイロードセット2の1番目の値を挿入し、次にそれぞれ2番目の値を挿入…という流れです。 | ポジション数と同じ (最大20) | ユーザー名リストとパスワードリストが対応している場合のログイン試行、関連する複数のパラメータに異なる値の組み合わせを試す場合 |
Cluster bomb (クラスター爆弾) | 複数のペイロードポジションを設定できます。ポジションごとに異なるペイロードセット(最大20個)を割り当てます。攻撃時には、各ペイロードセットのすべての組み合わせを試します。例えば、ペイロードセット1に3個、ペイロードセット2に2個の値がある場合、3 x 2 = 6 回のリクエストが生成されます。 | ポジション数と同じ (最大20) | ユーザー名リストとパスワードリストの全ての組み合わせを試すログインブルートフォース、複数のパラメータに独立した値の組み合わせを網羅的にテストする場合 |
ヒント: 攻撃タイプを選ぶ際は、試行したいペイロードの組み合わせと、生成されるリクエスト数を考慮しましょう。Cluster bombは非常に多くのリクエストを生成する可能性があるため、注意が必要です。
ペイロードマーカー (§) の設定
リクエストエディタ内で、ペイロードを挿入したい箇所を `§` シンボルで囲みます。これがペイロードポジションとなります。
右側のボタンを使って、ペイロードポジションの追加、削除、自動設定を行うことができます。
- Add §: 選択したテキストをペイロードポジションとしてマークします。
- Clear §: 選択範囲内、またはすべてのペイロードポジションマークを解除します。
- Auto §: リクエストパラメータやCookieの値など、一般的によくターゲットとされる箇所を自動的にペイロードポジションとしてマークします。手動で調整する前の下準備として便利です。
- Refresh syntax highlighting: シンタックスハイライトを更新します(手動でリクエストを編集した場合などに使用)。
- Clear all: すべてのペイロードポジションマークを解除します。
例:ログインリクエストの `username` と `password` パラメータをターゲットにする場合:
POST /login HTTP/1.1
Host: example.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 29
username=§admin§&password=§password123§
上記のように設定し、攻撃タイプを `Cluster bomb` に設定、Payloadsタブでユーザー名リストとパスワードリストをそれぞれ設定すれば、総当たりのログイン試行が可能です。
Payloads (ペイロード設定)
Payloadsタブでは、実際にターゲットポジションに挿入する値(ペイロード)のリストや生成ルールを設定します。攻撃タイプによって設定するペイロードセットの数が変わります (SniperとBattering ramは1つ、PitchforkとCluster bombはポジション数に応じて複数)。
ペイロードセットとペイロードタイプ (Payload Sets and Payload type)
ドロップダウンリストから、設定したいペイロードセット番号を選択します (例: Payload Set 1, Payload Set 2…)。次に、そのセットで使用するペイロードのタイプを選択します。
Burp Suite Intruderには、多種多様なペイロードタイプが用意されています。
ペイロードタイプ | 概要 | 主な用途 |
---|---|---|
Simple list | 定義済みの文字列リストを使用します。最も基本的なタイプです。 | 既知のユーザー名リスト、パスワードリスト、ディレクトリリスト、脆弱性パターンリストなど |
Runtime file | ファイルからペイロードリストを読み込みます。大きなリストを扱う場合に便利です。 | 大規模な辞書ファイル、ログファイルなど |
Custom iterator | 複数のリストを組み合わせて、順列や全ての組み合わせを生成します。 | 複数要素(例: 名前、年、記号)を組み合わせたパスワード生成、複雑なパターンのファジング |
Character substitution | ベース文字列の各文字を、指定した別の文字セットに置き換えます。 | leetスピーク(例: o -> 0, e -> 3)のようなパスワード変形、簡単なファジング |
Case modification | 文字列の大文字/小文字を変換します (例: No change, To lower case, To upper case, To Propername, To ProperName)。 | 大文字小文字を区別しないパラメータのテスト、ファイル名推測など |
Recursive grep | 直前のリクエストのレスポンスから正規表現で文字列を抽出し、それを次のリクエストのペイロードとして使用します。 | レスポンスに含まれるIDやトークンを連鎖的に利用するテスト、Webサイトの再帰的なクロール |
Illegal Unicode | 不正なUnicodeエンコーディングを生成します。 | Unicode処理に関する脆弱性のテスト |
Character blocks | 指定した文字を指定した長さで繰り返すブロックを生成します (例: AAAA…, BBBB…)。 | バッファオーバーフローのファジング |
Dates | 指定した範囲とフォーマットで日付文字列を生成します。 | 日付パラメータのテスト、情報リークの探索 |
Brute forcer | 指定した文字セットと長さで、全ての組み合わせを生成します。 | 短いパスワードやトークンのブルートフォース |
Null payloads | 空のペイロードを指定した回数だけ生成します。 | 必須パラメータの欠落テスト、リクエスト数を稼ぐ目的など |
Character frobber | ベース文字列の各文字を、ASCIIコードを1つずつインクリメント/デクリメントして変化させます。 | 境界値分析、簡単なファジング |
Bit flipper | ベースとなるペイロードの各ビットを反転させるパターンを生成します。 | エンコードされたデータやトークンの改ざんテスト |
Username generator | メールアドレスや一般的な命名規則に基づいてユーザー名を生成します。 | ユーザー名の列挙 |
ECB block shuffler | ECBモードで暗号化されたデータのブロックを並べ替えます。 | ECB暗号利用時の脆弱性テスト |
Extension-generated | Burp拡張機能(BApp)によって提供されるカスタムペイロードジェネレータを使用します。 | 特定のフレームワークや技術に特化したペイロード生成 |
Copy other payload | 別のペイロードセットの内容をそのままコピーします。Pitchfork攻撃で同じリストを複数の場所に使いたい場合などに便利です。 | ペイロードリストの再利用 |
ペイロードオプション (Payload Options)
選択したペイロードタイプに応じて、具体的な設定を行います。
- Simple list: テキストエリアにペイロードを直接入力するか、「Load」ボタンでファイルから読み込みます。「Add」、「Remove」、「Paste」、「Clear」ボタンでリストを編集できます。
- Brute forcer:
- Character set: 使用する文字(例: abcdef, 0123456789)。
- Min length / Max length: 生成する文字列の最小長と最大長。
- Custom iterator: 複数のリストと区切り文字を設定し、Positionごとにどのリストを使用するか、どのように組み合わせるか(Separator)を指定します。
- … その他のペイロードタイプにも、それぞれ固有の設定項目があります。
ペイロード処理 (Payload Processing)
ここでは、生成されたペイロードに対して、リクエストに挿入する直前に適用するルールを定義できます。複数のルールを順番に適用することも可能です。これにより、ペイロードを動的に加工できます。
「Add」ボタンをクリックすると、利用可能な処理ルールのリストが表示されます。
処理ルール | 概要 | 設定例 |
---|---|---|
Add prefix | ペイロードの先頭に指定した文字列を追加します。 | user_ |
Add suffix | ペイロードの末尾に指定した文字列を追加します。 | @example.com |
Match/replace | ペイロード内で正規表現に一致する箇所を指定した文字列で置換します。 | 正規表現: \. , 置換: _ |
Substring | ペイロードの一部(指定した開始位置から終了位置まで)を抽出します。 | 開始: 0, 終了: 8 |
Reverse | ペイロードの文字列を反転させます。 | (設定なし) |
Modify case | ペイロードの大文字/小文字を変換します (Simple listのオプションと同様)。 | To lower case |
Encode | ペイロードを指定した形式でエンコードします (URL, HTML, Base64, ASCII hexなど)。 | URL-encode key characters |
Decode | 指定した形式でエンコードされたペイロードをデコードします。 | Base64-decode |
Hash | ペイロードのハッシュ値 (MD5, SHA-1, SHA-256など) を計算します。 | SHA-1 |
Add raw payload | 処理前の元のペイロードを指定した区切り文字で連結します (あまり使われない)。 | (設定なし) |
Skip if matches regex | ペイロードが指定した正規表現に一致する場合、そのペイロードを使用したリクエストをスキップします。 | admin|root |
Invoke Burp extension | Burp拡張機能にペイロード処理を委譲します。 | (拡張機能に依存) |
ヒント: ペイロード処理を組み合わせることで、複雑なペイロード生成が可能です。例えば、「Simple list」でベースとなる単語リストを用意し、「Add prefix」で接頭辞を追加、「Add suffix」で接尾辞を追加、「Encode」でURLエンコードする、といった多段処理が行えます。
ペイロードエンコーディング (Payload Encoding)
一番下にある「Payload Encoding」セクションでは、ペイロードに含まれる特定の文字をURLエンコードするかどうかを設定できます。通常、Webアプリケーションに合わせて自動的に処理されるため、デフォルトのチェックボックスをオンにしておくのが一般的ですが、特殊なケースでは手動でエンコードが必要な文字を指定することもできます。
Settings (各種設定)
注意: 前述の通り、Burp Suite 2023.10以降、Intruderの多くの設定はプロジェクト全体の「Settings」メニューに移動しました。旧バージョンではIntruderタブ内に「Resource Pool」と「Options」サブタブが存在しました。
ここでは、最新版 (2023.10以降) を基準に、関連する設定項目を解説します。これらの設定は `Settings > Tools > Intruder` および `Settings > Resource Pools` からアクセスします。
Intruder Tool Settings (`Settings > Tools > Intruder`)
Intruderの動作全般に関する設定を行います。
- Request Headers (リクエストヘッダー):
- Update Content-Length header: ペイロード挿入によってリクエストボディの長さが変わった場合に、Content-Lengthヘッダーを自動的に更新するかどうか。通常はチェックをオンにします。
- Set Connection: close: 各リクエストに `Connection: close` ヘッダーを追加するかどうか。古いサーバーや特定の状況で有効な場合があります。
- Add headers for User-Agent, Referer, etc.: Burp Proxyなどの他のツールで設定されているグローバルなヘッダー設定をIntruderリクエストにも適用するかどうか。
- Error Handling (エラー処理):
- ネットワークエラー発生時のリトライ回数や遅延を設定します。サーバーが不安定な場合に調整します。
- Attack Results (攻撃結果):
- Store requests/responses: 攻撃結果にリクエストとレスポンスを含めるかどうか。ディスク容量を節約したい場合は、「Never (do not store)」や「Only store items with specific characteristics」を選択できます。
- Make result items read-only: 結果テーブルのアイテムを読み取り専用にするか。
- Save copy of Intruder attacks: プロジェクトファイルにIntruder攻撃のコピーを保存するか。
- Grep – Match:
- レスポンス内に特定の文字列や正規表現パターンが含まれている場合に、結果テーブルにチェックマークを表示します。成功/失敗の判断や、特定の情報(例: “Welcome”, “Error”, “Admin page”)を含むレスポンスを素早く見つけるのに役立ちます。
- 「Match type」(Simple string / Regex)、「Case sensitive」、「Exclude HTTP headers」などのオプションがあります。
- Grep – Extract:
- レスポンスから正規表現を使って情報を抽出し、結果テーブルに新しい列として表示します。セッションID、CSRFトークン、隠しフィールドの値などを抽出するのに非常に便利です。
- 複数の抽出ルールを設定できます。「Define extract grep item」ダイアログで、抽出対象の開始と終了のマーカー(または正規表現)を指定します。
- Grep – Payloads:
- 送信したペイロードがレスポンス内にそのまま含まれているか(リフレクション)を確認します。XSSなどのクライアントサイド脆弱性の発見に役立ちます。
- 「Case sensitive」、「Match against URL-decoded response」オプションがあります。
- Redirections (リダイレクト):
- リダイレクト(3xxレスポンス)の処理方法を設定します。「Follow redirections」で「Never」、「On-site only」、「Always」を選択できます。
- リダイレクト先でCookieを処理するかどうか(Process cookies in redirections)も設定できます。ログイン後のページ遷移などを追跡する場合に重要です。
- 最大リダイレクト数を設定します。
Resource Pools (`Settings > Resource Pools`)
Burp Suiteの各タスク(Intruder攻撃、Scannerスキャンなど)が使用するシステムリソース(主にスレッド数)を管理します。Intruder攻撃ごとに個別のリソースプールを作成し、割り当てるスレッド数を調整できます。
- デフォルトでは、Intruderはプロジェクト全体のリソースプールを使用しますが、「Create new resource pool」でIntruder専用のプールを作成できます。
- 作成したリソースプールを選択し、「Concurrent requests」で同時に実行するリクエスト数(スレッド数)を設定します。この値を大きくすると攻撃速度は上がりますが、ネットワーク帯域やターゲットサーバー、自身のPCへの負荷が増大します。
- 「Delay between requests」で各リクエスト間に遅延を入れることもできます。サーバーへの負荷を軽減したり、WAF(Web Application Firewall)によるブロックを回避したりする目的で使用します。固定遅延(milliseconds)またはランダム遅延(min/max milliseconds)を設定できます。
ヒント: スレッド数や遅延の設定は、ターゲット環境や診断の目的に応じて慎重に調整しましょう。過度な負荷はターゲットサーバーのサービス停止や、自身のIPアドレスのブロックにつながる可能性があります。最初は低いスレッド数から始め、様子を見ながら徐々に上げていくのが安全です。
攻撃の実行と結果分析
すべての設定が完了したら、Intruderタブの上部にある「Start attack」ボタンをクリックして攻撃を開始します。新しいウィンドウが開き、攻撃の進行状況と結果が表示されます。
結果ウィンドウのテーブルには、送信された各リクエストの情報が表示されます。デフォルトでは以下の列が含まれますが、列ヘッダーを右クリックして表示する列をカスタマイズできます。
- Request index (#): リクエストの番号。
- Payload: 使用されたペイロード(複数のペイロードセットがある場合は `|` などで区切られる)。
- Position: ペイロードが挿入されたポジション番号(Sniper攻撃の場合)。
- Status: HTTPステータスコード。
- Length: レスポンスのサイズ(バイト)。
- Time: レスポンス時間 (ミリ秒)。
- Error: ネットワークエラーの有無。
- Timeout: タイムアウトの有無。
- Cookies: レスポンスで設定されたCookie。
- Grep – Match / Grep – Extract / Grep – Payloads: Options (または Settings) で設定したGrepルールの結果(チェックマークや抽出された値)。
結果テーブルの各列をクリックすると、その列の値でソートできます。これは、特定のステータスコード、レスポンスサイズ、またはGrepの結果を持つリクエストを素早く見つけるのに非常に役立ちます。例えば:
- Length列でソート: ログイン成功時など、通常と異なるサイズのレスポンスを見つける。
- Status列でソート: 200 OK以外のレスポンス(403 Forbidden, 401 Unauthorized, 500 Internal Server Errorなど)を確認する。
- Grep – Match列でソート: 特定のキーワード(例: “Login successful”, “Incorrect password”)を含むレスポンスをグループ化する。
- Grep – Extract列でソート: 抽出した値(例: セッションID)の変化を確認する。
テーブル内の特定のリクエストを選択すると、下部のペインでそのリクエストとレスポンスの詳細を確認できます。必要に応じて、リクエストを右クリックして「Send to Repeater」で手動で再送信・改変したり、「Send to Comparer」で他のレスポンスと比較したりすることも可能です。
効率的な分析のコツ:
- まずは「Length」や「Status」でソートし、異常な値を持つリクエストに注目する。
- 「Grep – Match」で成功/失敗パターンを定義し、フラグが立ったリクエストを確認する。
- 「Grep – Extract」で重要な情報を抽出し、その変化やパターンを分析する。
- 怪しいリクエストはRepeaterに送り、手動でさらに詳しく調査する。
実践的な設定例
ここでは、いくつかの一般的なシナリオにおけるIntruderの設定例を示します。
例1: パスワードブルートフォース (Cluster bomb)
- Target: ログインリクエストをIntruderに送信。
- Positions:
- 攻撃タイプ: `Cluster bomb`
- ペイロードポジション: ユーザー名パラメータの値とパスワードパラメータの値をそれぞれ `§…§` でマーク。
- Payloads:
- Payload Set 1 (ユーザー名):
- Payload type: `Simple list`
- Payload Options: ユーザー名候補のリストを入力 (例: admin, root, user, test)。
- Payload Set 2 (パスワード):
- Payload type: `Simple list` または `Runtime file`
- Payload Options: パスワード候補のリストを入力またはファイルからロード (例: password, 123456, qwerty, passlist.txt)。
- Payload Set 1 (ユーザー名):
- Settings > Tools > Intruder > Grep – Match:
- ログイン失敗を示すメッセージ(例: “Incorrect username or password”)と、ログイン成功を示すメッセージ(例: “Welcome”, “Login successful”, “Set-Cookie: sessionid=”)をそれぞれGrepルールとして追加する。
- Settings > Resource Pools:
- スレッド数(Concurrent requests)と遅延(Delay between requests)をターゲットサーバーに配慮して設定する。
- 実行と分析: 攻撃を開始し、結果テーブルをGrep – Match列やLength列でソートしてログイン成功の兆候を探す。
例2: パラメータ値のファジング (Sniper)
- Target: ファジング対象のパラメータを含むリクエストをIntruderに送信。
- Positions:
- 攻撃タイプ: `Sniper`
- ペイロードポジション: ファジングしたいパラメータの値(例: `id=§123§`)をマーク。
- Payloads:
- Payload Set 1:
- Payload type: `Simple list` (または他の適切なタイプ)
- Payload Options: テストしたい値のリストを入力 (例: 0, -1, 999999, ‘ or 1=1–, <script>alert(1)</script>, ../../etc/passwd)。Fuzzing – SQL injection.txt などの組み込みリストも活用できる。
- Payload Processing: 必要に応じてエンコードルール (例: URL-encode key characters) を追加。
- Payload Set 1:
- Settings > Tools > Intruder > Grep – Match:
- エラーメッセージ(例: “SQL syntax error”, “File not found”)や、脆弱性を示唆する応答(例: root:x:0:0)をGrepルールとして追加する。
- Settings > Tools > Intruder > Grep – Payloads:
- ペイロードがレスポンスに反映されるか(XSSの可能性)を確認するためにチェックを入れる。
- 実行と分析: 攻撃を開始し、結果テーブルをStatus、Length、Grep列でソートして異常なレスポンスを探す。
例3: レスポンスからの情報抽出 (Recursive Grep)
これは少し高度な例ですが、あるページのレスポンスに含まれるリンク(例: 商品ID)を抽出し、そのリンクに対して次のリクエストを自動生成する場合などに使えます。
- Target: 最初の情報取得リクエストをIntruderに送信。
- Positions:
- 攻撃タイプ: `Sniper` (または状況に応じて他も可)
- ペイロードポジション: 次のリクエストで変化させたい部分(例: URLの一部やパラメータ)をマーク。もし初回リクエストが固定なら、ダミーのポジションを設定しても良い。
- Payloads:
- Payload Set 1:
- Payload type: `Recursive grep`
- Payload Options:
- Initial payload for first request: 最初のペイロード(例: 初回のID値)。
- Extract Grep Item: レスポンスから次のペイロードを抽出するための正規表現を設定。「Define extract grep item」で抽出範囲を指定。例えば、`` のようなリンクからID部分 `(\d+)` を抽出する。
- Payload Set 1:
- 実行と分析: 攻撃を開始すると、最初のリクエストが送信され、そのレスポンスからペイロードが抽出され、次のリクエストのポジションに挿入されて送信…というプロセスが繰り返されます。結果テーブルで抽出された値やレスポンスを確認します。
まとめと注意点
Burp Suite Intruderは、設定項目が多く最初は複雑に感じるかもしれませんが、その機能を理解し使いこなせば、Webアプリケーション診断の効率と精度を大幅に向上させることができる強力なツールです。
重要なポイントを再確認しましょう:
- ターゲットとポジション: 攻撃対象のリクエストと、ペイロードを挿入する箇所 (§…§) を正確に設定する。
- 攻撃タイプ: 試したいペイロードの組み合わせに応じて、Sniper, Battering ram, Pitchfork, Cluster bomb から最適なものを選択する。リクエスト数に注意!
- ペイロードタイプとオプション: 目的に合ったペイロードタイプを選び、リストや生成ルールを適切に設定する。組み込みリストやPayload Processingも活用する。
- Settings (旧 Options, Resource Pool): Grepルール、リダイレクト処理、スレッド数、遅延などを、診断対象や目的に合わせて調整する。特にリソース設定は慎重に。
- 結果分析: テーブルのソート機能やGrep結果を駆使して、異常なレスポンスや興味深い挙動を示すリクエストを効率的に特定する。
倫理的な使用と注意点:
- Intruderは非常に強力なツールですが、その能力ゆえに、許可なく他者のシステムに対して使用することは絶対に避けてください。これは不正アクセスとなり、法的な問題に発展する可能性があります。必ず、自身が管理するシステム、または明確な許可を得たシステムに対してのみ使用してください。
- ブルートフォース攻撃や大量のリクエストを送信するファジングは、ターゲットサーバーに大きな負荷をかける可能性があります。事前に影響を評価し、必要であれば関係者に連絡を取り、慎重に実施してください。 スレッド数や遅延を適切に設定し、サーバーの応答状況を監視しながら進めましょう。
- 生成されるリクエスト数を常に意識してください。特にCluster bomb攻撃や文字セットの広いBrute forcerは、意図せず膨大な数のリクエストを生成することがあります。
- WAF(Web Application Firewall)やIPS(Intrusion Prevention System)が存在する場合、Intruderによる攻撃的な通信は検知・ブロックされる可能性があります。遅延設定やペイロードのエンコーディングなどで回避を試みることもありますが、限界があることを理解しておきましょう。
Burp Suite Intruderの探求は奥が深いです。ぜひこの記事を参考に、様々な設定を試しながら、その強力な機能をマスターしてください!