OSコマンドインジェクションとは?おーえすこまんどいんじぇくしょん
OSコマンドインジェクションとは、Webアプリが外部プログラムやシェル(命令を受け取ってOSに実行させるプログラム)を呼び出す際に、利用者の入力をそのままコマンド文字列へ埋め込んでいる場合、区切り記号を混ぜて任意のOSコマンドを実行させる攻撃。基本情報技術者試験ではサーバ乗っ取りに直結する重大な脆弱性として扱われる。
最終更新:2026-10-09
基本情報を最短で暗記・合格する →具体例
メール送信機能でアドレスをシェル経由で渡している場合、a@example.com; rm -rf /var/www のように入力すると、シェルは ; を命令の区切りと読むため、後続のコマンドまで実行される。この例の rm -rf /var/www は、Webサイトのファイルを置いたフォルダを確認なしで丸ごと消す命令である。対策はシェルを介さないAPIの利用と、入力の許可文字を限定すること。
試験での引っ掛け
SQLインジェクションは「DBへの命令」、OSコマンドインジェクションは「OSへの命令」を注入する。プレースホルダ(SQLに値を後から安全に埋め込む仕組み)はSQL向けの対策であり、コマンド実行には効かない点に注意。
関連用語
出典・参考
公式シラバスの3 技術要素 > 1. 情報セキュリティ > (7) 攻撃手法に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。