SC情報処理安全確保支援士試験 午前Ⅱ
平成30年度春期 情報処理安全確保支援士 午前Ⅱ 問2
問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。
問題
選択肢
- アHTTPヘッダインジェクション
- イOSコマンドインジェクション
- ウSQLインジェクション
- エクロスサイトスクリプティング =8叶
解き方のヒントを見る
HTTPヘッダに仕込まれた“OSへの命令”を見抜こう
HTTPヘッダの値に、OSのコマンドっぽい文字列をこっそり混ぜて、外部プログラムを実行させようとしているなら、狙いはOSコマンドインジェクションだよ。データベースをだますSQLインジェクションや、画面に悪いスクリプトを出すXSSとは攻撃する場所が違うんだ。
この問題で問われていること
ポイントは、その入力がWebアプリの中でどこに渡されそうかを想像することだよ。もし入力がOSコマンドの実行処理に流れ込みそうなら、「これはOSコマンドインジェクションだな」と判断しよう。
OS Command Injection via Header Input
if attacker-controlled header values are intended to be executed by the OS、 the vulnerability being abused is OS command injection
attacker input in header\nreaches system command execution\nnot SQL injection\nnot XSS
確認ポイント
- 実行先が OS コマンドかを見る。
- ヘッダ入力でも分類は OS コマンドインジェクション。
- SQL/XSS と混同しない。
正解と解説を見る
正解
イ
出典
問題文と解答は IPA 公開の過去問題冊子・解答例を基にしています。
選択肢ア
これは不正解だよ。HTTPヘッダインジェクションは、HTTPレスポンスのヘッダ部分に改行などを混ぜて、別のヘッダや内容を勝手に追加させる攻撃なんだ。たとえるなら、封筒の宛名欄に勝手な指示を書き足して、配達ルールを変えようとする感じだよ。OSの命令をサーバに実行させる攻撃ではないので、今回は当てはまらないよ。
選択肢イ(正解)
これは正解だよ。OSコマンドインジェクションは、Webアプリが受け取った入力をそのままサーバの命令として使ってしまい、攻撃者が余計な命令を混ぜ込める攻撃なんだ。たとえるなら、窓口で「この荷物を運んで」と頼まれた係員が、伝票に書かれた怪しい追記まで確認せず全部実行してしまう感じだよ。サーバ上のOSコマンドを不正に実行させる話なので、これが当てはまるよ。
選択肢ウ
これは不正解だよ。SQLインジェクションは、データベースへの問い合わせ文に悪い条件を混ぜ込む攻撃なんだ。たとえるなら、図書館の検索窓に普通の本の名前ではなく「全部の貸出記録を見せて」といった変な指示を混ぜる感じだよ。今回の話はデータベース操作ではなく、OSコマンドの不正実行なので違うよ。
選択肢エ
これは不正解だよ。クロスサイトスクリプティングは、利用者のブラウザ上で悪いスクリプトを実行させる攻撃なんだ。たとえるなら、掲示板に貼られたメモを読んだ人の目の前で、勝手にいたずらが起きるようなものだよ。今回のポイントはブラウザでスクリプトを動かすことではなく、サーバ側でOSの命令を実行させることなので違うよ。
出典:独立行政法人 情報処理推進機構(IPA)平成30年度春期 情報処理安全確保支援士試験 午前Ⅱ 問2(公式資料:問題冊子(PDF) / 解答例)
関連する過去問一覧
- 平成30年度(2018年)の過去問
- 午前Ⅱの過去問
- 平成30年度春期の過去問
- 「企画・設計・開発・運用でのセキュリティ確保」の過去問
- 「情報セキュリティインシデント管理」の過去問
- 情報処理安全確保支援士試験のトップ
IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針