この投稿は、Holger Unterbrink および Emmanuel Tacheauによって執筆されました。
エグゼクティブ サマリー
Talos では、主要なエクスプロイト キット(EK)を継続的に監視しています。シスコが RIG EK キャンペーンで最近観察した変化を調査したところ、よく知られた別のエクスプロイト キット(Terror EK)が候補として特定されました。
Terror EK は、昨年にかけて多数のエクスプロイト キットが統廃合された後に現れた新しいツールの 1 つです。Angler とその亜種が姿を消すと、新しい EK が続々と出現しましたが、それらの多くは、Angler の巧妙さには遠く及んでいません。その 1 つが、昨年末に出現した Terror EK です。初期バージョンは非常に単純で、エクスプロイトが被害者のブラウザ環境と一致するかどうかを確認しない無差別攻撃タイプでした。しかしこの EK は徐々に改善されており、今回取り上げる最新バージョンに至っては急速な進化を遂げています。
Talos の調査によると、正規の Web サイトが(侵害により)マルウェアの入り口となり、訪問者を最初に RIG エクスプロイト キットのランディング ページにリダイレクトします。1 日経過すると、リダイレクト先が Terror エクスプロイト キットに切り替わります。
Talos の調査によると、正規の Web サイトが(侵害により)マルウェアの入り口となり、訪問者を最初に RIG エクスプロイト キットのランディング ページにリダイレクトします。1 日経過すると、リダイレクト先が Terror エクスプロイト キットに切り替わります。これら 2 件のキャンペーンが連携(またはリソースを共有)しているか、あるいは片方のキャンペーンが他方にタダ乗りしている可能性があります。Terror EK は絶えず進化しているように思われます。今回のキャンペーンではエクスプロイトが追加されており、無差別攻撃もなくなっています。その代わり、標的環境を評価し、OS、パッチ レベル、ブラウザ バージョンやインストール済みプラグインに応じて最適なエクスプロイトを選択します。このため、エクスプロイトの全容把握がますます困難になっています。
興味深いことに、標的となっている脆弱性に対してはクリアテキストの URL パラメータ(URL の cve2013-2551 = cve20132551 など)が使用されています。
技術詳細:
攻撃チェーンは、侵害を受けた Web サイトから始まります。被害者は、そこから HTTP 302 の「Moved Temporarily」応答により EK ランディング ページにリダイレクトされます。ランディング ページには、下図 A のようなランダムのダミー テキストが記載されています。
図 A
概要で説明したように、Terror EK は難読化された JavaScript コードを使用することでブラウザ環境を評価し、プラグイン(ActiveX、Flash、PDF リーダー、Java、Silverlight、QuickTime など)などのバージョン情報を取得しようと試みます。その後、JavaScript コードの戻り値を使用することで非表示の「frm」フォームを送信します。このフォームには、下の図のようにバージョン情報などが入力されます。フォームの名前は記録セッションによって異なるため、動的に生成されていると考えられます。
return
document.getElementById(“65c0cd56”).value = r.flash,
document.getElementById(“1f57be6f”).value = r.pdf,
document.getElementById(“1bc1bd0f”).value = t() + “|” + r.silverlight, document.getElementById(“3d64d278”).value = r.quicktime,
document.frm.submit(), r
ページの最後に、この HTML フォームのコードがあります。
図 B
このセッションでは、名前を次のように解明できます。
65c0cd56 = Flash バージョン
1f57be6f = PDF バージョン
1bc1bd0f = Silverlight バージョン
3d64d278 = Quicktime バージョン
他のセッションでは、たとえば次のように名前が変更されています。
A59117,B59117,C59117,Q59117,102b6031,80870248,55066b2d,40a632b5,7c5caca6
フォームの最初の部分の値、「od50AA42KhpGDD69…<snip>…CRDXrL45PYMCC911K」まではサーバによって入力されます。これらは動的に入力されます。被害者とキャンペーンに関する詳細情報が追加される可能性もあります。
このページによって生成される POST 要求の応答には、JavaScript や VBScript を含む HTML ページが使用されています。これらのスクリプトには、攻撃者が悪用しようとしている CVE を指す URL が含まれています。たとえば、Win7 および Internet Explorer 8 を使用したセッションの場合、次のようになります。
JavaScript:
hxxp://146[.]185[.]166[.]209/d/9477ff41b6290c91547cc8e31ad53bee/?q=r4&r=c3c100b92ffbb7ca95d18559c72c1aff&e=cve20132551
VBScript:
hxxp://146[.]185[.]166[.]209/d/9477ff41b6290c91547cc8e31ad53bee/?q=r4&r=c3c100b92ffbb7ca95d18559c72c1aff&e=cve20146332
これらの脆弱性が悪用されると、マルウェアがダウンロードされて被害者の PC にインストールされる危険性があります。興味深いことに、JavaScript のエクスプロイトが最終的なマルウェアのインストールに成功すると、後者の VBscript ベースからの要求には応答が返されなくなります。
EK が無差別攻撃を中止したことは明らかです。実際のところ、エクスプロイトはより選択的になっています。別のブラウザ(IE8 の代わりに IE11 など)でサイトにアクセスした場合は、他のファイルが返されます。たとえば、cve20160189 や cve20152419 です。
また、エクスプロイトをダウンロードするために、Cookie に基づく認証が使用されます。攻撃チェーンは次の Cookie を設定します(図 C)。
図 C
これは、エクスプロイトの直接ダウンロードを防ぐものです。完全な攻撃チェーンに従わない可能性があるのは、エクスプロイトを盗もうとする競争心の強いサイバー犯罪者や、被害者の感染場所や感染方法を調べようとするフォレンジック調査担当者などでしょう。
前述のとおり、JavaScript ファイルは CVE 2013-2551 を悪用します。その後、別の JScript ファイルを生成して、それをディスクに書き込み、コマンド ラインを使用して実行します(図 D)。
図 D
Zs3n.tmp の難読化をおおむね解除して読みやすく整えると、次のようになります。
図 E
このスクリプトは EK Web サイトから暗号化されたバイナリ ストリームをダウンロードして暗号化解除し、それをランダムな名前でディスクに保存して、最終的に実行します。今回の場合は、rad9F6BA.tmp.exe(SHA1:e373b7f49e07d0c6176565357aedbe61e2d39306)という名前です。次のプロセス リストでこれを確認できます(図 F)。この実行可能ファイルは、Terdot.A/Zloader マルウェア ダウンローダのバリアントであると思われます。コード共有以外に、Zloader として知られるハードコーディングされた IP アドレスのまったく同じリストも含まれています。
Terdot.A/Zloader のドロッパーである rad9F6BA.tmp.exe は、「Process Hollowing」と呼ばれる技法を使用して、コードを explorer.exe (3148) プロセスに注入します。解凍ステージの後、DLL インジェクションを使用してコードを explorer.exe (1968) に注入します。
図 F
explorer.exe (1968) を処理し、その他の複数のファイルをダウンロードしてドロップします。さらに、CreateRemoteThread を使用してコードを作成し、dwm.exe (1924) および taskhost.exe (1996) プロセスに注入します。
ダウンロードされた重要なファイル(ハッシュについては IOC のセクションを参照):
C:\Users\<USER>\AppData\Roaming\Romaa\php.exe
C:\Users\<USER>\AppData\Roaming\Romaa\php5ts.dll
C:\Users\<USER>\AppData\Roaming\Hele\fido.onm
C:\Users\<USER>\AppData\Roaming\Xunup\quis.voz
C:\Users\<USER>\AppData\Roaming\Romaa\miemr.php
C:\Users\<USER>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\start.lnk
Terdot.A/Zloader は、PHP Interpreter 環境と難読化された PHP スクリプト(miemr.php)をダウンロードして永続化します。マルウェアの永続化では、Autostart フォルダに「C:\Users\<name>\AppData\Roaming\Romaa\php.exe miemr.php」へのリンクが追加されます。
難読化された miemr.php スクリプトは、エクスプロイト キット攻撃チェーンから rad9F6BA.tmp.exe (SHA1 e373b7f49e07d0c6176565357aedbe61e2d39306)としてダウンロードされたバイナリ ファイルと同じものを生成しますが、それ以外は何も実行しません。このスクリプトは、explorer.exe (1968) プロセスによってドロップされたファイルの 1 つであるファイル quis.voz を復号します。このプロセスは、最初の感染時に php ファイルもドロップしています。
これは、いくつかの Sundown EK キャンペーンのドロップを行う Zloader ですでに説明されている動作です。Terror EK は、Sundown によって使用されたエクスプロイトを使用することで知られているため、Sundown からのペイロードも使用していると考えられます。このキャンペーンの PHP スクリプトは、上記のレポート(図 G)で説明したものと同じではありませんが、類似しています。
図 G
難読化解除されたバージョンについては、図 H を参照してください(quis.voz ファイルを復号するために難読化が解除されています)。
図 H
まとめ
Talso では、エクスプロイト キット勢力が絶えず変化していることを確認しています。この市場で大きな影響力を持つツールであっても、新しいツールが現れると姿を消します。新たなツールは巧妙さと手口を絶えず向上させることにより、「顧客」争いを繰り広げています。前述のような手口を継続的に変更することで、セキュリティ ツールに対抗する能力を磨いているのです。このことは、すべてのシステムを最新状態に保つことの重要さを物語っています。多層的な防御アークテクチャを活用することは、このような脅威を検出して防御するのに役立ちます。Talos では、お客様を確実に保護できるように、進化する Terror EK の監視をこれからも続けます。個々のユーザと組織に対しては、セキュリティ パッチが利用可能になったらすぐにインストールする、知らない第三者からメッセージを受信したときには用心する、信頼性の高いオフラインのバックアップ ソリューションを確実に実施するなどの、推奨されるセキュリティ対策を実行することを強くお勧めします。これらの対策は侵害リスクを軽減できるだけでなく、攻撃を受けた場合の復旧にも役立ちます。
IOC
ネットワーク通信の要約:
図 H
サンプル:
C:\Users\<USER>\AppData\Roaming\Hele\fido.onm
MD5: c7f52f5d46474128c51d097a07068ed5
SHA1: 0994f518b405efce77fb743b899782bdf37fef55
SHA256: 5a51865eee18a520035248344f7c00a4de95a500c6356687d67e09a1e4fcdbb8
C:\Users\<USER>\AppData\Local\Temp\1wfaqsy8.exe
MD5: fa9db03e1f07e45e48f05684da255c85
SHA1: e373b7f49e07d0c6176565357aedbe61e2d39306
SHA256: 9ae356843ccbda7747e45b292fcf0c3eebbcc4a93101752a0007c9abaa79037a
C:\Users\<USER>\AppData\Roaming\Xunup\quis.voz
MD5: 134393b69f946ae8b8cf2560579209f8
SHA1: 96cbd5e76b91c611430f221613480b4480ccc6c4
SHA256: d2e9530c350ac6b421cf2ab4a70cad11565cfee67c5688d88cf559f161d199f3
C:\Users\<USER>\AppData\Roaming\Romaa\miemr.php
MD5: e20a6d41f64fb0a78598b1ff188ad92e
SHA1: 049b107574ca8500c05424d6974b42ce57c868ac
SHA256: 0664e690254622bd7a00c03fce2abe119bdebbc0cc773b68772f8fed66e5d2c6
C:\Users\<USER>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\start.lnk
MD5: 0aa9719e0b8474a88b90976a5eb3ee55
SHA1: b6f37f41594c65cad716ed486e9bc679186fdc37
SHA256: 3ec95a014dea4f47adc7715650ec17b7f60701422efbded181cb1cd154af5748
関連サンプル:
f31869dd3f48f24b72ed2040eceefbcaeb4f2b93b79e75dd952aa1d3d5b022de
URL の全文字列:
hxxp://beutifulcars222[.]website
hxxp://146[.]185[.]166[.]209/e71cac9dd645d92189c49e2b30ec627a/9477ff41b6290c91547cc8e31ad53bee
hxxp://146[.]185[.]166[.]209/9477ff41b6290c91547cc8e31ad53bee/166070/5911e2bedcb0b
hxxp://146[.]185[.]166[.]209//d/9477ff41b6290c91547cc8e31ad53bee/?q=r4&r=c3c100b92ffbb7ca95d18559c72c1aff&e=cve20146332
hxxp://146[.]185[.]166[.]209//d/9477ff41b6290c91547cc8e31ad53bee/?q=r4&r=c3c100b92ffbb7ca95d18559c72c1aff&e=cve20132551
hxxp://dogpaste[.]ru/2fwCCnphQ/2g56[.]php
hxxp://emptysand[.]ru/2fwCCnphQ/2g56[.]php
ハードコーディングされた IPS:
185.121.177.53
185.121.177.177
45.63.25.55
111.67.16.202
142.4.204.111
142.4.205.47
31.3.135.232
62.113.203.55
37.228.151.133
144.76.133.38
カバレッジ
Snort ルール:25050, 39754, 37909, 26638, 23179
オープンソース Snort サブスクライバ ルール セットをお使いであれば、Snort.org で購入可能な最新のルール パックをダウンロードすることで、システムを最新状態に維持できます。
お客様がこの脅威を検出してブロックできる別の方法を以下に記載します。
Advanced Malware Protection(AMP)は、これらの攻撃者によるマルウェアの実行の阻止に最適です。CWS や WSA の Web スキャン機能は、悪意のある Web サイトへのアクセスを阻止し、それらの攻撃に使用されるマルウェアを検出します。ネットワーク セキュリティ アプライアンス(NGFW、NGIPS、高度なセキュリティを備えた Meraki MX など)は、この脅威に関連した悪意のあるアクティビティを検出できます。AMP Threat Grid は、悪意のあるバイナリを特定し、シスコのすべてのセキュリティ製品に保護を組み込むのに役立ちます。Umbrella は、悪意のあるアクティビティに関連付けられているドメインの DNS 解決を防止します。Stealthwatch は、ネットワーク スキャン アクティビティ、ネットワーク伝搬、CnC インフラストラクチャへの接続を検出し、これらのアクティビティを関連付けて、管理者に通知します。
本稿は 2017年5月18日に Talos Group のブログに投稿された「Terror Evolved: Exploit Kit Matures」の抄訳です。