Burp Suiteは、 Webアプリケーションのセキュリティ監査プラットフォームです 。 Webアプリケーションのマッピング、ファイルとフォルダーの検索、クエリの変更、ファジング、パスワード選択などのためのツールが含まれています。 また、アプリケーションの機能を強化する追加の拡張機能を含むアドオンのBAppストアもあります。 iOSプラットフォーム用のMobileAssistantである、モバイルアプリケーションのセキュリティを研究するための最新のモバイルアシスタントの登場に注目する価値があります。
Burp Suiteは、手動モードと自動モードの両方でWebアプリケーションを監査するために設計された統合プラットフォームです。 攻撃プロセスを改善および高速化するために特別に設計されたタブを備えた直感的なインターフェイスが含まれています。 ツール自体は、ブラウザから受信したすべてのリクエストをインターセプトして処理するプロキシメカニズムです。 https接続の分析用にげっぷ証明書をインストールすることができます。
バグバウンティプログラムの統計とレポートを見ると、スクリーンショットのほぼすべての場所で、このツールの使用方法がわかります。 OWASPとともに、ZAPはWebアプリケーションをテストするための最も一般的なツールのセットです。
写真は、Burp Scannerを使用して、Damn Vulnerable Web Application(DVWA)を分析することです。
Burp Suiteには、ProfessionalとFreeの2つのバージョンがあります。
機能の違いは非常に重要ですが、無料版は完全なテストツールです。 主な違いの1つは、無料版にスキャナーがないことと、単位時間あたりのリクエスト数の制限です。 また、無料版では、侵入者用の組み込みペイロードはありませんが、外部のものを使用することは非常に可能です(例: github.com/1N3/IntruderPayloads) 。 BAppストアからのアドオンの使用には制限があります。 重要な欠点は、無料版にBurp Collaboratorがないことです(外部サービスを使用して脆弱性を特定します)。
構成
主な機能は、次のモジュールに基づいています。
- プロキシ-man-in-the-middleモードでHTTP(S)を介して動作するプロキシサーバーをインターセプトします。 ブラウザとWebアプリケーションの間にあるため、双方向のトラフィックを傍受、調査、変更できます。
- スパイダー-Webアプリケーションのアーキテクチャに関する情報を自動的に収集できるスパイダーまたはクローラー。
- スキャナー-自動脆弱性スキャナー(OWASP TOP 10など)Professionalバージョンで利用可能、無料バージョンでは機能の説明のみ。
- 侵入者-パスワードクラッキング、ブルートフォース識別子、ファジングなど、さまざまな種類の攻撃を自動的に実行できるユーティリティ。
- リピーターは、個々のHTTP要求を変更および再送信し、アプリケーションの応答を分析するためのユーティリティです。
- Sequencer-ランダムアプリケーションデータの生成を分析し、生成アルゴリズム、データ予測性を特定するためのユーティリティ。
- デコーダーは、Webアプリケーションからのデータを手動または自動で変換するためのユーティリティです。
- Comparerは、データの違いを検出するためのユーティリティです。
- エクステンダー-BurpSuiteの拡張。 BAppストアから既製のものと、独自のデザインの両方を追加できます。
ツールの組み合わせを使用すると、Webアプリケーションを最も深く、生産的に探索できます。
侵入者
主なテストツールの1つはBurp Intruderです。 操作の原理は次のとおりです。各HTTPリクエスト(「基本リクエスト」と呼ばれる)を処理し、さまざまな方法でパラメーターを変更し、リクエストの各修正バージョンを発行し、アプリケーションの応答を分析して、Webアプリケーションの興味深い機能または動作を特定します。
攻撃ごとに、ペイロード(ペイロード)のセットとベースリクエスト内での位置を指定できます。 多数のペイロード作成方法が利用可能です(文字列、数字、日付、ブルートフォース、ビットフリッピングなどの単純なリストを含む)。 結果を分析し、さらに調査するための興味深い質問を特定するためのさまざまなツールを利用できます。
画像では、Burp Intruderを使用して-パスワード選択のペイロード値を設定します。
Burp Intruderには非常に柔軟な構成システムがあるため、さまざまなタイプの攻撃を自動化するために使用できます。 これを使用して、ユーザー識別子の選択、重要な情報の収集、ファジングなどの他のタスクを実行できます。
可能性のある攻撃の種類は、特定のアプリケーションによって異なります。SQLインジェクションのチェック、XSS、バッファオーバーフロー、ディレクトリトラバーサル。 さまざまな認証スキームに対するブルートフォース攻撃、値の列挙、パラメーターの内容の操作。 隠されたコンテンツと機能を検索し、セッション識別子を計算してそれらを傍受し、データを収集し、Webアプリケーションの機能に関連するDoS攻撃を実装します。
画像では、Burp Intruderを使用してSQLインジェクションを検出することがペイロードの選択です。
Burp Intruderには(Proバージョンでは)事前に選択された多くのペイロード(脆弱性を識別するための行)が含まれています。 さらに、特定のアプリケーションに適した攻撃ベクトルを動的に生成するための多数のユーティリティが含まれています。 追加のペイロード(ユーザー名やパスワードなど)、または特定のファジングリクエストを読み込むこともできます。
各攻撃の基本は、変更されたHTTP要求を送信することです。 それらのコンテンツは、最初の要求と確立されたペイロード位置に基づいて生成されます。 作業の結果は、さまざまなデータ(ステータス、応答の長さなど)を持つテーブルになります
画像では、Burp Intruderを使用してSQLインジェクションを検出することは攻撃です。
Burp Intruderは、次のタイプの攻撃をサポートしています。
- スナイパー-別のデータセットが使用されます-1つのフィールド(マーカーでマークされた領域)-1つのペイロード。 このタイプの攻撃は、一般的な脆弱性(XSSなど)のフィールドを個別にテストするときに役立ちます。
- 打倒ラム-このタイプの攻撃では、原則が使用されます-すべてのフィールド-1つのペイロード。 これは、攻撃を実行するときに、同じデータを多くの位置に一度に配置する必要がある場合に役立ちます。
- Pitchfork-このタイプの攻撃は、複数のフィールドに複数のペイロードを使用します。 たとえば、最初のリクエストでは、最初のテストセットの最初の行がマーカーで示された最初の場所に配置されます。 そして、2番目のセットの最初の行は2番目の位置に収まります。 2番目のリクエストを作成する場合、最初のセットの2行目が最初に配置され、2番目のセットの2行目が2番目に配置されます。 このタイプの攻撃は、アプリケーションが常に異なる時間を送信する必要があるが、何らかの方法でデータを相互接続する必要がある場合に役立ちます。 たとえば、あるフィールドでユーザー名を送信し、別のフィールドでそのIDを送信する場合。
- クラスター爆弾-このタイプの攻撃では、ペイロードのメインセットの列挙とセカンダリペイロードの追加が使用されます。 パスワードの選択などに使用すると便利です。最初の要求で、Intruderはペイロードの最初のセットの最初の行を最初の位置に、2番目から2番目の行に配置します。 2番目の要求では、最初のセットの最初の行が最初の場所に残り、2番目のセットの2番目の行が2番目に配置されます。 次に、3番目など。
攻撃結果のウィンドウでは、攻撃の進行を制御し、その結果を保存できます。
MobileAssistant
Burp Suite Mobile Assistantは、Burp Suiteを使用したiOSアプリのテストを容易にするツールです。
iOSデバイスのシステム全体のプロキシ設定を変更できるため、分析のためにHTTP(S)トラフィックをBurpに簡単にリダイレクトできます。 また、彼はSSLピニング(証明書の実装)を使用することもできます。 iOSのバージョン8から10までのジェイルブレイクされたiOSデバイスでモバイルアシスタントを使用できます(ただし、安定した動作は保証されません)。 インストールするには、ホストシステムにCydiaと完全なBurpが必要です。
このツールの登場により、OWASP Mobile Top 10の脆弱性の特定が非常に容易になります。
おわりに
Burp Suiteは、その柔軟な機能、Webアプリケーションセキュリティテストを実施する際に手動と自動の分析方法を組み合わせる方法により、世界中で最も人気のあるペンテスターツールの1つにふさわしいツールです。
注:他のセキュリティテストソフトウェアと同様に、Burp SuiteにはWebアプリケーションに損害を与える可能性のある機能が含まれています。 セキュリティテストには、本質的に、一部のWebアプリケーションで問題を引き起こす可能性がある非標準的な方法でWebアプリケーションと対話することが含まれます。 Burp Suiteを使用するときは、テスト前にバックアップし、リソースの所有者から許可を得ていないシステムに対してBurp Suiteを使用しないように注意する必要があります。