はじめに
Burp Suite は、Web アプリケーションのセキュリティテストを実行するための強力で人気のあるプラットフォームです。アプリケーションの攻撃対象領域の初期マッピングと分析から、セキュリティ脆弱性の発見と悪用まで、テストプロセス全体をサポートするために連携する統合ツールのセットで構成されています。
Burp Suite を効果的にセキュリティテストに使用できるようになる前に、まずそのユーザーインターフェース (UI) に慣れる必要があります。この実験では、Burp Suite を起動し、主要なタブと機能のガイド付きツアーを行います。この基礎知識は、Web アプリケーションのペネトレーションテストに関わるすべての将来の実験に不可欠です。
ダッシュボードとイベントログを確認する
このステップでは、Burp Suite を起動し、テストアクティビティの中央ハブとして機能するメインのダッシュボードを探索します。
まず、LabEx 環境でターミナルを開きます。Burp Suite JAR ファイルはすでに ~/project ディレクトリにダウンロードされています。次のコマンドを使用してアプリケーションを開始します。ロードにしばらく時間がかかる場合があります。
java -jar burpsuite_community.jar
プロジェクトファイルに関するダイアログボックスが表示されます。この実験では、一時的なプロジェクトを使用します。デフォルトの選択を受け入れて、Next をクリックするだけです。
デフォルト設定に関する別のダイアログが表示される場合があります。続行するには Start Burp をクリックします。
Burp Suite がロードされると、メインウィンドウが表示されます。最初に表示されるタブは Dashboard です。
ダッシュボードは 4 つの主要な象限に分かれています。
- Tasks: 事前定義されたスキャンやその他の自動化されたタスクを実行できます。
- Event log: プロキシの起動や新しい問題の検出など、Burp Suite 内で発生するすべての重要なイベントの実行中のログを提供します。
- Issue activity: Burp Scanner によって特定されたセキュリティ問題のリアルタイムフィードを表示します。
- Advisory: このセクションでは、選択されたセキュリティ問題の詳細と修正に関するアドバイスを提供します。
Event log を確認する時間を取ってください。プロキシサービスが開始され、アプリケーションの準備ができたことを示すエントリが表示されるはずです。このログは、トラブルシューティングや、Burp がバックグラウンドで何を行っているかを理解するのに非常に役立ちます。
Target タブとサイトマップを確認する
このステップでは、作業の範囲を定義し、ターゲットアプリケーションの構造の詳細なマップを表示するために使用される Target タブを探索します。
Burp Suite ウィンドウで、インターフェースの上部にある Target タブをクリックします。
このタブは、テスト作業を整理するために非常に重要です。左側には 2 つの主要なサブタブがあります。
- Site map: このビューは、ターゲットアプリケーションのコンテンツの階層的なツリー表現を提供します。Burp のプロキシを通じてアプリケーションを閲覧すると、このマップには発見したすべての URL とリソースが自動的に入力されます。まだサイトを閲覧していないため、この領域はほとんど空になります。
- Scope: このサブタブを使用すると、テスト範囲に含まれるホストと URL を正確に定義できます。「スコープ内」の項目は Burp のツールによって処理されますが、スコープ外の項目は通常無視されます。これは、テストに集中し、他の Web サイトとの意図しないやり取りを回避するために不可欠です。
Site map と Scope の両方のサブタブをクリックして、レイアウトに慣れてください。ターゲットスコープの管理方法を理解することは、Burp Suite を効果的に使用するための基本的なスキルです。
Proxy タブの Intercept および History ビューを理解する
このステップでは、Burp Suite のコアツールの 1 つである Proxy タブを確認します。Burp Proxy は中間者として機能し、ブラウザとターゲット Web アプリケーション間のすべてのトラフィックをインターセプト、検査、および変更することを可能にします。
Proxy タブをクリックします。
いくつかのサブタブが表示されます。現時点で最も重要な 2 つは次のとおりです。
- Intercept: これはトラフィックをインターセプトするためのコントロールセンターです。
Intercept is onボタンがアクティブな場合、Burp は一致する HTTP/S リクエストとレスポンスを一時停止し、送信先へ送信される前に表示および編集できるようにします。これは手動テストにとって非常に強力です。ボタンをクリックしてIntercept is onとIntercept is offを切り替えて、どのように変化するかを確認してください。現時点ではオフのままにしておきます。 - HTTP history: このサブタブは、プロキシを通過したすべての HTTP リクエストの完全なログを提供します。各リクエストについて、完全なリクエストとレスポンス、ヘッダー、パラメータなどを確認できます。この履歴は、アプリケーションの仕組みを理解し、潜在的な脆弱性を見つけるための貴重なリソースです。
最新のリアルタイムアプリケーションで使用される WebSocket トラフィックをログに記録するための WebSockets history タブもあります。現時点では、Intercept および HTTP history ビューの機能の理解に焦点を当ててください。
Repeater および Intruder タブを見つける
このステップでは、手動テストおよび自動テストに不可欠なさらに 2 つのツール、Repeater と Intruder を見つけます。
まず、Repeater タブをクリックします。
Burp Repeater は、個々の HTTP リクエストを手動で操作および再発行するための、シンプルでありながら強力なツールです。他の Burp ツール(Proxy history など)からリクエストを Repeater に送信し、その一部(パラメータやヘッダーなど)を変更して、何度も送信することができます。これは、アプリケーションロジックのテスト、発見事項の検証、および詳細な手動攻撃の実行に最適です。インターフェースは分割されており、左側にリクエスト、右側にレスポンスが表示されます。
次に、Intruder タブをクリックします。
Burp Intruder は、カスタマイズされた攻撃を自動化するための高度に設定可能なツールです。その主な用途は「ファジング」であり、脆弱性を探るために変更されたデータで多数のリクエストを送信することを含みます。パスワードのブルートフォース、識別子の列挙、SQL インジェクションの脆弱性の発見などのタスクに使用できます。Intruder は、リクエストテンプレートを定義し、ペイロードの位置をマークし、ペイロードセットと攻撃タイプを設定することによって機能します。
Repeater と Intruder の両方のインターフェースを見て、その目的とレイアウトを把握してください。
BApp Store および拡張機能のための Extender タブを見つける
ツアーの最後のステップでは、拡張機能を使用して Burp Suite の機能を拡張できる Extender タブを探索します。
Extender タブをクリックします。
このエリアは、新しい機能をもたらしたり、他のツールと統合したりできるアドオンである Burp Suite 拡張機能を管理するためのハブです。ここでの主なサブタブは次のとおりです。
- Extensions: このリストには、現在 Burp にロードされているすべての拡張機能が表示されます。ここから拡張機能を追加、削除、設定できます。
- BApp Store: これは、コミュニティおよび PortSwigger スタッフによって書かれた拡張機能の Burp 公式リポジトリです。ストアを閲覧し、各拡張機能の詳細を表示し、ワンクリックで直接 Burp にインストールできます。
- APIs: このサブタブは、Java、Python、または Ruby を使用して独自の拡張機能を書きたい開発者向けのドキュメントを提供します。
- Settings: ここでは、拡張機能を実行するための Java、Python、および Ruby 環境に関連する設定を構成できます。
BApp Store を閲覧して、利用可能なさまざまな拡張機能を確認してください。この拡張性は、Burp Suite が人気のある主な理由の 1 つです。
まとめ
この実験では、Burp Suite を起動し、そのユーザーインターフェースの包括的なツアーを完了しました。最も重要なタブの目的とレイアウトに精通しました。
- Dashboard: タスク、イベント、および問題を監視するための中央ハブです。
- Target: スコープを定義し、アプリケーションのサイトマップを表示します。
- Proxy: HTTP/S トラフィックをインターセプトおよびログに記録します。
- Repeater: 個々のリクエストを手動で変更および再送信します。
- Intruder: カスタマイズされた攻撃とファジングを自動化します。
- Extender: 拡張機能を管理し、BApp Store を介して Burp の機能を拡張します。
Burp Suite UI のこの基本的な理解により、アクティブな Web アプリケーションセキュリティテストを伴う、より高度な実験に取り組む準備が整いました。
