※本ブログは米国で2018年12月19日に公開された「Analysis of Smoke Loader in New Tsunami Campaign」を日本語に翻訳したものです。

 

11月8日、日本の気象庁は、同庁の警報を装った偽の迷惑メールに関して報道発表を行いました。発表によると、迷惑メールは日本語で作成されており、受信者に、地震発生後の津波の避難区域を確認するためのリンクへアクセスするよう求めていました。

 

メール内のリンクは、救命避難のための重大な情報ではなく、受信者から重要情報を窃取するマルウェアでした。このマルウェアは「Smoke Loader」という名前で、2011年以降さまざまなサイバー犯罪者が使用してきた悪名高い商用マルウェアです。本ブログでは、パロアルトネットワークスの脅威インテリジェンスチームUnit 42によるSmoke Loaderとこの気象庁を装った攻撃に関する分析について解説します。

 

Smoke Loaderは、モジュール型のローディングプログラムで、攻撃者は被害端末にインストールされるペイロードを選択できます。そのため、最終的なペイロードは、攻撃によって多岐にわたります。例えば、Unit 42は以前、スウェーデンと日本でSmoke Loaderによって配布されたRetefeバンキング型トロイの木馬についてレポートしました。また、これまでに同マルウェアによって、バックドア、ランサムウェア、仮想通貨マイナー、パスワード窃取プログラム、PoSマルウェアがインストールされたことも観測しています。

 

気象庁を装ったこの攻撃キャンペーンは、日本の不特定の標的から認証情報を窃取することを目的としていると考えられ、通常の標的型攻撃と同様の手法をとっていました。攻撃者は、偽の日本政府機関のドメインを登録し、サーバー上のマルウェアへのファイル パスを正規の機関のWebサイトのURLと類似したものにしていました。疑似餌となる迷惑メールは流暢な日本語で書かれており、広範囲には配布されませんでした。そして11月下旬には、攻撃者はAzoRultという別の商用マルウェアを使用し始めています。図1にこの攻撃の時系列を示します。

図1 攻撃の時系列

 

Smoke Loaderの分析

Smoke Loaderが初めて登場してから7年が経ちますが、作成者は、依然としてコードの更新を続けています。Malwarebytesが2016年にSmoke Loaderに関する優れた分析を発表しています。パロアルトネットワークスが確認したサンプルでは、検出または分析を回避するために、以下の技法が追加されています。

  • ジャンク ジャンプによるコードの難読化
  • サブルーチンの復号、および実行後のそれらの暗号化
  • PROPagateトリックを使用した、explorer.exeプロセスへの第2段階コードの挿入
  • 固有ID生成のアルゴリズムの変更
  • ネットワーク トラフィックおよびペイロード ファイルの暗号化

これらの技法の一部は、今年のFireEyeおよびTalosによって既に報告済みです。このブログでは、固有ID、C2通信、ペイロードに重点を置いて考察します。

固有IDの生成

この脅威は最初に、コンピュータ名、ハードコードされた静的番号(0B0D0406)、システム ドライブのボリューム シリアル番号から、侵害されたマシンの固有IDを生成します。Smoke Loaderは、この固有IDを3つの目的で使用します。

  • C2で侵害されたマシンを追跡
  • IDによってペイロードを暗号化
  • 永続化のためにランダム ファイル名を作成

以下に、固有IDの作成方法を示します。コンピュータ名が「Test_PC」でボリューム シリアル 番号が「12345678」の場合、この脅威は以下のように3つの値を組み合わせます。

"Test_PC" + "0B0D0406" + "12345678" = "Test_PC0B0D040612345678"

そして、文字列のMD5ハッシュ値を算出します。

MD5("Test_PC0B0D040612345678") = 41EE612602833345FC5BD2B98103811C

ボリューム シリアル番号をハッシュ値に足して、40文字の固有IDを生成します。

"41EE612602833345FC5BD2B98103811C" + "12345678" = "41EE612602833345FC5BD2B98103811C12345678"

次に、Smoke Loaderは、このIDの最初の8文字と最後の8文字に基づいて、2つの文字列を生成します。以下は、Pythonで書かれたアルゴリズムです。

 

Smoke Loaderは、これらの文字列をファイル名に使用します。以下のように自身をコピーします。

