必ず受かる情報処理技術者試験

当サイトは、情報処理技術者試験に合格するためのWebサイトです。
ITパスポート試験,基本情報技術者,応用情報技術者,高度試験の過去問題と解答及び詳細な解説を掲載しています。
  1. トップページ
  2. 高度共通 午前1
  3. 平成26年度春季問題一覧
  4. 平成26年度春季問題13-解答・解説-分析

平成26年度春季問題

問題13

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

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

解答:ア

<解説>

SQLインジェクション SQLインジェクション(英: SQL Injection)とは、アプリケーションのセキュリティ上の不備を意図的に利用し、アプリケーションが想定しないSQL文を実行させることにより、データベースシステムを不正に操作する攻撃方法のことである。
静的プレースホルダでは、SQL を準備する段階で SQL 文の構文が確定し、後から SQL 構文が変化することがないため、パラメータの値がリテラルの外にはみ出す現象が起きません。その結果として、SQL インジェクションの脆弱性が生じない。
× クロスサイトスクリプティング クロスサイトスクリプティングとは、動的にウェブページを生成するアプリケーションのセキュリティ上の不備を意図的に利用し、狭義にはサイト間を横断して悪意のあるスクリプトを混入させること。
クロスサイトスクリプティングの対策は、いくつかの例外を除き、出力値のエスケープを適切に施すことである。
× クロスサイトリクエストフォージェリ クロスサイトリクエストフォージェリとは、Webサイトにスクリプトや自動転送(HTTPリダイレクト)を仕込むことによって、閲覧者に意図せず別のWebサイト上で何らかの操作(掲示板への書き込みなど)を行わせる攻撃手法である。
サーバ側でクロスサイトリクエストフォージェリを防ぐには、サイト外からのリクエストの受信を拒否する必要がある。ヘッダに含まれる情報を元に参照元が正規のページかどうかをチェックしたり、フォームの一部にランダムな数値を隠しておいてアクセスの一貫性をチェックしたり、コンピュータが読み取れないよう画像として表示したチェックコードの入力をユーザに要求するなどの対策が有効である。
× セッションハイジャック セッションハイジャックとは、ネットワーク上で一対の機器間で交わされる一連の通信(セッション)を途中で乗っ取り、片方になりすましてもう一方から不正にデータを詐取したり操作を行なう攻撃である。
セションIDの値を推測困難なものにしたり暗号化してデータの送受信を行なうなどの対策が有効である。