平成30年度 秋期 午前Ⅱ 問13
攻撃手法
シェルスクリプトに関する問題
Web アプリケーションの脆弱性を悪用する攻撃手法のうち,Web ページ上で入力した文字列が Perl の system 関数や PHP の exec 関数などに渡されることを利用し,不正にシェルスクリプトを実行させるものは,どれに分類されるか。
- アHTTP ヘッダインジェクション
- イOS コマンドインジェクション
- ウクロスサイトリクエストフォージェリ
- エセッションハイジャック
答えと解説を見る
✓ これが正解イOS コマンドインジェクション
解説
シェル経由で OS のコマンドを実行させる OS コマンドインジェクションです。
Perl の system 関数や PHP の exec 関数は、プログラムの中からシェルを呼び出して OS のコマンドを実行します。Web ページで入力された文字列を検査せずにこれらの関数へ渡すと、攻撃者は入力の中に区切り文字と別のコマンドを混ぜ込み、サーバ上で任意のコマンドを実行させることができます。これが OS コマンドインジェクションです。ファイルの削除や情報の持ち出しなど、サーバを直接操作される被害につながります。見分ける軸は、入力値がシェルに渡り OS のコマンドとして実行されるかどうかです。
ほかの選択肢はなぜ違うのか
- アHTTP ヘッダインジェクション:HTTP ヘッダインジェクションは、入力値に改行コードを混ぜて、HTTP のレスポンスヘッダを追加したり書き換えたりさせる攻撃です。シェルを呼ぶ関数は関係しません。
- ウクロスサイトリクエストフォージェリ:クロスサイトリクエストフォージェリは、ログイン中の利用者に罠のページを開かせ、正規のサイトへ意図しないリクエストを送らせる攻撃です。サーバ上のプログラムを直接動かすものではありません。
- エセッションハイジャック:セッションハイジャックは、セッション ID を盗んだり推測したりして、他人のログイン状態を乗っ取る攻撃です。入力値をシェルスクリプトとして実行させる手口ではありません。
この問題の用語
- 脆弱性OSやソフトに残っている、攻撃の足掛かりになりうる弱点のこと。開発元が配る修正パッチを当ててふさぎます。
- HTTPWebブラウザとWebサーバがページをやり取りするための決まりごと。ブラウザが要求を送り、サーバが応答を返す形で通信します。
- セッションハイジャックログイン中の利用者のIDを盗み、なりすましてアクセスする攻撃です。推測しにくい乱数をセッションIDに使うことが対策になります。
出典:平成30年度 秋期 情報処理安全確保支援士試験 午前Ⅱ 問13
同じ用語が出る問題
- 令和7年度 秋期 午前Ⅱ 問20:ステータスコードに関する説明(HTTP)
- 令和7年度 秋期 午前Ⅱ 問16(HTTP)
- 令和7年度 春期 午前Ⅱ 問20:リクエスト行に関する問題(HTTP)
- 令和7年度 春期 午前Ⅱ 問1:DRDoS攻撃に該当するもの(HTTP)
- 令和3年度 春期 午前Ⅱ 問12:SQLインジェクションの問題(セッションハイジャック)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)