【SQL インジェクション、OSコマンドインジェクション】とは、 コンピュータに不正な命令を送り込み実行させること

SQL インジェクション、OSコマンドインジェクションの攻撃は、Webサイトのセキュリティ(安全性)の問題で、利用する側には問題は発生しませんが、Webサイト自体に大きな問題を発生させ、多量の個人情報流出などにつながります。

 

SQL インジェクションは、データベースと連動したWebサイトに、本来入力としては使われない命令文(SQL文)を挿入し、データベースを改ざんしたり、不正に情報を入手する攻撃です。「インジェクション」(injection)とは「注入」という意味。

 

例えば、ネットショップなどのサイトでは、お客様がお問い合わせフォームなどに入力したデータをサーバーで受け取り、そのデータをデータベースに登録します。

 

ただ、もし、そのデータの中に、悪意でデータベースを動かす「SQL言語」が注入(インジェクション)されていると、意図しない動作をしてしまいます。

 

たとえば、悪意のある「SQL言語」の注入で、「このサービスの会員情報全部を教えて」というリクエストがあると、送信されてしまいます。これが「SQLインジェクション」です。

 

OSコマンドインジェクションは、データの入力や操作を受け付けるWebサイトでWindowsなどのOSに対する命令文を紛れ込ませて不正に操作する攻撃。

 

「インジェクション」(injection)は「注入」の意味で、Webアプリケーションのプログラムに与えるパラメータの一部に、そのWebサーバーで動作しているOSのコマンドとして解釈できる文字列を紛れ込ませ、遠隔からサーバーを乗っ取って不正に操作する攻撃です。

 

被害例

①コンピューターを遠隔操作され、犯罪や不正アクセスの犯人に仕立て上げられる

②個人情報(カードや銀行口座)が流出する

③複数のマルウェアをインストールされてしまい、深刻なダメージを受ける

④データーベースの改ざんや消去が行われ、業務に支障をきたす

などの被害が発生しています。

 

対策は、Webサイト構築側の問題で、利用者側にはありません。