%APPDATA%\Microsoft\Windows\[stringA\[stringB].exe

そして、次のようなショートカット ファイルを作成して、コンピュータの起動時に脅威を実行します。

%StartUp%\[stringA].lnk

これら2つの文字列はランダムに見えます。しかし、攻撃者は侵害されたマシンに対して常に同じ2つの文字列を生成します。これは、環境の静的な値に基づいているためです。

C2通信

Smoke Loaderには、以下のハードコードされたC2アドレスが含まれています。

jma-go[.]jp/js/metrology/jma.php

最初のC2通信の概要は以下のとおりです。

  1. Smoke Loaderは、暗号化されたデータをHTTP POSTメソッドによってC2に送信します。
  2. C2サーバーは、暗号化されたデータとともにHTTP 404応答(Not Found)を返します。
  3. Smoke Loaderは、C2からプラグインを抽出し、固有IDを使用して暗号化してから、ローカル ディスクに保存します。
  4. Smoke Loaderは、暗号化されたプラグイン ファイルからペイロード モジュールを抽出し、Explorer.exeプロセスに挿入します。

図2 最初の通信

最初のPOSTデータの作成

Smoke Loaderは、C2に送信するデータを作成します。オフセット0にマーカー「E207」があり、固有IDが続きます(図3)。マーカーは、リトルエンディアン形式では「07E2」で、10進数では「2018」です。Smoke Loaderは、C2と通信するたびにこのマーカーを使用します。

図3 POSTデータ

最終的に、Smoke Loaderは、静的キー0x161A9A0Cを使用して、RC4暗号によってデータを暗号化してから、HTTP POSTメソッドでC2に送信します。

 

C2からのプラグイン

C2サーバーは、HTTP 404ステータス コードとともに、最終的なペイロードを含むプラグイン データを返します。Smoke Loaderは、このプラグインの最初のDWORD値から暗号化されたヘッダー サイズを取得し、別の静的キー0x1D17D70Aを使用して、RC4暗号で後続のバイトを復号します。図4に、復号後のプラグイン データを示します。マーカー「E207」を確認したら、「plugin_size」変数に定義されているプラグイン サイズを取得します。

図4 C2から返されるデータ

プラグイン サイズを確認したら、Smoke Loaderは、固有IDを使用して、RC4暗号でプラグインデータを暗号化し、固有IDから生成された文字列による以下のパスで保存します。ファイルはマシンごとに異なる値で暗号化されているため、プラグインが同じでも、ファイル ハッシュはコンピュータごとに常に異なります。

%APPDATA%\Microsoft\Windows\[stringA]\[stringA]

Smoke Loaderは、保存されたプラグイン データを復号します。プラグイン データには、13バイト長のヘッダーがあり、以下の値から構成されています。

 

オフセット

サイズ

0x00

DWORD

プラグイン サイズ

0x04

DWORD

プラグイン マーカー、0xD5A08DD8

0x08

DWORD

不明、プラグインIDと想定される

0x0C

BYTE

プラグイン内のモジュール数

 

表1 プラグイン ヘッダー

プラグインには、複数のモジュールが含まれていることがあります。この攻撃キャンペーンの場合、ペイロードには6個のモジュールが含まれていました。各モジュールには、サイズおよび復号用のRC4キーが含まれたヘッダーがあります。

図5 プラグイン ヘッダーおよびモジュール ヘッダー

Smoke Loaderは、指定されたキーを使用して、RC4暗号でモジュールを復号します。モジュール内のアーキテクチャ フラグ(64ビットか32ビットか)を確認後、この脅威はExplorer.exeプロセスを実行し、モジュールをプロセスに挿入します。脅威はモジュールの数だけこれを繰り返すため、侵害されたマシンには、複数のExplorer.exeプロセスが存在することになります。

ペイロード モジュール

表2に、この攻撃キャンペーンにおけるモジュールのリストを示します。2つのアーキテクチャで3種類の機能があります。

 

モジュール

アーキテクチャ

機能

1

32ビット

ブラウザおよび電子メール プログラムから、保管されている認証情報を窃取

2

64ビット

モジュール1の不完全な移植

3

32ビット

ブラウザから送信されるデータの窃取

4

64ビット

モジュール3と同じ

5

32ビット

電子メール プロトコルからログイン

情報を窃取

6

64ビット

モジュール5と同じ

 

表2 モジュール リスト

モジュールを挿入する際、Smoke Loaderは、以下の値を含む構成データをC2通信用にモジュールに渡します。各モジュールには、ローダーとまったく同じC2通信コードがあります。

  • HTTP POST用のRC4暗号キー
  • 固有ID
  • C2 URL

モジュール1

このモジュールは、以下のプログラムに保管されている認証情報を窃取することを目的としています。

  • Internet Explorer
  • Firefox
  • Chrome
  • Opera
  • Chromium
  • Yandex
  • Amigo
  • QQBrowser
  • Outlook
  • Thunderbird
  • WinSCP

モジュール2には、モジュール1のコードの一部が含まれていますが、まだ開発フェーズにあると思われます。

モジュール3およびモジュール4

これらのモジュールはAPIをフックし、以下のブラウザから送信されるすべてのデータを窃取します。

  • Firefox
  • Internet Explorer
  • Edge
  • Chrome
  • Opera

モジュール5およびモジュール6

これらのモジュールは、APIをフックし、以下のプロトコルで、ユーザーID、パスワード、関連するリモートFTPおよび電子メール サーバー アドレスを窃取します。

  • FTP (ポート21)
  • SMTP (ポート25、587、2525)
  • POP3 (ポート110)
  • IMAP (ポート143)

 

インフラストラクチャおよびその他のツール

ある人物によって、2018年10月30日に、jma-go[.]jpというドメイン名が登録されました。このドメインには、.co.jpまたは.ne.jpなどの2階層のドメイン名がありません。これは、JPNICで汎用JPドメイン名と定義されています。定義によれば、JPNICは、汎用JPドメイン名の登録要件を以下のように説明しています。

「汎用JPドメイン名制度においては、当センターが『ローカルプレゼンス』と呼ぶ、日本とのつながりまたは関係があることを登録要件としました。」

このドメインのWhois情報によれば、このドメインはロシアに住所があり、Gmailアドレスを使用する個人によって所有されていました。登録者は、登録後に住所を変更したか、あるいは「日本とのつながりや関係」を証明したのだと思われます。

また、同じ人物が同じGmailアドレスで別の8つのドメインを登録していました。  これらのドメインのうち3つが、2018年2月から3月にかけて、Androidバンキング型トロイの木馬/パスワード窃取マルウェア、Marcherに関連した攻撃で使用されたことを弊社は確認しています。しかし、このモバイル マルウェアの標的はまだ特定されていません。以下にサンプルのリストを示します。

 

ドメイン

Marcher SHA256

Sungmap[.]at

254925e47fbfff4786eada6cbcb0805ed79d9bd417955c016236143eb2ecd827

Mountainhigh[.]at

75edaae605622e056a40c2d8a16b86654d7ddc772f12c4fc64292a32a96fde7a

Racemodel[.]at

55ae2b00234674d82dcc401a0daa97e7b3921057a07970347815d9c50dddbda8

表3 ドメインおよびMarcherハッシュ

 

11月25日に、Unit 42は、以前にSmoke Loaderを提供していたURLから、別のマルウェアAzoRultが提供されたことを確認しました。AzoRultもまた、認証情報、cookie、仮想通貨を窃取する商用マルウェアです。このAzoRultは、以下のC2アドレスにアクセスします。これは、Smoke Loaderと同じC2サーバー上の別のパスです。

www.jma-go[.]jp/java/java9356/index.php

このブログの執筆時点で、3つのAzoRultサンプルが同じC2を使用使用していることが観測しています。  攻撃者は、これらのファイルを以下のURLから配布しています。

  • thunderbolt-price[.]com/Art-and-Jakes/Coupon.scr
  • bite-me.wz[.]cz/1.exe

thunderbolt-price[.]comは、日本で2012年に登録されており、その登録情報はPrivacy Protection Serviceによって保護されています。このドメインのWebサイトのトップページは、本日時点でコンテンツをホストしていません。Google検索によれば、このドメインは、2014年から2015年にかけてショッピング関連のページに出現しています。興味深いことに、これらのWebページは低品質で、大半がハッキングされたWebサーバーでホストされています。検索エンジン最適化(SEO)対策として、検索結果のページ ランキングでスコアを稼ぐことを目的に、悪意のあるバックリンクのために作成されたと考えられます。図6は、婦人靴ショッピング用のWebページで、トルコの建築・建材会社のWebサイトでホストされていた例です。

図6 ハッキングされたサイトのSEOバックリンクの例

 

このドメインは、以前はショッピングまたはアフィリエイト サイト用に使用されていたと思われますが、現在はこの目的では使用されていません。攻撃者は、数年間使用されていなかったこのWebサイトを侵害し、現在AzoRultを配布するために使用しているものと想定されます。しかし、攻撃者とthunderbolt-price[.]comの現在の所有者とのつながりはわかっていません。

表4に、マルウェアのインフラストラクチャ変更とタイムスタンプの時系列を示します。

 

日付

活動

2018年10月30日

jma-go[.]jpドメインを登録

2018年11月5日

Smoke Loader

3d75eabb8460450a49e2fb68053d9f591efe5aefd379205e5cc3af574bb9f415

2018年11月6日

Smoke Loader

8a1aab36c3940e4dd83f489432fa710fba582e254c3a52459c52826d6a822f2d

0db3fd1394b15b98f4e112102cdec6cc569062cdb199b66c5838c54cbc286277

be3817b9f14df3e0af82ae47b0904ac38d022e2b2d7bb7f8f9800b534b60183c

2018年11月8日

Smoke Loader

27aa9cdf60f1fbff84ede0d77bd49677ec346af050ffd90a43b8dcd528c9633b

2018年11月9日

Smoke Loader

42fdaffdbacfdf85945bd0e8bfaadb765dde622a0a7268f8aa70cd18c91a0e85

2018年11月15日

Smoke Loader

fb3def9c23ba81f85aae0f563f4156ba9453c2e928728283de4abdfb5b5f426f

2018年11月24日

AzoRult

70900b5777ea48f4c635f78b597605e9bdbbee469b3052f1bd0088a1d18f85d3

2018年11月25日

Smoke Loader

1ce72ec2f2fe6139eb6bb35b8a4fb40aca2d90bc19872d6517a6ebb66b6b139

2018年11月27日

AzoRult

7337143e5fb7ecbdf1911e248d73c930a81100206e8813ad3a90d4dd69ee53c7

2018年11月30日

jma-go[.]jpに関連したIPアドレスを47.74.255[.]111から149.129.135[.]53に変更

2018年12月3日

AzoRult7

48c94bfdb94b322c876114fcf55a6043f1cd612766e8af1635218a747f45fb9

 

表4 時系列

結論

今日、商用マルウェアはサイバー犯罪において広く使用されています。マルウェアの作成者は、機能の拡大とより多くの顧客の獲得を目的として、コードを更新し続けています。本ブログで説明したように、Smoke Loaderはネットワーク トラフィックとファイルをさまざまなキーで暗号化して検出を回避します。最近Unit 42はAzoRultの新しい亜種に関するレポートを公開しており、そこで、セキュリティ製品による検出を回避するための新しい高度な難読化技法を紹介しています。今回の攻撃キャンペーンのような攻撃者は、オンラインの脅威関連のマーケットプレイスから、自分たちの目的に沿ったマルウェアを探し出しています。

パロアルトネットワークのお客様は、この脅威から以下に示す方法で保護されています。

  • 脅威インテリジェンスサービスAutoFocusのお客様は、これらのサンプルをSmoke LoaderAzoRultMarcherで追跡できます。
  • クラウド脅威解析WildFireは、このレポートで言及したすべてのファイルを、悪意があると判断して検出します。
  • アドバンスドエンドポイントプロテクションTrapsは、本記事で説明されているすべてのファイルをブロックします。

IOC

Smoke Loaderのサンプル

3d75eabb8460450a49e2fb68053d9f591efe5aefd379205e5cc3af574bb9f415 8a1aab36c3940e4dd83f489432fa710fba582e254c3a52459c52826d6a822f2d 0db3fd1394b15b98f4e112102cdec6cc569062cdb199b66c5838c54cbc286277 be3817b9f14df3e0af82ae47b0904ac38d022e2b2d7bb7f8f9800b534b60183c 27aa9cdf60f1fbff84ede0d77bd49677ec346af050ffd90a43b8dcd528c9633b 42fdaffdbacfdf85945bd0e8bfaadb765dde622a0a7268f8aa70cd18c91a0e85 fb3def9c23ba81f85aae0f563f4156ba9453c2e928728283de4abdfb5b5f426f a1ce72ec2f2fe6139eb6bb35b8a4fb40aca2d90bc19872d6517a6ebb66b6b139

AzoRultのサンプル

70900b5777ea48f4c635f78b597605e9bdbbee469b3052f1bd0088a1d18f85d3 7337143e5fb7ecbdf1911e248d73c930a81100206e8813ad3a90d4dd69ee53c7 748c94bfdb94b322c876114fcf55a6043f1cd612766e8af1635218a747f45fb9

Marcherのサンプル

55ae2b00234674d82dcc401a0daa97e7b3921057a07970347815d9c50dddbda8

75edaae605622e056a40c2d8a16b86654d7ddc772f12c4fc64292a32a96fde7a

254925e47fbfff4786eada6cbcb0805ed79d9bd417955c016236143eb2ecd827

インフラストラクチャ

http://jma-go[.]jp/js/metrology/jma.php
http://www.jma-go[.]jp/java/java9356/index.php
http://jma-go[.]jp/jma/tsunami/tsunami_regions.scr
http://thunderbolt-price[.]com/Art-and-Jakes/Coupon.scr
http://bite-me.wz[.]cz/1.exe
https://racemodel[.]at
https://mountainhigh[.]at
https://sungmap[.]at

付録

.bitsドメイン サポート

Smoke Loaderは、.bitトップ レベル ドメイン(TLD)をサポートしています。この脅威の作成者は、.bit ドメインを解決するために、以下のハードコードされたDNSサーバーを組み込んでいます。Tsunamiキャンペーンでは.bitドメインを確認できませんでしたが、この脅威による別の攻撃に備えてIPアドレスをリストしました。

192.71.245[.]208
58.251.121[.]110
101.226.79[.]205
188.165.200[.]156
185.121.177[.]177
185.121.177[.]53
144.76.133[.]38
169.239.202[.]202
5.135.183[.]146
193.183.98[.]66
51.254.25[.]115
51.255.48[.]78


 

パロアルトネットワークス管理者ガイド日本語版

このガイドで、パロアルトネットワークスのファイアウォールのWeb管理画面の使用方法を説明します。対象は設置、運用管理、メンテナンスを行うシステム管理者向けです。 ※このページで提供する管理者ガイドが最新版でない可能性があります。最新版に関しては、製品をご購入された販売代理店にご相談ください。  
  • 5
  • 18188

PA-3200 Series スペックシート

パロアルトネットワークス® PA-3200 Series の次世代ファイアウォールは、PA-3260、PA-3250、およびPA-3220 で構成されています。これらのモデルはすべて高速の インターネット ゲートウェイでの導入を目的としたものです。PA-3200 Seriesはネットワーキング、セキュリティ、脅威防御および管理のための専用処理およびメモリ を使用して、暗号化トラフィックを含むすべてのトラフィックを保護します。
  • 0
  • 4337

PA-800 Series

主なセキュリティ機能: すべてのアプリケーションをすべてのポートで常時識別 • 使用されているポートや暗号化(SSLまたはSSH)、セキュリティの回避技術に関わらず、アプリケーションを識別します。 • 許可、拒否、スケジュール、スキャン、帯域制御の適用などのセキュリティ ポリシー決定の要素として、ポートではなくアプリケーションを使用します。 • 不明なアプリケーションを、ポリシー制御、脅威のフォレンジック、またはApp-ID™アプリケーション識別テクノロジの開発が行えるよう分類します。
  • 1
  • 11867

PA-3000 Series スペックシート

PA-3000シリーズの主な機能、パフォーマンスと容量、および仕様。
  • 1
  • 9542

PA-5200 Series

パロアルトネットワークス® PA-5200 Seriesの次世代ファイアウォール アプライアンスは、PA-5260、PA-5250、PA-5220から構成されており、高速データセンター、インターネット ゲートウェイ、およびサービス プロバイダでの導入に適しています。PA-5200シリーズは、ネットワーキング、セキュリティ、脅威からの防御と管理の重要な機能領域専用の処理機能とメモリを使用して、最大80Gbpsのスループットを提供します。
  • 0
  • 6156