平成27年度春期 応用情報技術者試験 午前 問46
ディレクトリトラバーサル攻撃はどれか。
- ア OSの操作コマンドを利用するアプリケーションに対して,攻撃者が,OSのディレクトリ作成コマンドを渡して実行する。
- イ SQL文のリテラル部分の生成処理に問題があるアプリケーションに対して,攻撃者が,任意のSQL文を渡して実行する。
- ウ シングルサインオンを提供するディレクトリサービスに対して,攻撃者が,不正に入手した認証情報を用いてログインし,複数のアプリケーションを不正使用する。
- エ 入力文字列からアクセスするファイル名を組み立てるアプリケーションに対して,攻撃者が,上位のディレクトリを意味する文字列を入力して,非公開のファイルにアクセスする。
解答・解説を見る
正解:エ
AI解説
ディレクトリトラバーサル攻撃は、ファイル名を入力からそのまま組み立てるWebアプリケーションに対し、「../」(上位ディレクトリを意味するパス表記)を含む文字列を入力してディレクトリを遡り、公開を意図していないファイルに不正アクセスする攻撃である。よってエが正解である。 ア: OSのコマンドを不正に渡して実行させるのはOSコマンドインジェクションの説明である。 イ: 入力を介して任意のSQL文を実行させるのはSQLインジェクションの説明である。 ウ: 不正入手した認証情報でディレクトリサービス(シングルサインオン)にログインするのは、なりすまし(不正ログイン)の説明である。 エ: 正解。「../」などで上位ディレクトリを辿り(traversal=横断)、非公開ファイルへアクセスするのがディレクトリトラバーサルである。 💡 対策は、入力値から「../」等のパス指定文字を無害化(サニタイジング)することと、ファイル名を直接指定させない設計。インジェクション系攻撃は「何を注入するか」で区別する。
出典:平成27年度 春期 応用情報技術者試験 午前 問46 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。