Webブラウザは何年も前から日々の仕事の一部になっている。Webブラウザを使ってビジネスプロセス合理化を図ったり、会社のイントラネットにアクセスしたり、ものの数秒で世界中から情報を収集できる。
Webブラウザはアプリケーションデータからリンクや画像、そしてJavaやAjaxを使ったクリエイティブな広告に至るまで、大量のWebサイト情報を表示する責任を担っている。企業がWebブラウザを多用していることを攻撃者は知っているので、正規サイトを改ざんしてWebブラウザ経由で悪質コードをこっそり企業に仕掛けようとするのだ。
Web広告はWebサイト運営者にとって大きな収益源となっている。多くの無料サイト、特にソーシャルネットワークサービス(SNS)、ブログ、フォーラム、ニュースサイトはWeb広告で運営されている。
Web広告は事実上何百万人ものユーザーに届く無限の可能性を持っており、攻撃者は悪質コードを仕込む侵入口として目を向けている。Webサイト上の広告スペースはスクリプトを通じて画像とメディアを表示し、ユーザーのクリックを誘う仕組みになっている。この広告をホスティングしているサーバを攻撃者が乗っ取れば、URLリダイレクトを使って自分たちのマルウェアをホスティングしているWebサイトにユーザーを送り込める。
Webサイトの広告をクリックすると、ユーザーは普通、別のWebサイトにリダイレクトされる。そのサイトを改ざんすれば、広告によって表示されるページを攻撃者が完全にコントロールすることが可能になる。

