SQLインジェクション、クロスサイトスクリプティングほど有名ではありませんが、同等以上に危険性の高いOSコマンドインジェクションについて説明していきます。
■概要
Webアプリケーションはユーザからの様々な入力情報を処理し、Webページとして出力するものがあります。
OSコマンドインジェクションは、不正な入力を行うことによって、Webサーバ側で想定していない動作をさせる攻撃です。
ここでの不正な入力とは、プログラムへの送信パラメータにOSへの命令文(コマンド)紛れ込ませるものとなります。
Webサーバは、この命令文を受け取ったことによりOSに対する命令実行してしまい、それにより被害が発生します。
■想定される被害
OSコマンドインジェクションによって生じる被害には、以下のようなものがあります。
どのような被害を受ける可能性があるかあらかじめ把握しておき、攻撃を受けないように対策を検討することが必要です。
・サーバ内のファイル改ざん、削除
・不正なシステム操作
・重要情報の漏えい
・他サイトへの攻撃の踏み台
■対策
OSコマンドインジェクションの対策として挙げられるものは以下のようなものとなります。
・シェルを利用するコマンドを使わない
・入力値をチェックして、制限する。
・WAF(Web Application Firewall)を導入する。