This post is also available in: English (英語)
概要
Unit 42は最近PoshCoderとしても知られているPowerWareの新型亜種を発見しました。PowerWareは普及度の高いLockyランサムウェア ファミリを模倣するものです。PoshCoderは2014年以降PowerShellを使ってファイルを暗号化しており、PowerWareと名付けられた新型亜種は2016年3月に報告されました。このマルウェアは被害者のファイルを暗号化してBitcoin暗号通貨による身代金を要求することに関わっています。
暗号化されたファイルに対して".locky"というファイル拡張子を使うほかに、このPowerWare亜種はLockyマルウェア ファミリと同じ身代金要求文も使っています。PowerWareが別のマルウェア ファミリを模倣するのはこれが初めてのことではなく、以前のバージョンではCryptoWallの身代金要求文を使っていたことが分かっています。ランサムウェアの別のインスタンスもTeslaCryptのような他のランサムウェア ファミリからコードを借用していることが分かっています。
Unit 42は被害者のマシン上にある.lockyファイルを再帰的に探し出し元の状態に復元するPythonスクリプトを作成しました。この暗号解除プログラムはここにあります。
分析
PowerWareの最初の分析でこのサンプルが.NET実行形式ファイルであることが分かりました。そこでdnSpyという名前の.NET逆コンパイル プログラムを使ってこのマルウェアを慎重に調査したところ、Quest Softwareの"PowerGUI"という単語が目にとまりました。これにより、このマルウェアがPowerShellスクリプトをMicrosoftの実行形式ファイルに変換するPowerShellスクリプト エディターを使っていることが直ちに分かりました。
![図1 逆コンパイルされたマルウェア亜種の中で参照されているPowerGUI](https://www.paloaltonetworks.jp/content/dam/paloaltonetworks-com/ja_JP/Images/blog/PowerShell-1.png)
![図2 逆コンパイルされたMain()関数](https://www.paloaltonetworks.jp/content/dam/paloaltonetworks-com/ja_JP/Images/blog/PowerShell-2.png)
.NET実行形式ファイルをさらに詳しく調べ始めると、この実行形式ファイルがfixed.ps1という名前のPowerShellスクリプトを展開するのにScriptRunner.dllを使っていることがすぐに分かりました。展開されたファイルは次の場所にドロップされていました。
%USERPROFILE%\AppData\Local\Temp\Quest Software\PowerGUI\51daca6d-6a9a-44c8-9717-f8cc5c68d10e\fixed.ps1
実のところ、この.NET実行形式ファイルの役目は埋め込まれているスクリプトを展開してからPowerShell.exeで実行することにすぎません。スクリプトはScripts.zipという名前のZIPファイルの中に存在し、このファイルは図3で示されるようなファイルのリソース セクションの中にあります。
![図3 マルウェアのリソース セクションの中に埋め込まれているScripts.zip](https://www.paloaltonetworks.jp/content/dam/paloaltonetworks-com/ja_JP/Images/blog/Powershell-3.png)
Scripts.zipファイルは、難読化せずにマルウェアに埋め込まれているため、dnSpyを使用してこのZIPファイルを簡単に解凍できます。これによって、内部の圧縮されたPowerShellスクリプトを取得できます。
PowerShellスクリプトは、他のPoshCoder/PowerWare亜種に非常によく似ています。図4で示すように、このサンプルはAES-128暗号化とハードコードされた鍵を使用するため、被害者は支払うことなくファイルを復号化できます。一部の亜種には、鍵用にランダムに生成されたバイトの送信を試みるネットワーク ビーコンが含まれていることが知られていますが、これにはそのようなネットワークビーコンは含まれていません。
![図4 PowerWare亜種の暗号化のセットアップ](https://www.paloaltonetworks.jp/content/dam/paloaltonetworks-com/ja_JP/Images/blog/Powershell-4.png)
![図5 PowerWareによって暗号化されるファイル拡張子のリスト](https://www.paloaltonetworks.jp/content/dam/paloaltonetworks-com/ja_JP/Images/blog/Powershell-5.png)
PowerShellスクリプトは自動的に、被害者のマシンで以下にリストされた拡張子を持つファイルをスキャンし、その後、それらの暗号化に進みます。
その後、PowerWareは、悪名高きLockyマルウェアと同様に、暗号化したファイルに.locky拡張子を付加します。また、‘_HELP_instructions.html’という名前でHTMLファイルを書き込みます。言い回しは、Lockyランサムウェア ファミリと同じです。この身代金要求文は暗号化されたファイルが含まれるフォルダにドロップされます。
![図6 Lockyマルウェア ファミリを模倣するために使用されるPowerShellコード](https://www.paloaltonetworks.jp/content/dam/paloaltonetworks-com/ja_JP/Images/blog/Powershell-6.png)
![図8 復号化のWebサイト](https://www.paloaltonetworks.jp/content/dam/paloaltonetworks-com/ja_JP/Images/blog/Powershell-8.png)
ユーザーが身代金を支払う意思を示すと、以下のような用意されたWebサイトにナビゲートされます。サイトには、ビットコインをいくら購入するかについて指示が記載されており、ここでもLockyランサム ファミリを引用した部分が多数見られ、この亜種は明らかに模倣しています。
復号化
前述のとおり、マルウェアは静的鍵を使用しているため、被害者のファイルは復号化可能です。図9で見られるとおり、マルウェアは実際には、標的とするファイルの最初の2048バイトのみを暗号化します。
![図9 PowerWare亜種で暗号化されたファイルの例](https://www.paloaltonetworks.jp/content/dam/paloaltonetworks-com/ja_JP/Images/blog/Powershell-9.png)
次のスクリーンショットは、感染したWindowsマシンで実行されているスクリプトの例を示しています。
![図10 実行されている復号化スクリプト](https://www.paloaltonetworks.jp/content/dam/paloaltonetworks-com/ja_JP/Images/blog/Powershell-10.png)
私たちは、このスクリプトがPowerWareのこの亜種に感染した被害者の助けとなると考えています。
結論
このサンプルは新しいものに見えるかもしれませんが、実際には、以前に検出されたPowerWareマルウェア ファミリの亜種です。他の亜種と異なり、このサンプルはLockyマルウェア ファミリであるかのように偽装しています。
Palo Alto Networksのお客様は、次の方法で脅威から保護されています。
- このマルウェアに関連するすべてのドメインとIPアドレスは、正しく悪意のあるものとしてフラグ付けされます。
- この攻撃活動で遭遇したサンプルは、すべてWildFireにより悪意のあるものとして正しく識別されます。
- このマルウェア ファミリを追跡および識別するためのAutoFocusタグがあります。
セキュリティ侵害の兆候
URL
hxxp://bobbavice[.]top/RY.exe
hxxp://p6y5jnjxpfiibsyx.tor2web[.]org
hxxp://p6y5jnjxpfiibsyx.onion[.]to
hxxp://p6y5jnjxpfiibsyx.onion[.]cab
hxxp://p6y5jnjxpfiibsyx.onion[.]link
SHA256ハッシュ
RY.exe – 7f1023a3d523ab15fe3cceb7fde8038199510703a65dd03d78b9548eb2596b51
ドロップされたPowerShell
fixed.ps1
cd7ca159f8e8dd057b0591abc2e773d5651a27718eb72e26623e64af859d2826
%USERPROFILE%\AppData\Local\Temp\Quest Software\PowerGUI\51daca6d-6a9a-44c8-9717-f8cc5c68d10e\fixed.ps1
書き込まれたファイル
_HELP_instructions.html
.locky