GoogleでCrack、Keygen、シリアルナンバー等のキーワードを検索すると上部に表示されるフィッシングページを通して、暗号通貨採掘のためのマイナー(Miner)マルウェアが出回っている。関連資料は昨年12月頃に Avira でも公開されており、フィッシングページの場合は韓国語のページも提供されているため、韓国国内のユーザーも相当数が感染したことが確認された。
[ https://www.avira.com/en/blog/coinloader-a-sophisticated-malware-loader-campaign ]
Google 検索を通して感染する全体的なフローは以下の [図1] の通りである。

フィッシングページでマルウェアが含まれている圧縮ファイル(*.ZIP)をダウンロードし、内部の実行ファイル(*.EXE)を実行する場合、上記の過程を経て最終的に「TiWorker.exe」というプロセスによりコインマイニング(暗号通貨の採掘)が行われる。「TiWorker.exe」というファイルは正常な Windows システムファイルであり、Windows ソフトウェア、ハードウェア、ドライバのアップデートファイルである。マルウェアの製作者はこれらの不正な行為を隠蔽するために正常な Windows システムファイルを利用したものであり、DLL ハイジャック(Hijacking)手法によって「TiWorker.exe」プロセスの不正な「Riched32.dll」によりマイニングが実行される構造である。すなわち、一般ユーザーだけでなく、セキュリティプログラムでも Miner マルウェアの認知および検知を難しくする。
実際の動作方式においては複雑なプロセスを経るため、段階別により詳細な内容を記述していく。
1.Keygen、Crack、シリアルナンバー等のキーワード検索(Googleページ)
Google検索ページで Keygen、Crack、シリアルナンバーのようなプログラムのダウンロードを目的として英語または韓国語でキーワードを検索すると、検索結果の上部にマルウェアをダウンロードする Web ページが確認できる。この Web ページはタイトルだけ見ると Keygen または Crack のような関連プログラムをダウンロードするサイトに見えるが、実際にダウンロードを行うと関連プログラムの代わりにマルウェアがダウンロードされる。(上記の2つの例はどちらも不正なページである)
上記の検索結果を確認し、当該 Web ページをクリックした場合、次のステップとして以下の [図2] のように韓国語で記載されたページが確認できる。

しかし、直後に次のようなダウンロードページを表示する。以下のスクリーンショットだけを見ると「MediaFire」のダウンロードサイトに見えるが、実際には URL は前と同じである。すなわち、実際に「MediaFire」のサイトにリダイレクト(Redirect)されるのではなく、偽の「MediaFire」を表示することでダウンロードを誘導するのである。
ユーザーがダウンロードのために「DOWNLOAD」ボタンをクリックした場合、約10秒後に実際の「DOWNLOAD」ボタンを確認でき、このボタンまでクリックしてしまうと ZIP 形式の圧縮ファイルがダウンロードされる。

2.ダウンロードされるZIPファイル
ダウンロードされる ZIP ファイルは次の [図4] のように「[ランダムな名前]_SETUP.zip」形式を持っている。 [図5] のようにZIPファイルの内部を見ると、圧縮ファイルと同じ名前のEXEファイルおよびDLLファイルをいくつか確認できる。


ZIP ファイルの内部に1個存在するEXE実行ファイル(Q7UG74G7_SETUP.exe)は正常なプログラムであり、CrystalBit社のAnyToISOというプログラムである。このプログラムを実行した場合、同一パスにある「msimg32.dll」を実行するが、このDLLファイルが実際に不正な機能を有する Miner マルウェアである。すなわち、不正な行為を実行する主体は「msimg32.dll」であるが、プロセス単位で見た場合、正常なプログラムであるAnyToISO(=Q7UG74G7_SETUP.exe)により不正な行為が実行されるのである。
このような方式を DLL ハイジャック(DLL Hijacking)と言うが、これは検知を回避するために、不正な行為が正常なプロセスによって実行されるようにする方式である。DLL ハイジャック方式は、後の段階でも続けて登場する。
マルウェアが実行されると、以下のような様々な行為を実行する。
a.Windows Defenderの無効化
以下のコマンドラインを実行し、C:L\WindowsパスをWindows Defenderの例外パスに追加 > wmic.exe /Namespace:\\root\Microsoft\Windows\Defender class MSFT_MpPreference call Add ExclusionPath=C:\Windows 以下のレジストリを修正し、リアルタイム監視等の機能を無効化 HKLM\SOFTWARE\Policies\Microsoft\Windows Defender:DisableAntiSpyware=1 HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection:DisableOnAccessProtection=1 HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection:DisableRealtimeMonitoring=1 HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection:DisableScanOnRealtimeEnable=1 |
b.マイニングのためのPC電源設定
次のコマンドによって「ハードディスクの電源を切る」、「節電モード」、「待機モード」の設定をすべて無効化する。
> powercfg.exe -change -disk-timeout-ac 0 > powercfg.exe -change -disk-timeout-dc 0 > powercfg.exe -change -hibernate-timeout-ac 0 > powercfg.exe -change -hibernate-timeout-dc 0 > powercfg.exe -change -standby-timeout-ac 0 > powercfg.exe -change -standby-timeout-dc 0 |
c.フォルダプロパティウィンドウのセキュリティタブを除去
このマルウェアは、以降生成したファイルに対して所有者を変更し、システム属性および隠し属性を付与する。関連属性を変更、および解除するために当該ファイルのプロパティを確認しても、以下のレジストリ値の追加によって、セキュリティタブを確認できなくなる。
以下のレジストリを修正して、フォルダプロパティウィンドウのセキュリティタブを除去 HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer:NoSecurityTab=1 |
3.Apple プログラムを利用した DLL ハイジャック
最後に、以下のようなパスに追加ファイルを生成する。参考に、フォーマットは同じだが以下のように具体的なパスは可変的である。
C:\Windows\SysWow64\speech\engines\q-1-73-90\ C:\Windows\SysWow64\speech\engines\q-1-41-80\ … C:\Windows\System32\speech\engines\q-1-56-92\ |
当該パスに生成されるファイルは、以下の [図6] の通りである。参考に、以下における実行ファイルはFD_1.4.82.81.exeだが、FD_1.3.58.74.exe、FD_1.4.43.97.exe等、類似するフォーマットのランダムな名前を持つ場合がある。

最後に、生成したFD_1.4.82.81.exeファイルにタスクスケジューラを登録する。生成されたタスクスケジューラファイルを確認すると、15分間隔でFD_1.4.82.81.exeを実行することが確認できる。

15分間隔で実行されるプログラム、すなわちFD_1.4.82.81.exeは、上記の AnyToISO と同じく正常なプログラムである。具体的には、Apple 社の APSDaemon.exe プログラムとして、実行すると不正な「AppleVersions.dll」をロードする機能が存在する。これを悪用して、同じパスに不正な「AppleVersions.dll」を生成し、タスクスケジューラに登録して15分周期で実行させる。(AppleVersions.dllはdata.dllをロード)
4.コインマイニング
FD_1.4.82.81.exeは、実行時に C&C サーバーと接続を試み、以降、以下のパスに CoinMiner を生成する。参考に、フォーマットは同じだが以下のように具体的なパスは可変的である。
C:\Windows\SysWow64\hr-HR\s-1-5-66\ C:\Windows\SysWow64\pt-BR\s-1-4-70\ … C:\Windows\System32\driverstore\s-1-4-89\ |
現在確認されている C&C サーバーのアドレスは、以下の通りである。
http://ams-update[.]info http://ams-updatea[.]info http://ams-updateb[.]info http://ams-updatec[.]info http://ams-updated[.]info |
このようにして生成される CoinMiner も同じく DLL ハイジャック手法によって実行される。

生成されるファイルのうち、TiWorker.exe はその名前とは異なり、実際には Sysinternals 社の NotMyFault.exe という正常なプログラムである。このプログラムも、同じパスに「Riched32.dll」が存在する場合、実行時にこの DLL をロードする。FD_1.4.82.81.exeは特定の引数を渡してTiWorker.exeを実行する。このようにして実行されたTiWorker.exeは、実行されるときに「Riched32.dll」をロードして、この「Riched32.dll」は仮想通貨モネロ(Monero)に対する CoinMiner として動作する。


TiWorker.exeは実行中にProcess Explorer、Process Hackerのようなモニタリングツールをチェックし、これらのツールを実行している場合は終了させる。これにより、CPU の占有率が高いプロセスを確認するためにモニタリングツールを使用していてもすぐに終了するため、ユーザーの立場では原因を把握するのが困難な場合がある。
「AppleVersions.dll」が生成するマルウェアとしては、CoinMiner以外にも別の種類のマルウェアも存在する。このファイルは SFX 形式の実行ファイルであって、内部には NirSoft の「AdvancedRun.exe」および設定ファイルが存在する。「AdvancedRun.exe」を実行すると、参照する設定ファイルには以下のようにボリュームシャドウコピーを削除するコマンドラインが存在する。

すなわち、このマルウェアが実行されると正常なプログラム「AdvancedRun.exe」と設定ファイルをドロップして実行することで、また別の正常なプログラムを経て間接的にボリュームシャドウコピーを削除する。一般的にボリュームシャドウコピーを削除することはランサムウェアがよく使用する機能であり、コインマイニングとは関連がない。それにもかかわらずこのような機能を実行するということは、以降、CoinMiner 以外にも別のマルウェアがインストールされる可能性も存在するということを意味している。
- cmd.exe /C ping -n 70 127.0.0.1 && vssadmin.exe delete shadows /all /quiet
このようにGoogle検索を通してCrack、Keygen等のプログラムダウンロードを試みると、実際には CoinMiner マルウェアがインストールされることがある。また、海外だけでなく韓国国内のユーザーも対象とする、すなわちハングルでの検索結果によってもダウンロードが可能であることから、注意が必要である。
[ファイルの診断]
- Trojan/Win32.Coinloader.R341612
- Trojan/Win32.Coinloader.R341624
- Trojan/Win64.Coinloader.C4139545
[行為の診断]
– Malware/MDP.Behavior.M3119
– Malware/MDP.Remove.M413
Categories:マルウェアの情報