過去問解きまくり研究所 ホーム

令和7年度 春期 午前 問36

セキュリティ

脆弱性に関する問題

Web サーバのログを分析したところ,Web サーバへの攻撃と思われる HTTP リクエストヘッダーが記録されていた。次の HTTP リクエストヘッダーから推測できる,攻撃者が悪用しようとしていた可能性が高い脆弱性はどれか。ここで,HTTP リクエストヘッダー中の“%20”は空白を意味する。

〔HTTP リクエストヘッダーの一部〕

GET /cgi-bin/submit.cgi?user=;cat%20/etc/passwd HTTP/1.1
Accept: */*
Accept-Language: ja
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: (省略)
Host: test.example.com
Connection: Keep-Alive
答えと解説を見る

✓ これが正解イOS コマンドインジェクション

解説

区切り記号で命令を継ぎ足し、ファイルを読ませる狙いです。

記録されたリクエストで目を引くのは、問合せ文字列に渡された値の先頭にセミコロンが置かれ、その後ろにファイルの内容を表示する命令と、利用者情報を保持するファイルのパスが続いている点です。セミコロンは多くのシェルで命令の区切りとして働きます。そのため、受け取った値をそのままシェルに渡して外部の命令を呼び出す作りになっていると、区切りより後ろが別の命令として実行されてしまいます。攻撃者はこの性質を利用して、本来の処理に自分の命令を継ぎ足そうとしています。狙われているのは、利用者から受け取った文字列を検査しないまま命令の一部として組み立てている箇所です。どの脆弱性かを見分けるときは、埋め込まれた文字列がどの層の文法として意味を持つのかを確かめるのが近道になります。

ほかの選択肢はなぜ違うのか

この問題の用語

出典:令和7年度 春期 応用情報技術者試験 午前 問36

同じ用語が出る問題

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)