連載
» 2007年07月13日 10時00分 公開

Webサーバへの攻撃を見抜くインシデントの見抜きかた(1)(3/3 ページ)

[海老根猛,@IT]
前のページへ 1|2|3       

SSLの脆弱性を狙った攻撃の例

 最後にSSLの例を紹介する。SSLの脆弱性(MS04-011)を狙った通信とされていて、分析は少し難しい。

 脆弱性自体は古いものだが、2007年の4〜5月にかけて国内で多く検知されている。

.b.................THCOWNZIIS!2^...%.lYNm...lYlY......Lp..XFWS2_32.DLL........]..,j0Yd...
@..p...x.._<.....[x...K....S$..SQR.[ 
..1.A1...4....1.....u...E
.DE.f9.u.f1.ZX^VPR+N.A...J.......M .D...M
u..M.t..M$.].S....j.X.E
.Ey...P.E.5.....E.f.E.f5..f.E.X..1.SSSSVFV....UXf.0j.UW.U..E.P.U.UU.U..
D...Sh.exeh\cmd.1..E..WWWSS....R..ExP.E.P..SSj...RSSSU.U.j..U.
リスト10 SSLの脆弱性を狙った攻撃の例

 SSLの通信はネットワーク上を流れるときは暗号化されている。そのため、パケットを解析しても意味のつながらない文字列が見つかるだけである。

 一見、上記例のパケットは不明な文字列に見えるが、はじめからゆっくり見ていってほしい。「THCOWNZIIS!」や「WS2_32.DLL」、「Sh.exe」、「cmd」という文字列が見つかっただろうか。これは明らかにおかしい。前述のとおり、SSL通信の正規手順に従ったパケットであれば、必ず暗号化されているはずである。

 上記の異常性および、IIS、DLL、exe、cmdの文字を組み合わせて考えると、Windowsの脆弱性を狙っているのではないかと推測することができる。

 なお、SSLの通信は実際のリクエストが発生するまでに、セッション確立のための鍵交換が行われる。この通信中に行われる攻撃もあるので、ログを調査したい場合は、事前に必要な項目を取得するよう設定しておく必要がある。Apacheであれば、confファイル中のSSLログ出力の部分で、変数を指定すればよい。

何が狙われているのかを判断することが対策の第一歩

 繰り返しになるが、通信の内容から、「何が狙われているのか」を導き出すのが重要である。狙われているものが分かれば、対策までの時間が短縮できる。

 以下に判断の処理フローを示す。

図1 判断のための処理フロー 図1 判断のための処理フロー

 では、PHPの例で実際の判断の流れを示したいと思う。

図2 PHPによるOSコマンドインジェクション攻撃の判断から対策まで 図2 PHPによるOSコマンドインジェクション攻撃の判断から対策まで
(画像をクリックすると拡大します)

 図2において、1.および2.の事象から攻撃と判断ができるかどうかが重要である。不明なサイトへのアクセス、OSコマンドのような文字列を見分けることができれば、判断の精度は高まる。

 4.の部分では影響を受ける対象が存在しているかどうかを判断している。Webアプリケーションを狙っている場合、該当のアプリケーションが存在しているかどうかが調査続行の判断基準になる。

 5.の部分ではHTTPレスポンスのステータスコードを確認し、4xxクラスが返答されていることを確認する。なお、返答されていたとしても、6.および7.は行った方がよいだろう。

 同様にSQLインジェクションの場合は、引数として指定されているSQL文から上記のような判断を行っていくことになる。

図3 SQLインジェクション攻撃の判断から対策まで 図3 SQLインジェクション攻撃の判断から対策まで(画像をクリックすると拡大します)

 攻撃が成功してしまった場合、攻撃の発生以降のWebサーバのログが重要になる。攻撃者に「攻撃が成功したサーバ」として記憶されてしまい、本格的な攻撃を仕掛けられる可能性があるためだ。既知の脆弱性には確実に対策しておくことを推奨する。

 なお、実際のインシデント・ハンドリングでは、同じアラート、IPアドレス間通信であったとしても1つ1つの攻撃対象、影響が異なる場合が多々あり、同じ手順だけでは判断できない。

 そのため、脆弱性個々のアドバイザリやRFCなどの文献も参照しては、再度調査し直すなどを繰り返して精度を高める必要がある。

 次回も引き続き、攻撃の実例を元に紹介する。

Index

Webサーバへの攻撃を見抜く

Page1

インシデントを最終判断するのは「人間」

知識と経験が必要なインシデント・ハンドリング

素早い判断を行うためには切り分けの知識が必要

実例で学ぶインシデント・ハンドリング

ワームによる攻撃の例


Page2

クロスサイトスクリプティングを狙った攻撃の例

SQLインジェクションを狙った攻撃の例

OSコマンドインジェクションを狙った攻撃の例


Page3

SSLの脆弱性を狙った攻撃の例

何が狙われているのかを判断することが対策の第一歩


Profile

海老根 猛(えびね たけし)


三井物産セキュアディレクション株式会社(MBSD)

セキュリティオペレーションセンター(SOC)


MBSD-SOCにおいて、顧客企業への不正アクセスを24時間365日体制で監視する専門家集団の1人。現在同社にて最新のセキュリティ技術動向の調査研究を行っている。


前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。