Webアプリケーションサーバ攻撃を検知・阻止するには:3つの攻撃手口とその対策
Webアプリケーションサーバからバックエンドのデータベースサーバに侵入するのは比較的簡単だ。最もポピュラーな手口と、その対策を紹介する。
悪質なマルウェアは、われわれがいつごろからか思い出せないくらい昔から問題になっていた。最近の「Storm Trojan」にみられるように、この傾向は衰えそうにない。しかしマルウェア問題は、もうすぐあまり注目されなくなるかもしれない。脆弱なWebアプリケーションサーバに侵入して大量の機密情報を盗み出す攻撃者の増加の方が、マルウェアよりも深刻な問題になると予想されるからだ。
Webアプリケーションサーバが攻撃のターゲットになるのは、それが公開ネットワークからアクセス可能で、しかも犯罪者にとって情報の宝の山が保管されているバックエンドのデータベースサーバとつながっているからだ。では、攻撃者たちはどのようにして、フロントエンドのWebアプリケーションからバックエンドのデータベースサーバに侵入するのだろうか。最もポピュラーな手口としては、以下のようなものがある。
SQLインジェクション
SQLインジェクション攻撃は、インターネット上で機密情報を盗む手段として一般化してきた。SQLインジェクションでは、攻撃者がWebフォームの検索フィールドにSQLクエリーを入力する。このクエリーがWebアプリケーションに受け入れられると、バックエンドのデータベースに渡され、さらにWebアプリケーションからデータベースサーバへのリード/ライトアクセスが認められていれば、データベース内でクエリーが実行される。その結果として想定されるシナリオは2つある。攻撃者がデータベースの内容を見るか、データベースの内容を削除するかのどちらかだ。どちらのケースも好ましいものではない。
一般に考えられているのとは違い、SQLインジェクション攻撃は高度な専門知識を必要としない。この攻撃は基本的に、SQLの基本知識とインターネット上で利用できるクエリーのリストを持っている人なら誰でも実行することができるのだ。
ブラインドSQLインジェクション
Copyright © ITmedia, Inc. All Rights Reserved.