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

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

平成26年度秋季問題

問題40

Webアプリケーションにおけるセキュリティ上の脅威と対策の適切な組合せはどれか。

OSコマンドインジェクションを防ぐために、Webアプリケーションが発行するセッションIDを推測困難なものにする。
SQLインジェクションを防ぐために、Webアプリケーション内でデータベースへの問合せを作成する際にバインド機構を使用する。
クロスサイトスクリプティングを防ぐために、外部から渡す入力データをWebサーバ内のファイル名として直接指定しない。
セッションハイジャックを防ぐために、Webアプリケーションからシェルを起動できないようにする。

Webアプリケーションにおけるセキュリティ上の脅威と対策の適切な組合せはどれか。

OSコマンドインジェクションを防ぐために、Webアプリケーションが発行するセッションIDを推測困難なものにする。
SQLインジェクションを防ぐために、Webアプリケーション内でデータベースへの問合せを作成する際にバインド機構を使用する。
クロスサイトスクリプティングを防ぐために、外部から渡す入力データをWebサーバ内のファイル名として直接指定しない。
セッションハイジャックを防ぐために、Webアプリケーションからシェルを起動できないようにする。

解答:イ

<解説>

× セッションハイジャックを防ぐために、Webアプリケーションが発行するセッションIDを推測困難なものにする。
セッションハイジャックとは、コンピュータネットワーク通信におけるセッション(特定利用者間で行われる一連の通信群)を、通信当事者以外が乗っ取る攻撃手法である。
正しい。SQLインジェクションとは、アプリケーションのセキュリティ上の不備を意図的に利用し、アプリケーションが想定しないSQL文を実行させることにより、データベースシステムを不正に操作する攻撃方法のことである。
バインド機構を使うことでSQL文を固定化し、パラメタを独立した変数にできるので、SQLインジェクションを防ぐことができる。
× ディレクトリトラバーサルを防ぐために、外部から渡す入力データをWebサーバ内のファイル名として直接指定しない。
ディレクトリトラバーサルとは本来、アクセスして欲しくないファイルやディレクトリの位置を、相対パス指定などでプログラムに表示させて、不正なアクセスをする攻撃手法のことである。
× OSコマンドインジェクションを防ぐために、Webアプリケーションからシェルを起動できないようにする。
OSコマンドインジェクションは、ユーザーからデータや数値の入力を受け付けるようなWebサイトなどにおいて、プログラムに与えるパラメータにOSへの命令文を紛れ込ませて不正に操作する攻撃である。