情報処理安全確保支援士試験 2013年 秋期 午前216


ディレクトリトラバーサル攻撃はどれか。
攻撃者が,OSの操作コマンドを利用するアプリケーションに対して,OSのディレクトリ作成コマンドを渡して実行する。
攻撃者が,SQL文のリテラル部分の生成処理に問題があるアプリケーションに対して,任意のSQL文を渡して実行する。
攻撃者が,シングルサインオンを提供するディレクトリサービスに対して,不正に入手した認証情報を用いてログインし、複数のアプリケーションを不正使用する。
攻撃者が,ファイル名の入力を伴うアプリケーションに対して,上位のディレクトリを意味する文字列を使って,非公開のファイルにアクセスする。(正解)

解説

ディレクトリトラバーサル攻撃はどれか【午前2 解説】

要点まとめ

  • 結論:ディレクトリトラバーサル攻撃は、ファイル名入力に「../」などの上位ディレクトリ指定を使い、非公開ファイルに不正アクセスする攻撃です。
  • 根拠:攻撃者はアプリケーションのファイルパス処理の脆弱性を突き、意図しないファイルを読み取ることが可能になります。
  • 差がつくポイント:OSコマンドインジェクションやSQLインジェクション、認証情報の不正利用と混同せず、ファイルパス操作に関する攻撃と理解することが重要です。

正解の理由

選択肢エは、攻撃者がファイル名の入力部分に「../」などの上位ディレクトリを示す文字列を挿入し、アプリケーションの想定外のファイルにアクセスする攻撃を説明しています。これがディレクトリトラバーサル攻撃の典型的な手法であり、正解です。

よくある誤解

ディレクトリトラバーサル攻撃はOSコマンドの実行やSQL文の改ざんとは異なり、ファイルパスの操作に特化した攻撃です。認証情報の不正利用とも混同しやすいので注意が必要です。

解法ステップ

  1. 問題文の「ディレクトリトラバーサル攻撃」の意味を確認する。
  2. 各選択肢の攻撃手法を整理し、ファイルパス操作に関するものを探す。
  3. 「上位ディレクトリを意味する文字列を使って非公開ファイルにアクセスする」説明が該当するか判断。
  4. OSコマンドインジェクションやSQLインジェクション、認証情報の不正利用と区別する。
  5. ファイルパス操作に関する選択肢エを正解とする。

選択肢別の誤答解説

  • ア: OSの操作コマンドを渡して実行するのは「OSコマンドインジェクション」であり、ディレクトリトラバーサルとは異なります。
  • イ: SQL文を任意に操作するのは「SQLインジェクション」で、ファイルパス操作とは無関係です。
  • ウ: 不正に入手した認証情報でログインするのは「認証情報の不正利用」や「セッションハイジャック」に近く、ディレクトリトラバーサルではありません。
  • エ: ファイル名入力に上位ディレクトリ指定を使い、非公開ファイルにアクセスする攻撃で、これがディレクトリトラバーサル攻撃です。

補足コラム

ディレクトリトラバーサル攻撃は、Webアプリケーションのファイル読み込み処理で特に問題となります。例えば、ユーザーが指定したファイル名をそのままパスに組み込むと、「../」を使って本来アクセスできないファイルにアクセスされる恐れがあります。対策としては、入力値の正規化やホワイトリストによるファイル名検証、パスの絶対化などが有効です。

FAQ

Q: ディレクトリトラバーサル攻撃はどのような被害をもたらしますか?
A: 非公開ファイルの閲覧や機密情報の漏洩、場合によってはシステムの設定ファイルの読み取りなどが発生します。
Q: ディレクトリトラバーサル攻撃とOSコマンドインジェクションの違いは何ですか?
A: ディレクトリトラバーサルはファイルパスの操作による不正アクセスで、OSコマンドインジェクションはOSコマンドの不正実行を狙う攻撃です。

関連キーワード: ディレクトリトラバーサル, ファイルパス操作, セキュリティ脆弱性, OSコマンドインジェクション, SQLインジェクション
← 前の問題へ次の問題へ →

©︎2025 情報処理技術者試験対策アプリ