終わらないWebサイトの改ざん―counter.phpと*stats.php

改ざんされてマルウェアの置かれたWebサイトにアクセスすると、知らないうちにマルウェアがダウンロードされる危険があります。その仕組み、そして対策は。

web改ざん

2013年はWebサイトの改ざんが非常に多い年でした。始まったばかりの2014年もその傾向は続いており、毎日多くの改ざんされたWebサイトが見つかっています。

カスペルスキーの日本オフィスでは、改ざんされてマルウェアが設置されたWebサイトの管理者やインターネットサービス事業者(以下ISP)に、注意喚起のメールを送っています。Webサイトの管理者にインシデントが発生していることに気づいてもらい、対応をお願いすることが目的です。
マルウェアに感染する人が少しでも減ることを願ったボランティア活動なので、時期によって多少の変動があるのですが、2013年12月は約500通のメールを送りました。つまり、たった1か月の間に日本のWebサイトの改ざんは少なくとも約500件発生したということです。弊社で確認できていない改ざんされたWebサイトもあると思いますので、実際にはこれ以上のWebサイトが被害に遭ったと考えられます。

下の図は、2013年12月に送った注意喚起メール数のグラフです。

注意喚起メール数:2013年12月

では、改ざんされたWebサイトとは、一体どういったサイトなのでしょうか?

Webサイトの管理者が知らないうちに、悪意を持つ第三者によってマルウェアが設置されたり、マルウェアをダウンロードさせるための仕組みを付け加えられたWebサイトを、「改ざんされている」と言います。(いたずらや示威目的でWebサイトが書き換えられることも多くありますが、ここではマルウェア感染という視点に絞ります。)

セキュリティが甘い環境(※1)から、これらの改ざんされたWebサイトを閲覧しただけで、マルウェアに感染します。一般的に、「ドライブバイダウンロード」と呼ばれる攻撃手法です。
先に2013年12月は約500件のWebサイトの改ざんが起きたと述べましたが、これらのサイトを閲覧した、何千、何万のユーザーがマルウェアに感染した可能性があります。
そんなバカな、と思われる方もいらっしゃるかもしれませんが、頻発するWebサイトの改ざんの中でも際立つ、2つの事例について紹介します。

counter.php

counter.phpは、日本では2013年2月頃より観測され始めました。何人の訪問者がいたかを知るためのアクセスカウンターをWebサイトに設置するのは一般的なことなので、このファイル名を見る限りcounter.phpはアクセスカウンターのように見えます。しかし、この実態は悪質なリダイレクター(※2)でした。

実際に改ざんされたWebサイトのソースコードを見てみましょう。

counter.php:ソースコード

赤枠で囲われている部分が悪性のコードです。

悪性のコードは特徴的で、HTMLのクローズタグの後にiframeが挿入されています。この挿入したiframeを使って、Webサイト閲覧時に、ユーザーの意図とは関係なく外部のWebサイトへ誘導し、誘導先で別のマルウェアに感染させるという手法を取ります。
カスペルスキーではこれをTrojan.JS.Iframe.aeqとして検知します。

ユーザーが改ざんされたWebサイトにアクセスすると、counter.phpはいくつかの条件の下でコードを返します。最初の条件はIPアドレスです。興味深いことに、同じIPアドレスから2回アクセスすることはなく、1つのIPアドレスから初回のアクセスでのみ動作します。同じ環境からブラウザーを再読み込みし2回目にアクセスしたとしても、初回と同様のコードは返ってきません。
非ブラウザー環境での実行を回避するための典型的なチェックが終わり、コードが実行されると、エクスプロイト(※3)が設置されたWebサイトへ誘導されます。ここでは、OSの種類やJava、Adobe Readerなどのバージョンを調べるためのプラグイン検知機能で確認したJavaのバージョンに従って、そのユーザーの環境に合わせたエクスプロイトが選択され、ダウンロードされます。

