Burp Suite の Intruder Tool を使用して Web アプリを侵入テストする方法
Burp Suite は、Web アプリケーションのセキュリティをテストするために使用される、Portswigger によって開発された強力な脆弱性スキャナーです。Kali や Parrot などのディストリビューションに付属している Burp Suite には、Intruder というツールがあり、倫理的なハッキングのためにオンライン アプリケーションに対して自動化された特殊な攻撃を実行できます。Intruder は柔軟で構成可能なツールです。つまり、アプリケーションのテストで発生するタスクを自動化するために使用できます。
では、実際にどのように機能するのでしょうか。
Intruder でのターゲットの使用
Burp Suite の Intruder タブに移動すると表示される Target には、テストするターゲット Web サイトまたはアプリケーションに関する情報が含まれています。「ペイロードの位置」セクションで、ホスト情報とポート番号をターゲットとして入力できます。
Intruder の [位置] タブの使用
[Positions] タブでは、攻撃の種類、リクエスト テンプレート、対象となるパラメーター情報を確認できます。Burp Suite を使用してテストできる攻撃の種類は次のとおりです。
スナイパー:このオプションは、1 つのパラメーターのみを使用します。この場合、対象外のパラメーターは影響を受けません。
破城槌:このオプションは、すべてのターゲット パラメータに対して単一の攻撃ベクトルを使用します。つまり、リクエスト テンプレートに 3 つのターゲット パラメータがある場合、同じ攻撃ベクトルを使用して 3 つすべてを攻撃します。
Pitchfork:このオプションでは、すべてのターゲット パラメータに対して複数の攻撃ベクトルを使用できます。リクエスト テンプレートに 3 つのターゲット パラメータがあると思われる場合、最初のリクエストは、最初のパラメータの最初のリストの最初の要素を選択して配置することです。2 番目のパラメーターの 2 番目のリストの最初の要素。3 番目のパラメーターの 3 番目のリストの最初の要素。2 番目の要求では、選択される要素は各リストの 2 番目の要素になります。複数のターゲット パラメータに異なるベクトルを配置する場合、この攻撃タイプを使用できます。
クラスター爆弾:このオプションを使用して、すべてのターゲット パラメータに対して複数の攻撃ベクトルを使用できます。ピッチフォーク オプションとの違いは、クラスター爆弾を使用すると、すべての組み合わせ分布を調整できることです。Pitchfork のように順次選択することはありません。ターゲット パラメータのすべての可能な組み合わせを試すと、大量のリクエスト負荷が発生する可能性があります。そのため、このオプションを使用する場合は注意が必要です。
ポジション画面には他にも便利なボタンがいくつかあります。右側のClearボタンを使用して、選択したパラメータを削除できます。新しいものをターゲットにしたい場合は、右側の [追加] ボタンも使用できます。自動ボタンを使用して、すべてのフィールドを自動的に選択するか、元の状態に戻します。
Burp Suiteのペイロードタブとは?
ペイロード リストは単語リストのようなものと考えてください。[ペイロード] タブを使用して、1 つ以上のペイロード リストを設定できます。ペイロード セットの数は、攻撃の種類によって異なります。
ペイロード セットは、1 つ以上の方法で定義できます。強力な単語リストがある場合は、 [ペイロード オプション] セクションから [読み込み] ボタンを選択して、単語リストをインポートできます。
また、対象のパラメーターに対して個別のペイロード セットを準備することもできます。たとえば、最初のターゲット パラメータには数値式のみを使用できますが、2 番目のターゲット パラメータには複雑な式を使用できます。
ペイロード処理
ルールとエンコーディングを使用して、ペイロード処理を介して構成されたペイロード セットをさらに拡張できます。たとえば、すべてのペイロードにプレフィックスを付けたり、エンコードおよびデコードしたり、特定の正規表現を渡す式をスキップしたりできます。
ペイロードのエンコーディング
Payload Encodingを使用すると、宛先への HTTP リクエストの送信中にパラメータで URL エンコードする必要がある文字を問題なく指定できます。URL エンコーディングは、アドレスと混同される可能性が高い情報の変換バージョンです。Burp Suite は URL を送信して、アンパサンド (&)、アスタリスク (*)、およびデフォルト設定のセミコロンとコロン (それぞれ ; と 🙂 などの文字に相当するものをエンコードします。
Intruder の [オプション] タブとは何ですか?
[オプション] タブには、要求ヘッダー、攻撃結果、grep 一致、およびリダイレクトのオプションがあります。これらは、スキャンを開始する前に Intruder インターフェイスで変更できます。
リクエスト ヘッダー
「リクエストヘッダー」フィールドの設定を使用して、リクエストヘッダーを設定できます。ここで注意すべき重要なことは、Content-Length ヘッダーです。コンテンツが適切に更新されていない場合、宛先アドレスはエラーを返す可能性があります。
Set-Connection 情報が使用されていない場合、接続が開いたままになる可能性があるため、Set-Connection オプションを有効にした後、接続は終了します。ただし、トランザクションは多少速く実行できます。
エラー処理
「エラー処理」セクションの設定は、侵入者スキャンで HTTP 要求を生成するために使用されるエンジンを制御します。ここでは、攻撃の速度、重大度、持続時間などのパラメータを設定できます。
攻撃結果
「攻撃結果」セクションでは、スキャン結果に含まれる情報を設定できます。これらの構成設定には、次のオプションがあります。
- 要求/応答の保存:これらの 2 つのオプションは、要求の内容とスキャンの応答を保存するかどうかを指定するためのものです。
- 変更されていないベースライン リクエストを作成する:これには、ターゲット パラメータのベース値と構成されたスキャン リクエストが含まれているため、スキャン レスポンスを比較できます。
- サービス拒否モードを使用する:このオプションを使用すると、通常のスキャン要求を行うことができます。ただし、この機能は対象サーバーの疲労を引き起こすため、サーバーからの応答がある前に突然シャットダウンする場合があります。そのため、慎重に使用する必要があります。
- 完全なペイロードを保存:これにより、Burp Suite は各結果の正確なペイロード値を保存できます。これを選択すると、Intruder は余分なスペースを占有します。
Grep – 一致、抽出、ペイロード
「Grep—Match」、「Grep—Extract」、および「Grep—Payloads」セクションの設定を使用して、スキャン応答で指定されたフレーズを含む結果をマークできます。Burp Suite は、設定した各項目に対して確認列を追加し、その項目が応答で見つかったかどうかを示します。たとえば、パスワード攻撃では、「パスワードが正しくありません」や「ログインに成功しました」などの文章が表示されることがあります。Grep-Match セクションの機能は次のとおりです。
- 一致タイプ:これは、定義された式が正規表現 (正規表現) かテキスト式かを示します。
- 大文字と小文字を区別する一致:大文字と小文字を区別するかどうかを指定します。
- HTTP ヘッダーを除外する:ヘッダー行をこの操作から除外するかどうかを指定します。
Burp Suite が重要な理由
倫理的なハッカーは、バグ報奨金の操作に Burp Suite を使用することがよくあります。同様に、企業で働くセキュリティ研究者や、インターネット アプリケーションでセキュリティ テストを実行したいペネトレーション テスターも、Burp Suite に依存している可能性があります。もちろん、侵入テストに使用できる優れたツールは他にもたくさんあります。Burp Suite に加えて、他の侵入テスト ツールを習得することで、あなたは際立った存在になります。
コメントを残す