ホーム > 情報処理安全確保支援士試験 > 2009年 秋期
情報処理安全確保支援士試験 2009年 秋期 午前2 問07
クロスサイトスクリプティングによる攻撃へのセキュリティ対策に該当するものはどれか。
ア:OSのセキュリティパッチを適用することによって,Webサーバへの侵入を防止する。
イ:Webアプリケーションがクライアントに入力データを表示する場合,データ内の特殊文字を無効にする処理を行う。(正解)
ウ:WebサーバにSNMPエージェントを常駐稼働させることによって,攻撃を検知する。
エ:許容範囲を超えた大きさのデータの書込みを禁止し,Webサーバへの侵入を防止する。
解説
クロスサイトスクリプティングによる攻撃へのセキュリティ対策に該当するものはどれか。【午前2 解説】
要点まとめ
- 結論:クロスサイトスクリプティング(XSS)対策には、入力データの特殊文字を無効化する処理が必要です。
- 根拠:XSSは悪意あるスクリプトがWebページに埋め込まれ、ユーザーのブラウザで実行される攻撃だからです。
- 差がつくポイント:単なるOSやサーバのセキュリティ強化では防げず、Webアプリケーション側での適切なエスケープ処理が必須です。
正解の理由
イ: Webアプリケーションがクライアントに入力データを表示する場合,データ内の特殊文字を無効にする処理を行う。
XSS攻撃は、ユーザーが入力したデータに悪意のあるスクリプトを埋め込み、それがそのままWebページに表示されることで発生します。特殊文字(例:
XSS攻撃は、ユーザーが入力したデータに悪意のあるスクリプトを埋め込み、それがそのままWebページに表示されることで発生します。特殊文字(例:
<
, >
, &
)を無効化(エスケープ)することで、ブラウザがそれをスクリプトとして解釈せず、単なる文字列として表示されるため、攻撃を防止できます。よくある誤解
OSやWebサーバのパッチ適用だけでXSSを防げると誤解されがちですが、XSSはアプリケーションレベルの問題であり、入力データの適切な処理が不可欠です。
解法ステップ
- XSS攻撃の仕組みを理解する(悪意あるスクリプトが埋め込まれる)。
- 攻撃を防ぐには、ユーザー入力をそのまま表示しないことが重要と認識する。
- 特殊文字をHTMLエスケープする処理が必要であることを確認する。
- 選択肢の中で「特殊文字を無効にする処理」を行うものを選ぶ。
選択肢別の誤答解説
- ア: OSのセキュリティパッチは重要ですが、XSSはWebアプリケーションの入力処理の問題であり直接防げません。
- イ: 正解。特殊文字の無効化(エスケープ)でスクリプトの実行を防ぎます。
- ウ: SNMPエージェントはネットワーク管理用であり、XSS攻撃の検知には適しません。
- エ: 大きさ制限はバッファオーバーフローなどの対策であり、XSSとは直接関係ありません。
補足コラム
XSS対策には「入力値の検証」と「出力時のエスケープ」が基本です。特に出力時のエスケープは、HTMLだけでなくJavaScriptやURL、CSSなど表示コンテキストに応じて適切な処理を行うことが重要です。また、Content Security Policy(CSP)を設定することで、スクリプトの実行制限を強化する方法もあります。
FAQ
Q: XSS攻撃はどのような被害をもたらしますか?
A: ユーザーのクッキー情報の盗難やセッションハイジャック、偽の入力フォーム表示などがあり、個人情報漏洩や不正操作につながります。
A: ユーザーのクッキー情報の盗難やセッションハイジャック、偽の入力フォーム表示などがあり、個人情報漏洩や不正操作につながります。
Q: OSやWebサーバのセキュリティパッチはXSS対策に意味がありますか?
A: 直接的なXSS対策にはなりませんが、他の脆弱性を防ぐために常に最新の状態に保つことは重要です。
A: 直接的なXSS対策にはなりませんが、他の脆弱性を防ぐために常に最新の状態に保つことは重要です。
関連キーワード: クロスサイトスクリプティング, XSS対策, HTMLエスケープ, Webセキュリティ, 入力値検証, Content Security Policy