Lockyランサムウェアを詳しく検証

「Locky」と呼ばれる新たなランサムウェアが現在、インザワイルド状態で出回っており、昨今話題になっています。Lockyランサムウェアに関する優れたレポートも、すでにインターネット上でいくつか公開されています。今回のブログ記事では、まだ取り上げられていない(と思う)技術的な面、具体的にはドメイン生成アルゴリズム、コマンド&コントロール通信、ファイルの暗号化に焦点を当てたいと思います。

参考までに、以下はLockyのDecrypterページのスクリーンショット(スペース節約のために切り取った状態)です。

Harry71のOnion Spiderによると、LockyのDecryptorのページは2016年2月6日に登場したということです。つまり、これがLockyの活動の開始を示しているのかもしれません。

ドメイン生成アルゴリズム

ドメイン生成アルゴリズム(DGA)を行う前に、Lockyランサムウェアはタイムスタンプカウンタを入手するためにRDTSC関数を呼び出します。その後、RDTSCの結果に基づいてモジュロ演算を実施します。結果が6未満の場合、DGAをトリガーします。そうでない場合は、ハードコードされたIPアドレスに直接接続します。

以下は、このマルウェアのDGAアルゴリズムです。影響を受けたマシンの年月日といくつかのハードコードされたシード値に基づき、ドメインが生成されています。

C&C通信

C&Cへの最初のPhone Home(命令元への通信)は以下のような形式になっています。

HTTP POST http://{malware C&C}/main.php

パラメータ:
id={randomly generated victim ID}&act={ command sent to the C&C}&affid={affiliate ID}&lang={computer language}&corp=0&serv=0&os={operating system}&sp={service pack}&x64={if 64 bit}

マルウェアのC&Cサーバーに対するアウトバウンドの要求は、特定のハードコードされた鍵(ハイライト部分)を持つ以下のアルゴリズムを用いて暗号化されています。

同様に、すべてのインバウンドのデータ(C&Cからの返答)を、マルウェアが特定のアルゴリズムと鍵を使って復号します。

C&Cは現在、「&act=」パラメータのもと、マルウェアから以下の要求を受け付けています。

以下は、マルウェアとC&C間における暗号化前の通信のサンプルです。

Stats&path

Getkey

以下は、公開RSA鍵を含むC&Cからの復号された返答のサンプルです。

Report&data

上から、影響を受けたファイルの名前に対する区切り文字はバックスラッシュ(0x5c)であることが伺えます。

Gettext&lang

このランサムウェアは様々な言語で書かれたランサムウェアノートを提供することができます。例えば、「&lang」パラメータを「fr」にしてしてみると、フランス語で書かれた以下の返答が返ってきました。

ファイルの暗号化

最後に、インターネットですでに報告されていることに対する補足となりますが、このランサムウェアは固定、リムーバブル、RAMディスクドライブにあるファイルを暗号化します。

結論

上記の結果に基づき、Lockyを作成した人たちは経験豊富なサイバー犯罪者であると私たちは考えています。このランサムウェアの設計は、そのDGA機能や入念なC&Cへの報告で示されるように、有名なランサムウェアファミリーに似ています。

私たちは、Lockyがランサムウェア界で主役級の存在になるだろうと予測しています。フォーティネットはこのマルウェアの進展を今後も監視していきます。

更新: 2016年2月18日

フォーティネットではアプリケーションコントロールシグネチャ Locky.Botnetを介し、LockyのC&C通信をブロックしています。

-= FortiGuard Lion Team =-

IOC(侵害指標)

ハッシュ値
e1a9b6f7285a85e682ebcad028472d13 W32/Kryptik.EOEN!tr
003d8a858d00ac436641dd0210eb074f W32/Filecoder.NFX!tr
31d2bdcd2fc117b558b54e731af02a65 W32/Reconyc.FETU!tr
e22f77892cb4ed72e58c84bc18e33c69 W32/Reconyc.FETU!tr
b9ffd5c5f63b9438a26f36a19bd78e93 W32/Reconyc.FETU!tr
fb6ca1cd232151d667f6cd2484fee8c8 W32/Reconyc.FETU!tr

C&C:
195.154.241.208/main.php
195.154.241.208/main.php
86.104.134.144/main.php
193.124.181.169/main.php
109.234.38.35/main.php
91.195.12.185/main.php
kpybuhnosdrm.in
sso.anbtr.com
xsso.kpybuhnosdrm.in
xfyubqmldwvuyar.yt
luvenxj.uk
dkoipg.pw

ドロップされたコピー:
%Temp%svchost.exe

追加ファイル:
%User Profile%Desktop_Locky_recover_instructions.bmp
{encrypted filepath}_Locky_recover_instructions.txt

追加レジストリ:

レジストリーキー: HKCUSoftwareLocky
値: id
データ: {victim ID}
値: pubkey
データ: {public key}
値: paytext
データ: {ransom note in HEX}

レジストリーキー: HKCUSoftwareMicrosoftWindowsCurrentVersionRun
値: Locky
データ: %Temp%svchost.exe

レジストリーキー: HKCUControl PanelDesktop
値: Wallpaper
データ: %User Profile%Desktop_Locky_recover_instructions.bmp

Cmdコマンド:
vssadmin.exe Delete Shadows /All /Quiet