AUシステム監査技術者試験 午前Ⅰ

平成27年度春期 システム監査技術者 午前Ⅰ 問15

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

ディレクトリトラバーサル攻撃はどれか。

選択肢

  1. ア
    OS の操作コマンドを利用するアプリケーションに対して,攻撃者が,OS のディレクトリ作成コマンドを渡して実行する。
  2. イ
    SQL 文のリテラル部分の生成処理に問題があるアプリケーションに対して,攻撃者が,任意の SQL 文を渡して実行する。
  3. ウ
    シングルサインオンを提供するディレクトリサービスに対して,攻撃者が,不正に入手した認証情報を用いてログインし,複数のアプリケーションを不正使用する。
  4. エ
    入力文字列からアクセスするファイル名を組み立てるアプリケーションに対して,攻撃者が,上位のディレクトリを意味する文字列を入力して,非公開のファイルにアクセスする。
解き方のヒントを見る

攻撃手法を見分けるための観点

選択肢を比べるときは、名称や印象に引きずられず、攻撃が成立するまでの流れと、主にどの対象・段階へ働きかけているかという一つの観点に絞って整理し、説明の焦点が一貫しているかを確認しましょう。

この問題で問われていること

この問題では、各選択肢が説明している出来事を、発生のきっかけから影響が現れるまでの流れとして読み、どの時点の何を説明しているかに注目して比較することに集中してください。

視点

攻撃手法を整理するときは、用語の響きではなく、関係する対象、成立する前提、起きる変化を同じ枠組みで読み取ります。特に、説明の中心がどの段階に置かれているかを確認すると、似た表現の違いを落ち着いて比較できます。

確認ポイント

  • 説明の中心となる対象や段階を読み取れているか
  • 成立の前提と、その後に起きる変化を分けて整理できているか
  • 各選択肢を同じ観点で比較し、表現の印象に流されていないか
正解と解説を見る

正解

エ

解説

ディレクトリトラバーサルは、ファイルパスを組み立てる処理に対して上位ディレクトリを示す入力を与え、本来許可されない場所のファイルへ到達する攻撃です。

理由

ディレクトリトラバーサルは、入力値に上位のディレクトリを意味する文字列を含めることで、アプリケーションが想定したディレクトリの外側にあるファイルへアクセスさせる攻撃です。

比較

OSコマンドの実行はコマンドインジェクション、任意のSQL文の実行はSQLインジェクションに該当する。不正な認証情報による利用は認証・認可の問題であり、ファイルパスの階層移動を利用する本攻撃とは異なる。

選択肢ア

これは不正解だよ。OSの操作コマンドを利用するアプリケーションに、攻撃者が別のOSコマンドを実行させる内容であり、コマンドインジェクションに該当する。ディレクトリ階層を移動してファイルへ到達する攻撃ではないため、設問の定義と一致しない。

選択肢イ

これは不正解だよ。SQL文のリテラル部分に任意のSQL文を混入させて実行させる内容は、SQLインジェクションの説明である。データベースへの命令文を悪用する攻撃であり、ファイルパスの上位階層をたどるディレクトリトラバーサルとは異なる。

選択肢ウ

これは不正解だよ。不正に入手した認証情報でシングルサインオンへログインし、複数のアプリケーションを利用する内容は、認証情報の不正利用や認証・認可の問題を示している。ファイル名やディレクトリ階層を操作する攻撃ではない。

選択肢エ(正解)

これは正解だよ。入力文字列からアクセス先のファイル名を組み立てる処理に対し、上位のディレクトリを意味する文字列を入力して、本来の範囲外にある非公開ファイルへ到達している。これはディレクトリ階層を移動する攻撃の典型例である。

学習のポイント

攻撃名と、操作対象となるファイルパスの特徴を結び付けて覚える。

出典:独立行政法人 情報処理推進機構(IPA)平成27年度春期 システム監査技術者試験 午前Ⅰ 問15(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針