OSコマンドインジェクションとは?
OSコマンドインジェクションとは、外部からの入力値がシェルを起動する関数へ渡される実装のとき、区切り文字などを含む入力によって意図しないOSコマンドを実行させられる脆弱性。
ネットワークスペシャリスト試験の過去問では1回出題されています。
おーえすこまんどいんじぇくしょん
OSコマンドインジェクションの意味
外部からの入力値がシェルを起動する関数へ渡される実装のとき、区切り文字などを含む入力によって意図しないOSコマンドを実行させられる脆弱性。
OSコマンドインジェクションの具体例
対策はシェルを起動する関数を使わない、使う場合は入力を検証しエスケープする、実行権限を最小化するなど。
OSコマンドインジェクションは試験でどう引っ掛けられる?
SQL文を組み立てる箇所ならSQLインジェクション、HTMLへ出力する箇所ならクロスサイトスクリプティング。どこへ入力が渡るかで区別する。
OSコマンドインジェクションと関連する用語
OSコマンドインジェクションが出た過去問
Webアプリケーションソフトウェアの脆弱性を悪用する攻撃手法のうち、入力した文字列がPerlのsystem関数、PHPのexec関数などに渡されることを利用し、…
正解:OSコマンドインジェクション
要点:シェル実行関数に入力が渡る脆弱性がOSコマンドインジェクション
OSコマンドインジェクションは、Webアプリケーションが外部入力をシェル経由でコマンドとして実行する関数(Perlのsystem、PHPのexecなど)に渡してしまうことを悪用し、意図しないコマンドを実行させる攻撃である。対策は、シェルを介す関数の使用を避けること、やむを得ない場合は入力値をエスケープまたは許可リストで厳密に検証することである。
出典:令和3年度 春期 ネットワークスペシャリスト試験 午前Ⅱ 問21(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。