X-XSS-Protectionは何をしますか?

X-XSS-Protectionは、GoogleChromeのバージョン4以降に使用されていたセキュリティヘッダーでした。 これは、反映されたクロスサイトスクリプティングについてWebサイトのコンテンツをチェックするツールを有効にするように設計されました。 主要なブラウザはすべて、セキュリティ上の欠陥が発生したため、ヘッダーのサポートを終了しました。 ヘッダーをまったく設定せず、代わりに強力なコンテンツセキュリティポリシーを構成することを強くお勧めします。

ヒント:クロスサイトスクリプティングは通常、頭字語「XSS」に短縮されます。

反映されたクロスサイトスクリプティングはXSSの脆弱性のクラスであり、エクスプロイトはURLに直接エンコードされ、URLにアクセスするユーザーにのみ影響します。 反映されたXSSは、WebページにURLのデータが表示される場合のリスクです。 たとえば、Webストアで製品の検索が許可されている場合、「website.com/search?」のようなURLが含まれている可能性があります。 term = gift」であり、ページに「gift」という単語を含めます。 問題は、誰かがJavaScriptをURLに入れた場合に始まります。適切にサニタイズされていない場合、このJavaScriptは、本来あるべき画面に印刷されるのではなく、実行される可能性があります。 攻撃者がユーザーをだましてこの種のXSSペイロードを持つリンクをクリックさせることができれば、セッションを乗っ取るなどのことができる可能性があります。

X-XSS-Protectionは、このタイプの攻撃を検出して防止することを目的としていました。 残念ながら、時間の経過とともに、システムの動作方法に多数のバイパスや脆弱性さえも発見されました。 これらの脆弱性は、X-XSS-Protectionヘッダーを実装すると、他の点では安全なWebサイトにクロスサイトスクリプティングの脆弱性が導入されることを意味しました。

これを防ぐために、コンテンツセキュリティポリシーのヘッダーを理解して、一般的に 「CSP」に短縮され、それを置き換える機能が含まれています。ブラウザ開発者は、 特徴。 Chrome、Opera、Edgeを含むほとんどのブラウザは、サポートを削除したか、Firefoxの場合は実装していません。 この機能を有効にしてレガシーブラウザを使用しているユーザーを保護するために、ウェブサイトでヘッダーを無効にすることをお勧めします。

X-XSS-Protectionは、CSPヘッダーの「unsafe-inline」設定に置き換えることができます。 この設定を有効にするには、ウェブサイトによっては多くの作業が必要になる場合があります。これは、すべてのJavaScriptが外部スクリプトに含まれている必要があり、HTMLに直接含めることができないためです。