web-dev-qa-db-ja.com

クロスドメインリファラーのリークをチェックする方法は?

Webアプリケーションでのペンテストを学習しています。私は脆弱性を発見しましたクロスドメインリファラーリーケージ非常に興味深い。誰かがこの脆弱性をWebアプリケーションでチェックする方法を教えてもらえますか?

5
Webster

ブラウザは、HTTPリファラーヘッダー(ある意味では、「発信元」のURLを示します)を、Webページから発信されるほとんどのリソース要求に追加します(例外として、HTTPS WebサイトからのHTTPコンテンツのロードや更新など)。

したがって、テストを自動化する最も簡単な方法は、Webアプリケーションをクロール/スパイダー/モンキーし、他のWebサイトへのすべてのリクエストをログに記録することです。次に、すべての HTTP Referer sを収集し、機密情報が開示されていないかどうかを確認します。

探しているのは、これらのリファラーのGETパラメーターに含まれる機密データ(セッションID、アカウント番号など)です。これは、クロスドメインリファラーの漏洩を可能にするだけでなく、ユーザーのブラウザーの履歴と共有URLがセッション/アカウントに直接結び付けられることを意味するため、どこでも悪い習慣です。これは、パスワードのリセット( on edx および Mozilla )などの一般的に報告されていると聞いたことがあります。URLでは、ソーシャルメディアプラグインが「パスワードのリセット」を開始できるようにしました。所有者にアカウントを乗っ取る能力を効果的に与える。

GETフィールドに機密データが含まれるのを避け、POSTを使用してすべてのアクションを実行し、重要なアクションへのリンクを生成するための1回限りのトークンを使用します。

3
Jedi