Web広告からのマルウエア感染「Malvertising」にどう対処すべきか:川口洋のセキュリティ・プライベート・アイズ(57)(1/2 ページ)
セキュリティベンダーの調査結果などから、昨今特に増加している攻撃として注目を集めるようになってきた「Malvertising」。複雑なアドネットワーク経由でWebサイト閲覧者にマルウエアが送り込まれるこの攻撃に対して、各関係者はどのような対策を講じるべきなのか。川口洋氏が独自の調査結果を踏まえながら考察します。
Web広告からのマルウエア感染
皆さんこんにちは、川口です。つい先日「Hardening 10 ValueChain」のリポート記事を出したばかりですが、どうしても2015年のうちに記事化しておきたいテーマがあったので、必死に原稿を書き上げました。
そのテーマは、「Web広告からのマルウエア感染」です。「不正広告」や「Malvertising(マルバタイジング)」とも呼ばれるこの事象は、多くのWebサイトに表示されているWeb広告からのマルウエア感染のことをいいます。最近では、特にトレンドマイクロがこの事象に関して警鐘を鳴らしており、リポートやコラムを公開しています。
私の周りでも実際にこの事象が多数発生しており、多くの人が声を上げていかなければ片付かない問題だと肌で感じています。そういう訳で今回は急きょ、このMalvertisingを取り上げることにしました。Malvertisingに関しては以下の記事などが参考になりますので、併せてご一読ください。
参考リンク
不正広告に汚染された正規サイトが攻撃誘導経路に、トレンドマイクロが報告書公開(@IT)
国内3000サイトに不正広告、50万人にウイルス感染の危機(ITmedia エンタープライズ)
不正広告が約3,000 の国内大手サイトを汚染、50万ユーザーに影響(トレンドマイクロ)
さて、初めに、Web広告を経由した攻撃の流れを下図のように整理してみました。
今回は、「広告会社」が不正アクセスを受けてマルウエアを配信してしまうケースについては除外し、攻撃者が「広告主」として正規のルートで不正広告を出稿するケースを考えます。上図に基づいて、それぞれの立場を見ていきましょう。
ユーザー
まず、ユーザーの立場から解説します。現在のWebサイトには多くのWeb広告が組み込まれており、ユーザーがWebサイトを参照すると、これらのWeb広告は“自動的に”読み込まれます。詳細は分かっていないのですが、攻撃者は広告の出稿に当たって「特定の条件」を設定しているようです。ユーザーがこの条件にマッチすると、不正広告が表示され、不正サイトに誘導されます。そしてこのときに、ユーザーが使用しているブラウザーや「Adobe Flash Player」などのソフトウエアに脆弱(ぜいじゃく)性があると、マルウエアに感染させられてしまいます。ソフトウエアのアップデートがきちんとできていれば問題ないのですが、古いバージョンのソフトウエアを使用しているユーザーも多いのが実情です。
媒体
次に「媒体」、すなわちWebサイトです。こちらはほとんどの場合、広告会社がどこであるかの管理はしていますが、そこから配信されるWeb広告がどのようなものであるかは確認していません。正確に言えば、表示される「画像」や「文字列」の確認は行っていたとしても、「マルウエアかどうか」のような確認はほとんど行われていません。そもそも、マルウエアかどうかを確認すること自体が困難です。また、マルウエアに感染してしまったユーザーからすると、原因はWebサイトにあるように見えますので、不正広告を表示してしまうことで、ユーザーからの問い合わせに対応するコストが少なからず発生するという影響もあります。
広告会社
そして「広告会社」。上図ではかなり簡略化して描いてありますが、実際には「DSP(Demand Side Platform)」や「SSP(Supply Side Platform)」などが絡み合った複雑な配信構造になっています。ユーザーがWebサイトにアクセスすると、サイト上のWeb広告枠に対する入札が瞬時に行われ、ユーザーの閲覧履歴などに応じて異なるWeb広告が配信されます。同じWebサイトであっても、複雑な「アドネットワーク」を経由して、異なるWeb広告会社から、異なるWeb広告主の広告が配信される仕組みになっているのです。そのため、「どのユーザーに対して、どのWeb広告会社経由で、どのような広告コンテンツが流れたのか」を後から追跡するのは非常に困難です。このことが、われわれのようなセキュリティベンダーの対応を難しくすると同時に、攻撃者にとっては好都合になっているのです。
実際にWeb広告を調べてみた
調べれば調べるほど複雑なアドネットワークの世界にクラクラしつつ、日本のユーザーが一般的に参照するであろうWebサイトが、実際にどのような広告を読み込んでいるのかを、以下のような手順で調べてみました。調査対象は@ITを含む日本のさまざまな業種のWebサイトのトップページです。
調査対象 | 日本のWebサイト |
---|---|
調査対象数 | 200(選定基準は筆者の独断) |
調査環境 | Windows 8.1、Internet Explorer 11、Windows Update済み |
調査手順
- 調査用PCでFiddlerを起動
- Internet Explorerを「inPrivateモード」で起動(履歴を消す手間を省くため)
- 調査対象のWebサイトをInternet Explorerで参照
- 特に何もせず、10秒程度放置
- Fiddlerの履歴からホスト名を抽出
- 抽出したホスト名から、以下に合致するものを除去
・通常のWebサイト
・調査対象の組織自身の広告サービス
・analytics系のサービス
・単純な重複 - アクセスが終了したら、Internet Explorerを閉じ、Fiddlerをクリア
- 1に戻る
以上の手順で、200のWebサイトのTOPページにどのようなWeb広告が掲載されているのかを調査した結果、Excelで3400行のリストが出来上がりました。余談ですが、この作業が地道過ぎて、やり始めてしまったことを後悔しました。
Copyright © ITmedia, Inc. All Rights Reserved.