多発しているSQLインジェクション攻撃による被害について、前回はSQLインジェクションとはどのような攻撃であるかを概説した。今回は、なぜ最近になってSQLインジェクション攻撃が目立つようになってきたのか、その背景について考えてみたい。
● SQLインジェクション攻撃のための“環境”が整ってきた
前回説明したSQLインジェクションという手法を使うことで、悪意のユーザーは目的のサーバーのデータベースにデータを外部から登録することができる。じつは、このSQLインジェクションという手法は、以前からも攻撃に利用されており、特に目新しいというわけではない。被害も以前からあり、3年ほど前にやや流行した時期があったが、大流行というほどではなかった。
しかし、2008年に入ってからは、特に3月以降に多数のWebサイトがSQLインジェクション攻撃にさらされ、改竄されたサイトの報告が相次いでいる。しかも、著名なサイトも書き換えや情報漏洩の被害に遭っている。
筆者は、おそらくこのような状況となっている背景には、SQLインジェクションという方法を悪意のユーザーが取るための環境が整ってきたと考える。具体的には、
・検索サイトのノウハウ
・悪意のツールが出回っていること
・悪意の利用のハウツー記事
が充実したことで、それほど知識のないユーザーでもSQLインジェクションによるサーバー攻撃が可能になってしまっていることが大きいと考える。
● 検索サイトのノウハウ増大によって被害が増える
検索サイトは、多くのユーザーにとってインターネット活用の大きな武器となっているが、同時に悪意のユーザーにとっても大きな武器となっている。
例えば、ある悪意のユーザーが、URLの「?userID=~」という部分に細工をすることで、SQLインジェクションの脆弱性を攻撃するノウハウを持っているとしよう。このような場合、Googleであれば「allinurl:userID=」というキーワードで検索することで、そのようなサイトを見つけることができる。
この方法は、脆弱性のあるサイトが1つ見つかった場合には、さらに他のサイトを探すのが楽になったとも言える。ある脆弱性のあるサイトのURLが「http://example.com/ShowItemDetail.asp?userID=~」という形式のURLであったとすれば、同じWebアプリケーションを利用しているサイトを同様の手法で検索可能だからだ。攻撃対象となるサイトを、インターネット上からしらみつぶしに調べる、といったことをする必要がなくなったわけだ。
また、この「検索サイトを使って脆弱サイトを探す」という手法は、検索エンジンで上位に出てくるサイト、著名なサイトほど先に試すことができる。つまり、それだけ世間への影響も大きい。ユーザーのPCに悪意のスクリプトを読ませたいのであれば、それだけ多くのユーザーに実行させることができると考えられるし、商用サイトから個人情報を盗もうとするのであれば、多くの利用者の個人情報を盗み出しやすくなるということだ。
● 悪意のツールの流行
|
検索サイトで「SQL注入工具」などのキーワードで検索すると、攻撃ツールを配布しているページが確認できる
|
SQLインジェクション攻撃を実際に“成功”させるには、脆弱性がありそうなサイトにアクセスして、様々なデータを与えてみてエラーを引き起こすといった試行錯誤が必要となる。これを人手でやるのは非常に手間だが、現在ではこれをある程度まで自動化するようなツールもインターネット上に公開されているのだ。
今年に入って多発しているSQLインジェクション攻撃では、攻撃の発信元は中国が非常に多いということが知られている。実際に、このような攻撃ツールの類は、中国の、あるいは中国人向けの簡体字中国語で書かれたサイトで非常に多く見つけることができる。
例えば、Googleや中国の有名検索サイトである百度で、簡体中国語でSQLインジェクションツールを意味する「SQL注入工具」で検索すると、多くのサイトが検索結果として出てくる。また、こうしたサイトではSQLインジェクションに限らず、Web経由ではない攻撃を行なうような、多数の攻撃用ツールが配布されているようだ。
これらのページからダウンロードしてきたツールを使うことで、知識や技術のない悪意のユーザーでも、サーバーに対して攻撃をしかけたり、また攻撃に成功してサイト書き換えや、情報を盗むことが可能になるのだ。
なお、もしこのようなツールを入手したとしても、決して利用してはいけない。インターネット上のサイトに対して攻撃を行なった場合には、法令で罰せられる可能性が高い。また、こうしたツール自体にも、バックドアなど悪意のプログラムが含まれている危険性がある。
中国では、政治的に問題となるような情報については、かなり厳格に取り締りが行なわれていると言われている。反面、こうした他国であれば問題となりそうな黒客(ハッキング)情報などについては非常にゆるいようで、簡単に犯罪にも転用できるようなプログラムやデータを非常に多く見つけることができる。
● 悪意のハウツー記事の存在
|
実際の日本のWebサーバーへの攻撃手順を記載した悪意のハウツー記事。探すと、他にも世界各地のサーバーへの攻撃ハウツー記事が見つかる
|
前述のような攻撃ツールを配布しているサイトとともに、これらのツールを使った攻撃指南や、実際にどのように攻撃を行なったかといった情報が書かれた、「悪意のハウツー記事」とでも呼べるようなページも多数確認できる。
例えば、日本の有名楽器販売サイトである「サウンドハウス」がSQLインジェクション攻撃によって、顧客のクレジットカード情報などが流出、悪用された事件では、このサイトがどのようにして攻撃可能だったかなどを示した悪意のハウツーが、中国のブログサイトに掲載されていた。
ブログでは、URLのどのパラメータを操作すると脆弱性があることがわかったか、どのツールを使ってSQLインジェクションを行ない、サーバーのディスクの内容をすべて覗き見したり、不正にサーバーにユーザーを追加したりといった攻撃について、実際のURLやIPアドレス、ツール名、どのツールのボタンを押したかまで書かれている。この簡体中国語で書かれた内容さえ理解できれば、誰でも全く同じ操作をすることで、サイトを自由に攻撃できるようになっていた。
日本の場合には、いわゆる不正アクセス禁止法(不正アクセス行為の禁止等に関する法律)により、こうした攻撃によって得た情報、例えばパスワードなどの情報を公開することは禁止されているため、まずそのような情報がネット上に掲載されることはない。しかし、海外には日本のような法整備や運用が行なわれていない国もあり、特に中国などではよくそうしたサイトが見受けられる。
上記のサウンドハウスの例でも、ブログに記事が上げられたのが2007年8月で、それから2008年4月になって削除されるまで、じつに8カ月も掲載されたままの状態だった。そして現在でも、検索サイトからは攻撃ツールや、脆弱性のあるサイトのURL、具体的な侵入方法が書かれたサイトなどを見つけることができる。
SQLインジェクション攻撃が激増している背景には、攻撃ツールさえ手に入れれば、こうした記事を真似するだけで、専門知識の無い者でも攻撃を仕掛けることが可能になっていることが挙げられるだろう。
次回は、こうしたSQLインジェクションの被害に、ユーザーが巻き込まれないようにする方法について検討してみる。
( 大和 哲 )
2008/05/15 11:19
- ページの先頭へ-
|