ソース:
ツール:Burp Suite Scanner
訳:
Burp Suite は、PortSwigger によって作成された脆弱性スキャンと手動テスト用の最も人気のあるツールの 1 つで。
これは、オンライン アプリケーションの脆弱性を検出して悪用するために、バグ報奨金ハンターによってよく使用され。
Burp Suite には、自動および手動の両方のセキュリティテストを可能にする多数の機能があり。
このブログでは、サーバーに過度の負荷をかけることなく XSS 脆弱性を見つけるための最適な burp suite スキャン構成を検討し。
目次
- 公開ページで XSS 脆弱性をハンティングする利点
- スキャン構成を設定する前の準備
- ターゲットをクロールするためのカスタム スキャン構成
- ターゲットを監査するためのカスタム スキャン構成
- 結果を分析して XSS を見つける
- XSS 脆弱性に対する緩和策
公開ページで XSS をハンティングする利点💰
公開ページの XSS 脆弱性は、即座に広範な影響を及ぼし、認証なしですべてのサイト訪問者に影響を与える可能性があり。
スキャン設定をセットアップする前の準備🔨
burp プロキシをバックグラウンドで実行しながら、対象の Web サイトを閲覧し。
デモンストレーションの目的で、脆弱なサイト http://testphp.vulnweb.com/を使用。
スコープの設定
[ターゲット] > [スコープ設定] に移動し、[詳細スコープ コントロール設定] を有効にして、[追加] ボタンをクリックして。
フィルター設定で、「 範囲内のアイテムのみを表示」 をクリックして、ターゲットのみに焦点を当てることができ。
ターゲットをクロールするためのカスタム スキャン構成
上のスクリーンショットに示されているターゲットを右クリックし、 「スキャン」 を選択します。 [スキャン] ダイアログ ボックスが表示され。
[スキャン タイプ] として [クロール] を選択し。

スキャン構成
に移動し [スキャン設定] 、 [ライブラリから選択] を選択し。

「 クロール戦略 - 高速化 」オプションを選択し。
デモンストレーションの目的で、この戦略を選択して。
ただし、利用可能な時間に基づいて、 「クロール戦略 - 最も完全な 最も効果的な 」を選択することもできて。
このアプローチの欠点は、完了までにかなりの時間がかかることで。

リソースプールの設定🏊
サーバーの負荷が高いためにブロックされる可能性があるため、クロール中に送信するリクエストの数を減らす新しいリソース プールを作成し。
以下の構成も同様に使用できます。
このプールに Server Friendly という名前を付け。

クロールが開始されると、ダッシュボードの [タスク] に表示されて。

ターゲットを監査するためのカスタム スキャン構成
上のスクリーンショットに示されているターゲットを右クリックし、 「スキャン」 を選択し。
[スキャン] ダイアログ ボックスが表示されます。
[ スキャン タイプ] として [選択した項目の監査] を 選択し。

また、アイテムを統合し、 重複アイテムの削除、パラメーターのないアイテムの削除 などの操作を実行して、スキャナーの所要時間を短縮することもできて。

スキャン構成
に移動し 「スキャン構成」 、 「新規」をクリックします。 以下のスクリーンショットに示すように、

構成名を Reflected Input Custom Scan の下で以下の構成を実行します として指定し、 Audit Optimization 。

で [報告された問題の設定] 、 [個別の問題を選択] を選択し、以下に示す 4 つの問題を選択します。
応答で返される入力(格納)
応答で返される入力(反映)
不審な入力変換(保存)
不審な入力変換(反映)

」で 「監査中のアプリケーション エラーの処理 、以下の構成を実行し。

では JavaScript Analysis 、以下の設定が正常に機能します。

ここで、このスキャン設定を保存します。 、常に[ライブラリに保存] オプションにチェックを入れてください。 異なるターゲットでも同じ設定を何度も使用できるように


リソースプールの設定🏊
クロール中に作成したものと同じリソース プールを使用します。 サーバーの負荷処理能力に応じて、同時リクエストと遅延を増減し。

結果を分析してXSSを見つける🎯
上記の監査スキャンでは、BurpSuite ツールのダッシュボードに以下に示す結果が表示されて。

いずれかのリクエストを選択して分析し。
BurpSuite は、応答に反映されている入力領域を自動的に強調表示し。


このリクエストをリピータに送信して繰り返し。
応答ヘッダーを確認し。
XSS Content-Type ある必要があり。 、 text/html で では DOM (Document Object Model) に反映するために必要な入力であるため

反射点を分析し。

反映点は見出しタグ内にあります。 基本的な XSS ペイロードを注入してみましょう。
使用されるペイロード: Mayank<script>alert(111)</script>

実行されたようです😍 ブラウザからも確認してみましょう。



XSS 脆弱性に対する緩和策🤔
(i) 出力エンコーディング
(ii) WAF(ウェブアプリケーションファイアウォール)
(iii) サーバー側の検証
(iv) X-XSS-Protection、Cache-Control などのブラウザ ヘッダー
(v) Cookie属性(httpのみ)
(vi) コンテンツセキュリティポリシー
ほなほな。