Japan Computer Emergency
Response Team Coordination
CenterJapan Security Analyst Conference 2018

RIGエクスプロイトキットの調査
NTTセキュリティ・ジャパン株式会社
幾世 知範

電子署名者 : Japan Computer Emergency Response Team Coordination
Center
DN : c=JP, st=Tokyo, l=Chiyoda-ku, email=office@jpcert.or.jp, o=Japan
Computer Emergency Response Team Coordination Center, cn=Japan
Computer Emergency Response Team Coordination Center
日付 : 2018.01.17 09:58:41 +09'00'

自己紹介• SOCのアナリスト‒24/365体制での監視・分析‒ホワイトペーパーの執筆‐ RIGエクスプロイトキットの調査‐ 北朝鮮関連サイトを踏み台とした水飲み場型攻撃の調査‐ マルウェアURSNIFの解析

2© 2017 NTT Security

RIG EKを用いた攻撃が多発（していた）• セキュリティベンダーや警察が注意喚起や対策を実施[1][2]3© 2017 NTT Security

SOCでの観測状況• RIG EK（RIG 4.0）を用いた攻撃は2016年9月から増加‒現在はドライブバイダウンロード攻撃自体が下火

4

通知したインシデントにおけるエクスプロイトキットの内訳（2016年4月～2017年3月）© 2017 NTT Security

SOCアナリストの調査観点
調査目的

調査項目の例
ドメイン/IPアドレス
攻撃検知
URLパターン
攻撃コードの特徴
攻撃受けた場合の 悪用される脆弱性影響把握
感染するマルウェア
全体像の把握背後関係※下線付きの項目について調査方法を紹介

5© 2017 NTT Security

目次• エクスプロイトキットの概要• RIGエクスプロイトキットの調査方法‒攻撃サイトドメイン/IPアドレスの収集‒悪用される脆弱性の確認‒背後関係の調査

6© 2017 NTT Securityエクスプロイトキット（EK : Exploit Kit）
• パッケージ化された攻撃用コード群‒ 本プレゼンではドライブバイダウンロード攻撃に利用されるものを指すサーバプログラム
7© 2017 NTT Security

攻撃コード（脆弱性を悪用）EKの販売形態• サービス（主流）‒利用者にコントロールパネルを提供‐ 統計情報閲覧やマルウェア登録が可能‒脆弱性を悪用してマルウェアを配布

コントロールパネルの例‒利用期間に応じた価格設定• プログラムコード

価格の提示例
8© 2017 NTT Security

EKへの誘導• いわゆるキャンペーン
‒EI Test‒Seamless‒Fobos‒など• トラフィックという名称で売買‒誘導回数/対象に応じた価格設定
9© 2017 NTT Security

EKを用いた攻撃の役割分担
トラフィック販売者

アクセス改ざんサイト
転送
ユーザ端末

10

© 2017 NTT Security

攻撃利用者(攻撃依頼者)

EK販売者

使用料
攻撃サイト

目次
• エクスプロイトキットの概要• RIGエクスプロイトキットの調査方法‒攻撃サイトドメイン/IPアドレスの収集‒悪用される脆弱性の確認‒背後関係の調査

11© 2017 NTT Security

攻撃サイトドメイン/IPアドレスの収集方法• OSINT• 実ネットワークの監視‒IDS/IPS/Sandbox• ハニーポット‒Webクライアント型：Web空間を巡回‒Webサーバ型：改ざん内容（誘導先）の監視• EKのサーバ側に実装された機能の利用
12© 2017 NTT Security

RIG 2.0のサーバ側機能[3][4]• 登録されたマルウェアを配信• 攻撃サイトの一覧の管理（生存確認含む）
マルウェア登録
統計情報閲覧

誘導先の取得改ざんサイト

生存確認

管理サーバ
マルウェア取得

攻撃サイト 攻撃コードと（Proxyサーバ） マルウェアの取得
13© 2017 NTT Security

VDSサーバ

RIG利用者

RIG 4.0のサーバ側機能（1）• RIG 2.0と同様にマルウェアを管理‒オープンディレクトリになっていたことが知られている

uploadディレクトリのコンテンツへの言及

管理用サーバ上のuploadディレクトリ
14© 2017 NTT Security

RIG 4.0のサーバ側機能（2）• 投影のみ15© 2017 NTT Security

観測結果の比較• 生存確認機能は他の方法で観測したドメインを包含
実ネットワーク2017/02/07
20:30
2017/02/07
20:40
2017/02/07
20:50
2017/02/07
21:00
16

© 2017 NTT Security

クローラ

サーバの生存確認機能

indianoshop[.]tk
one.jakesflowers[.]com
indianoshop[.]tk
one.jakesflowers[.]com one.jakesflowers[.]com
one.jakesflowers[.]com
indianoshop[.]tk
trend.padrecam[.]com
trend.padrecam[.]com
indianoshop[.]tk
trend.padrecam[.]com
trend.padrecam[.]com-one.jakesflowers[.]com

