スポンサーリンク

問題の解答・解説ページ

このページは解説の閲覧モードです。
実力試しをしたい方は、下のボタンからクイズに挑戦してください!

この問題をクイズ形式で解く
問題 No.6472
Webアプリケーションへの入力値として不正なOSコマンドの断片を埋め込み、サーバのOS上で意図しないコマンドを実行させる脆弱性や攻撃手法を指すものはどれか。

【正解の解説】

OSコマンドインジェクション

これは、お店の注文票の備考欄に「レジの全額を私にください」と書いて店員を騙し、裏方の金庫を開けさせるようなものです。入力値のチェックを怠ると、プログラムが利用者の言葉をそのままOSへの命令として真に受けてしまい、システムを乗っ取られてしまう致命的なトラブルにつながります。

スポンサーリンク

【その他の選択肢の解説】

クロスサイトスクリプティング

OSコマンドインジェクションがサーバーの裏側(OS)を直接攻撃するのに対し、クロスサイトスクリプティングはユーザーのブラウザ(手元)を標的にする点が全く異なります。どちらも「入力値の処理不備」という共通点があるため、試験では攻撃のターゲットがサーバーかユーザーかという違いを正確に見極める必要があります。

SQLインジェクション

OSを直接操るのではなく、バックエンドにあるデータベースに対して不正な命令文を送り込む点がOSコマンドインジェクションとの決定的な違いです。どちらも文字データを送り込んでシステムを誤認させる「インジェクション攻撃」の仲間ですが、攻撃の矛先がOSかデータベース管理システム(DBMS)かという点をしっかり区別しておきましょう。

バッファオーバーフロー

入力値のチェック不足という点では似ていますが、メモリの構造的な弱点を突くプログラミング言語特有の問題であり、文字の組み立てを工夫してOSの命令を実行させるOSコマンドインジェクションとはメカニズムが根本的に異なります。初学者は「システムの裏をかく不正な入力」というイメージだけで混同しやすいため注意が必要です。