情報セキュリティ

基本情報技術者試験あるWebサービスでは出力時のエスケープを進めているが、開発規模が大きく、万一エスケープ漏れが残った場合にスクリ…

情報セキュリティ情報セキュリティ難易度:normal
あるWebサービスでは出力時のエスケープを進めているが、開発規模が大きく、万一エスケープ漏れが残った場合にスクリプト実行による被害を抑える多層防御を追加したい。ブラウザ側で、読み込み・実行を許可するスクリプトの取得元を制限する仕組みを導入したい。この目的に適した応答ヘッダはどれか。
Content-Security-Policy を設定し、読み込んでよいスクリプトの出どころを宣言で限る。
Content-Type を text/plain に固定し、サーバが返す応答をすべて単なる文字データとしてブラウザに解釈させる。
Cache-Control を no-store に設定し、サーバの応答がブラウザや経路上に残らないようにする。
Accept-Language を ja に固定し、サーバが返す内容の表示を日本語に統一するようにする。
正解
ア.Content-Security-Policy を設定し、読み込んでよいスクリプトの出どころを宣言で限る。

Content-Security-Policy(CSP)は、ブラウザに対しスクリプトやスタイル等の読み込みを許可する取得元を宣言し、それ以外の実行を抑止する応答ヘッダである。出力エスケープを主対策としつつ、万一漏れが残ってもインラインスクリプトの実行や信頼外ドメインからの読込みを制限でき、XSS被害を低減する多層防御として機能する。目的に適合する。

?選択肢ごとの解説

ア ○Content-Security-Policy(CSP)は、ブラウザに対しスクリプトやスタイル等の読み込みを許可する取得元を宣言し、それ以外の実行を抑止する応答ヘッダである。出力エスケープを主対策としつつ、万一漏れが残ってもインラインスクリプトの実行や信頼外ドメインからの読込みを制限でき、XSS被害を低減する多層防御として機能する。目的に適合する。
イ ×Content-Typeはコンテンツの種類を伝えるヘッダで、これをtext/plain固定にすると正常なHTMLが表示できなくなり、スクリプト取得元の制限という…
ウ ×Cache-Controlはキャッシュ動作を制御するヘッダで、機微情報のキャッシュ抑止には有効だが、スクリプトの取得元制限とは無関係である。
エ ×Accept-Languageは要求側が希望する言語を伝えるヘッダで、応答のセキュリティ制御やスクリプト取得元の制限とは関係がない。
この問題の「深掘り・誤答の完全解説・覚え方」は、登録すると読めます。

基本情報技術者試験は全4,036問。公開しているのはその一部で、登録すると残りも一問ごとにAI解説つきで解けます。SRS暗記カード・全真模試・弱点診断まで。

登録は1分・クレジットカード不要。無料のまま練習・暗記カード・模試まで使えます。

作成・校閲:ukamiru編集部 · 基本情報技術者試験 過去問 · fe-b-sec-0105

【基本情報技術者試験】あるWebサービスでは出力時のエスケープを進めているが、開発…|正解「Content-Securi…」|ukamiru 過去問