counter.phpについてはカスペルスキーのアナリストが詳細な記事を書いていますので、こちらも併せてご参照ください(『Visit from an old friend: Counter.php』、『Malicious counter.php』)。

このcounter.php自体は新しいものではありませんし、この攻撃手法自体も多くの人が知るところとなりました。問題は、今現在もcounter.phpで他のWebサイトへリダイレクトされる仕組みが残っているまま、放置されているWebサイトが数多くあるということです。counter.phpという名前はありがちなので、Webサイトの管理者が気づいていないのかもしれませんし、何年も放置されていて誰も管理していない野良Webサイトなのかもしれません。いずれにせよ、悪意のある第三者が、Webサイトを勝手に書き換えていることには変わりないので、Webサイトの管理者が一刻も早く対応してくれることを願います。

不思議なことがもう1つあります。今現在のcounter.phpの状況を見てみると、多くの誘導された先のWebサイトでマルウェアはダウンロードされません。
攻撃するためのシステムは残したまま、まるでお休みしているかのようです。十分成果を上げたので攻撃者が新たな方法を模索中なのか、年末年始の長期休暇か、はたまた攻撃者が攻撃システムをレンタルで借りていて、そのレンタル期間が終了したのかなど、いろいろ想像の余地はありますが、実態は不明です。
この記事の執筆時点(2014年1月9日現在)、マルウェアはダウンロードされないので、WebサイトのオーナーやISPに報告をしても、「何が問題であるか」ということが、なかなか理解してもらえない場合があります。
Webサイトが改ざんされてコードが残っており、マルウェアに感染する仕組みが存在する以上、いつまたマルウェアが設置され、ダウンロードが始まるかわかりません。改ざんされたWebサイトは、悪意のある第三者がそのWebサーバーに対して書き込み権限を持っているということなので、早急に侵入経路の調査とセキュリティホールを塞ぐ対応が求められます。

*stats.php

「stats」は日本語で「統計」という意味があります。2013年12月始め頃から目につくようになった*stats.phpは、先に述べたcounter.phpと同様に、Webサイトに悪意のあるiframeが挿入され、ユーザーがそのWebサイトを閲覧すると他のWebサイトへ誘導されるものです。誘導される先のドメインは、最近では12月11日に登録されたものがありました。弊社のアナリストが確認している*stats.phpのURLは60を数えます
下に紹介するのはその誘導先URLの例です。

http://omakase***.jp/sample-morikawa36/agedstats.php?id=228637
http://emedemarg***.com/avidstats.php?id=500988
http://b-**.net/chat/calmstats.php?id=165216
http://dog***hotel.com/cyanstats.php?id=163513
http://hak12***.xsrv.jp/cyanstats.php?id=280379
http://kostenlo***zimmervermittlung-berlin.de/edgystats.php

便宜上*stats.phpと呼んでいますが、「ある文字列 + stats.php」の形式となっており、stats.phpの前に「aged」や「avid」などさまざまな単語が入っています。

次のキャプチャは、挿入されたiframe で*.stats.phpが指定されているWebサイトのソースコードです。

stats.php:ソースコード

これらのURLは、適切なリファラー(※4)やCookieの情報がなければ直接のアクセスはできません。もし動いたとしても、アクセスできるのはたった一度だけです。初回のアクセスの後、アクセスしたIPアドレスはブロックされるので、同じIPアドレスから最新のデータ(マルウェア)のダウンロードはできないようになっています。

そのたった一度のアクセスが成功した(=マルウェアに感染した)ネットワークのトラフィックは次のように見えます。

stats.php:トラフィック

コードがダウンロードされ実行されると、さらに悪性のスクリプトをダウンロードし、*.jar と *.pdf の実行可能なファイルがダウンロードされました。現在観察されている最終的なペイロード(※5)はzbotです。オンラインバンクのアカウントとパスワードを狙うマルウェアが、*stats.phpを入口にして侵入します。
カスペルスキーでは、*.stats.phpが指定されたiframeをHEUR:Trojan.Script.Genericとして検知します。サンプルのMD5ハッシュ値はa8d23ca3eb1e532f8ddfc8de77b85418です。

