OSコマンドインジェクションについて紹介
Webサイトにおいて、ユーザからデータ入力を受け付ける際にOS(オペレーティングシステム)に攻撃をするOSコマンドインジェクションについて紹介します。
OSコマンドインジェクションとは
OSコマンドインジェクションとは、攻撃者がWebアプリケーション内において入力項目に特定のOSコマンドを含める文字列を組み込んで送信してサーバ内のデータを改ざんしたり破壊する行為になります。
OSコマンドの中に「rm」という削除コマンドがあり、入力項目内に「rm *」が入っているとカレントディレクトリ全てが削除される事態になります。
他にもOSコマンドを用いて、サーバ内のディレクトリ構成を抜き出して重要機密のファイルを読み取ることによって情報の漏洩やウイルス感染をさせる行為などができます。
対策
ユーザが入力するデータには必ず入力制限をかけることが必要になります。
英数字のみしか受け付けない様にする形や、入力できる文字数を制限が該当します。
他にも特殊な文字(記号)を排除するようにします。
該当する文字としては、「;」「|」「&」「`」「(」「)」「#」「*」「$」等は注意する点になります。