ドメイン/IPアドレスの傾向（2017年1月～3月）• 1か月あたり約700ドメインを利用• ドメイン自体よりも紐づくIPアドレスの利用期間が長い

17

利用期間の累積グラフ（2017/1 ～ 2017/3に収集したデータ）© 2017 NTT Security

ドメイン/IPアドレスの傾向（2017年6月～）• ドメイン指定からIPアドレス直指定に変化
RIG EKの停止期間

5月末から傾向が変化

攻撃サイト指定方法の割合
18© 2017 NTT Security

RIG EK以外のサーバ側機能（Eris EK）• 攻撃サイトと思しきURLとコンテンツを管理‒/rotator (controllers/Flow.php)‒/landing (controllers/landing.php)<head><title>5907bdf8490a2</title><script>window.onload = function() {eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.
...
<form id="frm" name="frm" action="http://178.62.90[.]157//177872/5907bdf84
a158" method="POST"><input type="text" value="" name="A5907b" hidden stylelandingのレスポンス（ブラウザのプラグイン確認）

サーバ側の機能を利用した調査は他のEKにおいても効果有
19© 2017 NTT Security

目次• エクスプロイトキットの概要• RIGエクスプロイトキットの調査方法‒攻撃サイトドメイン/IPアドレスの収集‒悪用される脆弱性の確認‒背後関係の調査

20© 2017 NTT Security

悪用される脆弱性の確認手順
1. 攻撃コードの取得‒実ネットワークやハニーポット

2. 攻撃コードの可読性の向上‒JavaScriptコードの難読化解除 など

3. 悪用される脆弱性の特定

21a.

デバッガ、逆アセンブラを利用した解析b.

過去の攻撃コードとの類似性を確認© 2017 NTT Security

攻撃コードの流用• EK作成者は既存の攻撃コードを流用して開発コストを削減‒セキュリティ研究者の成果[5]‒他のEKの攻撃コード[6]22© 2017 NTT Security

RIG EKにおける攻撃コードの流用• Angler EKのコードを改変して利用していることを確認‒部分的に書き換えて利用しているため使用しないコードが含まれる
for (f = 0;f < a.length;f += 8){c[0] = Il1Iwa(a.substring(f, f + 4));c[1] = Il1Iwa(a.substring(f + 4, f + 8));g = c;for (var h = g[0], k = g[1], l = 84941944608;0 != l;){k -= (h << 4 ^ h >>> 5) + h ^ l + d[l >>> 11 & 3],
l -= 2654435769, h -= (k << 4 ^ k >>> 5) + k ^ l + d[l & 3];}g[0] = h;g[1] = k;e += Il1Ixa(c[0]) + Il1Ixa(c[1]);}RIG EKの攻撃コードに残るXTEAの実装（RIG EKでは未使用）
23© 2017 NTT Security

RIG EKが悪用する脆弱性の特定• 現状では文字列とコード構造の特徴から特定可能
try{
gm.dashstyle.array.length=-1;}catch(a){CVE-2013-2551[7]24Il1I4.prototype.yc = function(a){if (!a.ma(!1)){throw new Error(JSON);}a.kb(!1);a.ib(!1);
JSON[“stringify”](this.Pc, this.uc);
a.ob(!1);
CollectGarbage();};
CVE-2015-2419[8]© 2017 NTT Security

VBScript
Function SmuggleFag
aw.ZeroineL()
Dim i
For i = 0 To k3y(i) = Mid(x, 1, k2*12)
Next
End Function
JavaScript
var o;o = { "valueOf": function (){SmuggleFag();
return 1;}};
setTimeout(function(){ProtectMe(o);}, 50);
CVE-2016-0189[9]目次• エクスプロイトキットの概要• RIGエクスプロイトキットの調査方法‒攻撃サイトドメイン/IPアドレスの収集‒悪用される脆弱性の確認‒背後関係の調査

25© 2017 NTT Security

EK売買の大まかな流れ
1. 販売者：特徴や価格、連絡先を書いたスレッドを作成

2. 利用者：掲示板に記載の連絡先にコンタクトして購入‒XMPPクライアントやSkype, フォーラムのDMなどを利用

3. 販売者：EKの設定を投入

26© 2017 NTT Security

背後関係の調査方法• サーバ側のデータとソースコードを読む‒RIG 2.0のようにサーバのダンプが公開された場合にのみ実施可能• EK販売者から情報を収集‒公開されている会話ログの確認‐ セキュリティ研究者が調査結果を公開‐ EKの購入者がはらいせに公開‒直接コンタクト‐ XMPPやSkypeなどのメッセンジャーを利用
27© 2017 NTT Security

公開されている会話ログの例• 販売形態や価格、購入目的などを確認可能‒有効性を示すため統計情報を開示している場合有統計情報を閲覧できるURL
user: you will give me a link to panel ?
seller: http://riger4[.]com/public_stats.php?pkey=db19d0d4dc0b070e915bea
92aab7b22cseller: your file is working good? you tested it ?
ランサムウェア配布が目的
user: hmm actually didn't test it. one min let me test
user: first time I use this new crpyting service, need to be sure会話ログの例（一部編集）
28© 2017 NTT Security

会話ログの検索• フォーラムの検索機能や検索エンジンを使用• 会話に出現しやすいワードを検索‒公開統計情報のURL‐ RIG EKの場合はpublic_stats.php‒コントロールパネルのドメイン名‐ RIG 4.0の場合はrigek[.]com, rigpriv[.]com

‒など

29

© 2017 NTT Security

公開されている会話ログの例（RIG 4.0）
• EK利用者がトラフィックを購入 → 従来と同じ役割分担
traffic user : start soon?
traffic seller: now bro
traffic user : k
traffic user : still nothing
traffic seller: now go traffic
traffic user : i didnt got anything
traffic user : http://rigpriv[.]com/public_stats.php?pkey=ec36f40723a6d142c0b4a87410df058e

会話ログの抜粋（一部編集）
30© 2017 NTT Security

【参考】RIG 4.0の公開統計情報• アクセス元
‒OS
‒ブラウザ
‒国

• 悪用する脆弱性

悪用を試みた脆弱性• 攻撃成功率• 設置ファイル
配布対象マルウェア
31© 2017 NTT Security

RIG EKの販売者へのコンタクト• 連絡先の掲載場所‒コントロールパネルのログインページ• コンタクト方法‒XMPPクライアント• 質問事項‒価格帯‒悪用する脆弱性‒攻撃のため用意するもの（本命）32© 2017 NTT Security

ログインページ販売者からの情報収集（価格帯）• 1週間 700ドル、1カ月 1,700ドル

33© 2017 NTT Security

販売者からの情報収集（悪用する脆弱性）• 回答得られず‒public_stats.phpの提示も無し

34© 2017 NTT Security

販売者からの情報収集（用意するもの）• RIG EKとトラフィックがあればよい‒他のEKと同じ役割分担35© 2017 NTT Security

EKを用いた攻撃の役割分担（再掲）
トラフィック販売者

アクセス改ざんサイト
転送ユーザ端末36© 2017 NTT Security

攻撃

攻撃依頼者
（利用者）

EK販売者

使用料攻撃サイト

まとめ• RIG EKは現在も利用されているEK• RIG EKに関する調査方法を共有‒管理サーバの機能を用いたドメイン/IPアドレスの収集‒文字列および構造の特徴に基づいた悪用される脆弱性の特定‒販売者からの情報収集による背後関係の調査• 多角的な調査により検知精度と分析品質の向上が可能

37© 2017 NTT Security

ホワイトペーパー• 下記URLにて公開しています
https://www.nttsecurity.com/ja-jp/Resources38© 2017 NTT Security

参考文献[1] Security Next, "エクスプロイトキット「RIG」が活発 - 国内サイト経由でランサム誘導", http://www.security-next.com/074841[2] Security Next, "「RIG EK」による感染被害が急増 - 警察が約300の踏み台サイトに指導", http://www.security-next.com/078077[3] Trustwave, "RIG Exploit Kit – Diving Deeper into the Infrastructure",https://www.trustwave.com/Resources/SpiderLabs-Blog/RIG-Exploit-Kit-%E2%80%93-Diving-Deeper-into-the-Infrastructure/[4] ytif, "A repository of LIVE malwares for your own joy and pleasure",https://github.com/ytisf/theZoo/tree/master/malwares/Source/Original/ExploitKit.RIG[5] The Register, "World's worst exploit kit weaponises white hats' proof of concept code",
https://www.theregister.co.uk/2016/07/18/thanks_worlds_worst_exploit_kit_hoovers_up_white_hat_ie_exploit/[6] The Register, "Sundown exploit kit authors champions of copy-paste hacking",
https://www.theregister.co.uk/2016/09/05/sundown_exploit_kit_authors_champions_of_copypaste_hacking/[7] VUPEN, “Advanced Exploitation of Internet Explorer 10 / Windows 8 Ov erflow (Pwn2Own 2013)”,
http://www.vupen.com/blog/20130522.Advan ced_Exploitation_of_IE10_Windows8_Pwn2Own_2013.php[8] FireEye, "CVE-2015-2419 – Internet Explorer Double-Free in Angler EK",
htps://www.fireeye.com/blog/threat-research/2015/08/cve-2015-2419_inte.html[9] Theori, “PATCH ANALYSIS OF CVE-2016-0189”, http://theori.io/research/cve-2016-0189

39© 2017 NTT Security