攻撃者はさまざまなやり方でWeb広告を悪用しようとしている。その1つに、ソフトウェアの未知の脆弱性を見つけ、それを突いて複数の正規サイトを同時に悪用する方法がある。これを実行するためには攻撃者が、例えばWebサーバソフトなど商用ソフトの脆弱性を、ソフトメーカーよりも先に見つける必要がある。そして、その脆弱性のあるソフトを使っているWebサイトのデータベースを自動的に作成するスクリプトを作らなければならない。
多くのWebサイトは、phpBB Group、Jelsoft EnterprisesのvBulletin、オープンソースのPhorumといった人気ベンダーが提供するフォーラムを使っている。こうしたソフトではviewtopic.php、showthreap.phpなどあらかじめ設定された文字列をURLに付加する仕組みになっているのが普通だ。
攻撃者はこうした人気ソフトを大量にダウンロードし、悪用するためのセキュリティホールや脆弱性を探す。ソフトのソースコードに欠陥を見つければ、インターネットを検索してその文字列を含む全WebサイトのURLを見つけ出すスクリプトを簡単に利用できる。この方法で攻撃者は脆弱性がある正規サイトのデータベースを手早く作成し、悪用の準備は整う。
この種の検索の一例として、Googleで「inurl:showthread.php」「inurl:viewtopic.php」を検索してみると、同じフォーラムソフトを使っているWebサイトが大量に見つかる。
人気ソフトの脆弱性を突けば、攻撃者はその脆弱性があるWebサイトとWebサーバ全体にアクセスできる。多くのWebサイトは共有ホスティングを利用している。言い換えると、サイト運営者のサーバ料金節約のため、複数の無関係なWebサイトが1台のサーバでホスティングされている。従って、Webサイト構築ソフト、WebサーバのOS、インストールされたWebアプリケーションの脆弱性は、そのサーバでホスティングされているWebサイトすべてにアクセスする手段を攻撃者に与えてしまうのだ。
攻撃者がURLをリダイレクトし、一見正規サイトに見えるが実は正規サイトのドメイン名のスペルミスを使ったサイトに誘導することもある。わたしが分析したWebトラフィックパターンの中に、ユーザーが閲覧しているサイトは1つなのに、まったく同時刻に別の5サイトからのトラフィックが来ているものがあった。ユーザーはXYZ.comを閲覧しているつもりで、実際には少なくとも別の5サイトとの通信を確立していた。その一部は広告とアプリケーションだったが、「.ru」ドメインが付いたサイトも2つあり、後にこのサイトはスパイウェアをホスティングしていることが分かった。
悪質コードがWebサイトに仕掛けられると、ユーザーが知らないうちに簡単にWebブラウザにインストールされてしまう可能性がある。Webブラウザが古いバージョンの場合は特にその可能性が高い。マルウェアを含んだWebサーバをホスティングまたは制御している攻撃者は、早い場合では120秒ごとにURLとIPアドレスを切り替えることもある。IPアドレスを次々に変更するこの手口は、フィッシング詐欺の攻撃者が偽サイトの存続期間を延ばすためにやっていることと似ている。これにより、既知のマルウェアサイトおよびIPアドレスを遮断することは不可能に近くなる。対策は簡単ではないが、防止することは可能だ。
Web広告、Webベースソフトなどの悪用や関連の攻撃を避けるため、組織は一貫した徹底防御のアプローチでインフラにセキュリティを行き渡らせなければならない。危険回避のための対策を以下に挙げる。
Blue Coat Systems、Secure ComputingのSecure Web(Web Washer)、インドのOffice EfficienciesのSafeSquid(アプライアンス製品は国内未発売)といったプロキシアプライアンスを導入する。こうしたアプライアンスはWebコンテンツをフィルタリングして、Webトラフィックパターンの参照と分析に利用できる。プロキシとファイアウォールを組み合わせれば、グループポリシーを使ってトラフィックをすべて強制的にそこを経由させることができる。さらに、プロキシアプライアンスはWeb広告や既知の悪質サイト、そのほかさまざまなカテゴリ(ギャンブル、ポルノ、SNSなど)のサイトを会社のポリシーに従って遮断できる。
挙動ベースのマルウェア検出ソフトを導入する。最新型の製品はNovaShield(国内未発売)が提供している。同社が宣伝している製品ではボットネット、トロイの木馬、rootkit、ワーム、キーロガーを検出できる。ほかにもScanSafeのSaaS(Security as a Service)、SophosのWebセキュリティアプライアンスなどがある。
常にウイルス対策ベンダーと接触を保つ。怪しいトラフィックやマルウェアが見つかったら、直ちにリンクかサンプルをベンダーに送る。そうすることによりベンダーはすぐにそれを分析し、定義ファイルを提供して全社的なアップデートが可能になる。こうすることで、ほかの企業も守れることはいうまでもない。
WebブラウザとOSのセキュリティアップデートはできるだけ早く導入する。こうしたアップデートは理由があってリリースされるものであり、放置すればすぐ、気付かないまま脆弱性を悪用される。
ユーザー教育も忘れてはならない。ユーザーはWebにはびこる危険について知っておく必要がある。攻撃者はどんなプラットフォームでも利用してインフラを攻撃する。ソーシャルネットワーキングプラットフォームではソーシャルエンジニアリングの危険が増大している。従業員がネット上での人との出会いに注意を払い、自分の職位や組織、重要な情報を明かすことのないよう、教育することだ。
従業員をセキュリティ漬けにする。セキュリティ責任者がいない場合は任命しておいた方がいい。組織のセキュリティ責任者は、常にセキュリティのことをユーザーに考えさせなければならない。従業員の採用時にオリエンテーションを行ったきり、あらためてセキュリティ研修を受けさせていないケースがあまりに多い。
企業にとってWebブラウザの危険性は高まっており、ネット広告は悪意を持ったハッカーが企業を攻撃するために使う数ある手段の1つにすぎない。組織はセキュリティと利便性の間で均衡を保つことに努める必要がある。ネット上の組織犯罪件数が増える中、企業は常に攻撃阻止に力を入れ、攻撃者より数歩先を行かなければならない。
本稿筆者のマルコス・クリストドンテ二世は米政府機関の情報セキュリティ担当者。CISSP、CCNA、MCP、Security+の資格を持つ。