平成24年度秋期 問41 / 80

平成24年度 秋期 応用情報技術者試験 午前 問41

安全なWebアプリケーションの作り方について,攻撃と対策の適切な組合せはどれか。

攻撃 対策
ア SQLインジェクション SQL文の組立てに静的プレースホルダを使用する。
イ クロスサイトスクリプティング 任意の外部サイトのスタイルシートを取り込めるようにする。
ウ クロスサイトリクエストフォージェリ リクエストにGETメソッドを使用する。
エ セッションハイジャック 利用者ごとに固定のセッションIDを使用する。

キーボード:1〜4 で解答 → 次の問題 ← 前の問題

正解と解説を見る

正解:ア

  • ア: SQLインジェクション:静的プレースホルダを使用する
    正しい。静的プレースホルダは,SQL文の構造をあらかじめDBMS側で確定させてから値をバインドする方式です。入力値がSQL文の一部として解釈されることがないため,SQLインジェクションの根本的な対策になります。

  • イ: クロスサイトスクリプティング:外部サイトのスタイルシートを取り込めるようにする
    誤り。任意の外部スタイルシートを取り込めるようにすると,悪意のある内容を埋め込まれるおそれがあり,対策になるどころか危険性が増します。

  • ウ: クロスサイトリクエストフォージェリ:GETメソッドを使用する
    誤り。GETメソッドはURLだけでリクエストを送れるため,罠のリンクなどで偽のリクエストを送らせやすくなります。重要な処理にはPOSTメソッドと秘密のトークンの確認などを使うのが対策です。

  • エ: セッションハイジャック:利用者ごとに固定のセッションIDを使用する
    誤り。セッションIDが固定だと,一度盗まれたり推測されたりすると悪用され続けます。ログイン時にセッションIDを新しく発行し直すなど,推測困難なIDを使うのが対策です。


答え

ア: SQLインジェクション/SQL文の組立てに静的プレースホルダを使用する。

出典:平成24年度 秋期 応用情報技術者試験 午前 問41

平成24年度秋期の他の問題