マルウェアがダウンロードされる仕組みの複雑さから、残念なことにセキュリティ各社の対応は不十分です。つまり、多くのセキュリティ製品で検知できていません。

特筆すべきなのは、*stats.phpを指定したiframeが挿入されたWebサイトは、ほとんどが日本にあるということです。2013年にオンラインバンキングの不正送金で巨額の被害が出た事実を考えると、サイバー犯罪者が引き続き日本を狙っているのは明らかです。

Webサイトの管理者が対応しない限り、Webサイトを訪れる多くの人がこの危険なマルウェアに感染する可能性があります。

どうやってWebサイトを改ざんしているのか?

counter.phpと*stats.phpについて、概要を理解いただいたと思います。しかし、ある根本的な疑問が残ります。「Webサイトの改ざんは、どう行われているか?」という点です。

冒頭で述べた、改ざんされたWebサイトの管理者への注意喚起メールを送付する活動の中で、ある方から非常に興味深いお返事をいただくことができました。
Webサイトのindex.htmlにiframeが挿入され、*stat.phpのURLに誘導されていたのですが、FTPのアカウントとパスワードが何らかの原因で流出し、悪意のある何者かが海外からアクセスしてWebサイトを改ざんしていたそうです。

OSやソフトウェア、セキュリティソフトがいつも最新の状態であれば、マルウェア感染のリスクは下がります

私たちはWebサイトが改ざんされていることの発見はできますが、実際にどう行われたかを確認するためには、Webサーバーのログを調査するしかありません。今回実際に対応にあたった方から詳細な情報を教えてもらうことで、改ざんする方法の1つが明らかになりました。もしカスペルスキーからの注意喚起の連絡を受け取り、対応された方がいらっしゃいましたら、ごく簡単で構いませんので結果を教えていただければ幸いです。

2013年から続くWebサイトの改ざんの流行は、2014年もまだまだ続くと予想されます。しかし、OSやソフトウェア、セキュリティソフトがいつも最新の状態であれば、マルウェア感染のリスクは下がります。
カスペルスキーを含む世界中のセキュリティベンダーが、おまじないのように唱える「OSとソフトウェアの更新をしてください」という言葉の意味はここにあります。

—————————————————
※1更新されていない古いOS、ソフトウェアの脆弱性が残ったままで、セキュリティソフトをインストールしていないなどの環境
※2 あるURLから他のURLに転送させること
※3 ソフトウェアの脆弱性を利用して、不正な動作を行うプログラム
※4 Webサイトから別のWebサイトへ移動するときの元のWebサイトのこと
※5 データ本体のこと

人気記事まとめ:12月

1か月の人気記事まとめ:12月

新年がスタートするこの時期は、1年の抱負を語り目標を立てる時期です。Kaspersky Labは今年もまた、皆様にITセキュリティの最新ニュースをお届けしていきます。さて、新たな年も始まったところですが、去年最後の月で多く読まれた記事を紹介していきましょう。 機内Wi-Fiは安全か? 米連邦航空局とEUの同様の機関が規制を緩め、飛行機が離陸してから着陸するまでの間、ずっとコンピューターとモバイルデバイスを利用できるようになりました。ただし、離着陸時の機内Wi-Fiの利用、テキストメッセージの送受信、通話、メールは引き続き禁止されていますが。この規制緩和によって機内Wi-Fi利用者が増えるだろうと予想されますが、そもそも機内Wi-Fiの安全性はどうなのでしょう。地上での無料Wi-Fiと同様に、マルウェアの感染やさまざまな攻撃から自分の身を守ることを考える必要があります。Kaspersky Labのシニアセキュリティリサーチャー、コート・バウムガートナーは「機内Wi-Fiに接続するだけで、近くに座っている悪意のある乗客に通信内容を読み取られる恐れがある」と述べています。セキュリティ対策は万全に。 2013年のサイバーセキュリティを振り返る 情報セキュリティの分野で多くのできごとがあった2013年は、セキュリティの専門家にとっても一般のユーザーにとっても忘れられない年になるでしょう。Kaspersky Labでは、エドワード・スノーデン氏がThe GuardianにNSA文書を公開したあの事件や、Kaspersky Labによって発見された標的型攻撃Icefogに注目しました。ほかにも注目すべきものに、モバイル脅威の増大、サイバー脅迫、仮想通貨などがあります。また、バンキングサービスを攻撃する機能を持つ悪意あるモバイルアプリも出現しました。自分はサイバー攻撃とは無縁だったという人でも、アンチウイルス製品が守ってくれていて攻撃を受けたことに気づかなかっただけである可能性が大です。統計を見れば、攻撃を避けられる見込みは低いことがわかります。私たちはこの1年で50億件以上のサイバー攻撃を登録し、1日当り315,000の新種のマルウェアを発見しています。 視聴者を監視するスマートテレビ 11月上旬、英国のハルを拠点にDoctorBeetというハンドルネームで活動している開発者は、自社の追跡機能をアピールするLGの広告を発見したことから、LG製のスマートテレビが自分の個人情報を大量に収集していることに気付きました。問題は、LGスマートテレビの追跡メカニズムの無効化機能と関係しています。一見問題なさそうですが、追跡機能は既定で有効になっている上、いわゆる「オプトアウト」(無効化)したとしても極めて巧妙にユーザーの情報を収集し続けていました。しかも、無効化のオプションはなかなか見つからない場所にあり、このオプションに関するヘルプも表示されない状態でした。LGのスマートテレビでチャンネルを変えるたびに、「ユーザーのお気に入りの番組、オンラインでのふるまい、検索キーワードなどの情報を分析して、対象の視聴者が関心のある広告を配信する」ための情報が送信されます。この情報は暗号化されていない平文のテキストで送信されるだけでなく、テレビに接続されたUSBメモリ内のファイル名情報も送信されていました。では私たちに何ができるでしょう?あまり多くはありませんが、いくつかのインターネットドメインをブロックするところから始めましょう(ad.lgappstv.com、yumenetworks.com、smartclip.net、smartclip.com、smartshare.lgtvsdp.com、ibis.lgappstv.com)。ドメインをブロックするには、ルーターの管理インターフェイスにアクセスする必要があります。 200万件のパスワードが盗難に–あなたのパスワードは大丈夫? 皆さんが日常的に使っているパスワードは、メール用でもSNS用でもオンラインバンキング用でも、サイバー犯罪者にとって価値あるものです。パスワードを使って盗み取ったアカウントを、不正行為を働くのに利用できるからです。パスワード窃盗が最近よく見られるのも不思議はありません。最近のハッキング事件では、犯罪者たちが大手サービスのパスワードを集めていました。Facebook、Yahoo!、Gmail、Twitter、LinkedIn、そしてロシアの国内SNSであるOdnoklassniki とVkontakteも。どうしてこんなことに?GmailやFacebookのアカウントが盗まれるのは、マルウェアの攻撃を受けた場合に限りません。たとえば友達のコンピューターや、空港やホテルに設置された共有のコンピューターから、ちょっとメールチェックしたことはありませんか?使ったコンピューターが感染していたとしたら、パスワードのどれかがハッカーの手に落ちている可能性が大です。いくつかのオンラインサービスで同じパスワードを使っていたならば、問題はさらに大きくなります。今回の件に該当する人は、古いパスワードを変更し、オンラインサービスのアカウントごとに別々のパスワードを設定してください。全部のパスワードを覚えるのが大変であれば、特別なツールの力を借りるのも手です。

人気記事まとめ:12月
ヒント