投稿者:Joey Chen、Chetan Raghuprasad、Alex Karkins
- Cisco Talos は、遅くとも 2024 年 2 月から続いている新たな攻撃活動を確認しました。攻撃グループは、CryptBot、LummaC2、Rhadamanthys という 3 つの有名な情報窃盗マルウェアを拡散しています。
- Talos は、LNK ファイルに埋め込まれた新しい PowerShell コマンドライン引数も発見しました。アンチウイルス製品をバイパスして攻撃対象のホストに最終ペイロードをダウンロードするものです。
- この攻撃活動では、悪意のある HTA ファイルとペイロードをホストするために、コンテンツ デリバリ ネットワーク(CDN)キャッシュドメインがダウンロードサーバーとして使用されています。
- Talos は、攻撃グループ CoralRaider の関与をある程度確信しています。CoralRaider による Rotbot 攻撃の戦術、手法、手順(TTP)との共通点がいくつか観察されました。具体的には、初期攻撃ベクトルである Windows ショートカットファイル、中間段階の PowerShell 復号ツールとペイロードのダウンロードスクリプト、被害者のマシンのユーザーアクセス制御(UAC)をバイパスするために使用される FoDHelper 手法などです。
被害状況と攻撃者のインフラストラクチャ
Talos のテレメトリデータと OSINT 情報によると、この攻撃の被害は米国、ナイジェリア、パキスタン、エクアドル、ドイツ、エジプト、英国、ポーランド、フィリピン、ノルウェー、日本、シリア、トルコなど複数の国に及んでいます。また、日本のコンピュータ サービス コールセンター企業やシリアの民間防衛サービス組織に所属する一部のユーザーも影響を受けたことがテレメトリで明らかになっています。影響を受けたユーザーは、動画ファイルを装ったファイルをブラウザでダウンロードしていました。これは、さまざまな業種や地域のユーザーに対して広範な攻撃が行われている可能性を示しています。
この攻撃では、攻撃グループがコンテンツ デリバリ ネットワーク(CDN)キャッシュを使用して悪意のあるファイルをネットワークエッジホストに保存し、リクエストが遅延しないようにしていることが観察されています。攻撃グループは、ネットワーク防御担当者を欺くために、CDN キャッシュをダウンロードサーバーとして使用しています。
CDN エッジの URL | 情報窃取マルウェア |
hxxps[://]techsheck[.]b-cdn[.]net/Zen90 | CryptBot |
hxxps[://]zexodown-2[.]b-cdn[.]net/Peta12 | CryptBot |
hxxps[://]denv-2[.]b-cdn[.]net/FebL5 | CryptBot、Rhadamanthys |
hxxps[://]download-main5[.]b-cdn[.]net/BSR_v7IDcc | Rhadamanthys |
hxxps[://]dashdisk-2[.]b-cdn[.]net/XFeb18 | CryptBot |
hxxps[://]metrodown-3[.]b-cdn[.]net/MebL1 | CryptBot |
hxxps[://]metrodown-2[.]b-cdn[.]net/MebL1 | CryptBot、LummaC2 |
hxxps[://]metrodown-2[.]b-cdn[.]net/SAq2 | LummaC2 |
Talos は、この攻撃で複数の C2 ドメインが使用されていることを確認しました。分析期間中のドメインの DNS リクエストを以下のグラフに示していますが、攻撃が継続中であることがわかります。
他の攻撃とも共通する TTP(戦術、手法、手順)
今回の攻撃で使用されている TTP と被害が見られる地域が、攻撃グループ CoralRaider による Rotbot 攻撃で確認されたものと部分的に重なっていることから、CoralRaider の攻撃への関与を Talos はある程度確信しています。今回の一連の攻撃で使用されている PowerShell スクリプト(以降の段階の PowerShell スクリプトを復号するためのもの)と PowerShell ダウンローダースクリプトは、Rotbot 攻撃で採用されたものと似ていることを Talos は突き止めました。
Rotbot 攻撃(左)と今回新たに確認された攻撃(右)の PowerShell 復号スクリプト。 |
Rotbot 攻撃(左)と今回新たに確認された攻撃(右)の文字列の復号とダウンロードルーチン。 |
公開リポジトリには見当たらず、一般の記事にも掲載されていないことから、この攻撃グループがこれらの PowerShell スクリプトを開発したと考えられます。LNK ファイルに埋め込まれている PowerShell 引数を調べたところ、一般的な引数ではなく、この攻撃グループと、グループが関与する攻撃に固有のものらしいことがわかりました。
.(gp -pa ‘HKLM:\SOF*\Clas*\Applications\msh*e’).(‘PSChildName’) |
ペイロードを送り込むための多段階からなる感染チェーン
テレメトリによると、ドライブバイダウンロード手法によってダウンロードされた ZIP ファイル内の悪意のあるショートカットファイルを開くと、感染チェーンが開始されます。攻撃グループは、フィッシングメールを被害者に送りつけて悪意のあるリンクを拡散している可能性があります。
Windows ショートカットファイルには PowerShell コマンドが埋め込まれており、攻撃者が管理する CDN ドメインでホストされている悪意のある HTA ファイルを実行します。HTA ファイルが埋め込み Javascript を実行すると、PowerShell 復号スクリプトが復号化され、実行されます。PowerShell 復号スクリプトは、埋め込まれた PowerShell ローダースクリプトを復号し、被害者のマシンのメモリ内で実行します。PowerShell ローダーは、検出を回避して UAC をバイパスするために複数の関数を実行し、最後にペイロードである情報窃取マルウェア(CryptBot、LummaC2、Rhadamanthys のいずれか)をダウンロードして実行します。
Windows ショートカットファイルが悪意のある HTA ファイルを実行
Windows ショートカットファイルは PowerShell コマンドを実行し、被害者のマシンに HTML アプリケーションファイルをダウンロードして実行します。攻撃者は、PowerShell のコマンドエイリアス「gp」(Get-ItemProperty の略)を使用して、アプリケーションクラスのレジストリキーのレジストリの内容を読み取り、実行ファイル名「mshta.exe」を取得します。PowerShell インスタンスは mshta.exe を使用して、リモートでホストされている悪意のある HTA ファイルを被害者のマシン上で実行します。
難読化された HTA が埋め込み PowerShell 復号ツールを実行
悪意のある HTML アプリケーションファイルは高度に難読化されており、String fromCharCode メソッドを使用して関数を復号化して実行する Javascript が含まれています。復号化された関数は、埋め込まれている PowerShell 復号スクリプトを実行します。
PowerShell 復号スクリプトには、AES(Advanced Encryption Standard)で暗号化された文字列のブロックがあります。AES 復号関数を使用して、base64 でエンコードされた文字列「RVRVd2h4RUJHUWNiTEZpbkN5SXhzUWRHeFN4V053THQ=」と IV「AAAAAAAAAAAAAAAA」から 256 バイトの AES キーを生成します。このキーと IV を使用して、PowerShell ローダースクリプトの次の段階を復号して実行します。
PowerShell ローダーがペイロードをダウンロードして実行
PowerShell ローダースクリプトはモジュール型であり、被害者のマシン上で一連の活動を行うための複数の関数を含んでいます。最初に、被害者のマシンの一時フォルダにバッチスクリプトをドロップし、その内容を書き込む関数を実行します。これには、被害者のマシンの「ProgramData」フォルダを Windows Defender の除外リストに追加する PowerShell コマンドが含まれています。
ドロップされたバッチスクリプトは、環境寄生型バイナリ(LoLBin)「FoDHelper.exe」とプログラム識別子(ProgID)レジストリキーを使用して実行され、被害者のマシンのユーザーアクセス制御(UAC)をバイパスします。FodHelper は Windows の機能であり、デフォルトで高い完全性を保って実行されるオンデマンド ヘルパー バイナリです。通常、FodHelper を実行すると、以下にリストされているレジストリキーの有無がチェックされます。レジストリキーにコマンドが割り当てられている場合、FodHelper はユーザーにプロンプトを表示することなく、権限昇格したコンテキストでコマンドを実行します。
HKCU:\Software\Classes\ms-settings\shell\open\command
HKCU:\Software\Classes\ms-settings\shell\open\command\DelegateExecute
HKCU:\Software\Classes\ms-settings\shell\open\command\(default)
Windows Defender はデフォルトで、レジストリキー HKCU:\Software\Classes\ms-settings\shell\open\command への書き込みが試行されたかどうかを検出します。攻撃者はこの検出を回避するためにプログラム識別子(ProgID)を使用します。Windows マシンにおいてプログラム識別子(ProgID)とは、クラス ID(CLSID)に関連付けることのできるレジストリエントリを指します。クラス ID は、COM(コンポーネント オブジェクト モデル)クラスオブジェクトを識別する、グローバルに一意のシリアル番号です。Windows シェルは、CurVer というデフォルトの ProgID レジストリキーを使用します。これは、デフォルトバージョンの COM アプリケーションを設定するために使用されます。
この攻撃では、ソフトウェアクラスのレジストリにカスタム ProgID「ServiceHostXGRT」レジストリキーを作成することで「CurVer」レジストリキー機能を悪用し、コマンドを実行する Windows シェルを割り当ててバッチスクリプトを実行します。
レジストリキー | “HKCU\Software\Classes\ServiceHostXGRT\Shell\Open\command” |
値 | %temp%\r.bat |
このスクリプトは、HKCU\Software\Classes\ms-settings\CurVer の CurVer レジストリサブキーで ProgID ServiceHostXGRT を設定します。これは、HKCU:\Software\Classes\ms-settings\shell\open\command というコマンドに変換されます。レジストリ設定を変更した後、PowerShell スクリプトは FoDHelper.exe を実行し、レジストリキー HKCU:\Software\Classes\ms-settings\shell\open\command に割り当てられたコマンドを実行し、ドロップされたバッチスクリプトを実行します。最後に、設定されたレジストリキーを削除して検出を回避します。
バッチスクリプトは「C:\ProgramData」フォルダを Windows Defender の除外リストに追加します。PowerShell ローダースクリプトはペイロードをダウンロードし、「C:\ProgramData」フォルダに「X1xDd.exe」という名前で保存します。
ペイロードを被害者のマシンにダウンロードした後、PowerShell ローダーは別の関数を実行して、以前にドロップされたバッチファイルを新しい命令で上書きし、ダウンロードされたペイロード(情報窃取マルウェア)を Windows の start コマンドによって実行します。このセクションですでに説明したように、同じ FoDHelper 手法を使用してバッチスクリプトの 2 番目のバージョンを実行します。
同じ攻撃で使用された 3 つのペイロード
この攻撃では、CryptBot、LummaC2、Rhadamanthys という 3 つの有名な情報窃取マルウェアがペイロードとして送り込まれていることを Talos は発見しました。これらの情報窃盗マルウェアが狙っている情報は、システムやブラウザのデータ、ログイン情報、暗号通貨ウォレット、金融取引情報などです。
CryptBot
CryptBot は Windows システムを標的とする典型的な情報窃取マルウェアであり、2019 年に GDATA によって実際に発見されています。感染したコンピュータから、ブラウザのログイン情報、暗号通貨ウォレット、ブラウザクッキー、クレジットカードなどの機密情報を窃取し、感染したシステムのスクリーンショットを作成するように設計されています。
Talos は、2024 年 1 月以降に実際に配布された CryptBot の新しい亜種を発見しました。この新しい CryptBot もその目的は同じですが、新しい革新的な機能がいくつか備わっています。新しい CryptBot には、マルウェア分析を妨害するさまざまな手法が組み込まれており、新しい CryptBot 亜種の中には VMProtect V2.0.3-2.13 がパックされているものもあります。VMProtect は他の亜種にも含まれていますが、バージョンは不明です。新しい CryptBot は、感染したマシンから機密情報を窃取し、盗んだ情報を使用してアプリケーションの設定を変更しようとします。新しい CryptBot 亜種が標的とするブラウザ、アプリケーション、暗号通貨ウォレットのリストを以下に示します。
新しい CryptBot 亜種では、パスワード管理アプリケーションのデータベースと認証アプリケーションの情報も窃取対象リストに含まれています。この目的は、二要素認証が有効になっている暗号通貨ウォレットを窃取することです。
CryptBot は、被害者の環境にある標的アプリケーションのバージョンはさまざまであり、アプリケーションのデータベースファイルの拡張子もさまざまであることを認識しています。そこで、被害者のマシンをスキャンして標的アプリケーションのデータベースファイルの拡張子を探し、ログイン情報を収集します。
LummaC2
Talos は、攻撃者がこの攻撃の代替ペイロードとして LummaC2 マルウェアの新しい亜種を送り込んでいることを発見しました。LummaC2 は悪名高い情報窃取マルウェアであり、被害者のマシンから情報を収集しようとします。outpost24 が投稿したレポートやその他の外部セキュリティレポートによると、LummaC2 は何年も前から闇市場で販売されていたことが確認されています。
攻撃者は LummaC2 の情報窃取機能を改変し、独自のアルゴリズムでマルウェアを難読化しました。難読化アルゴリズムは、以下に示すマルウェア内部の別のセクションに保存されています。
LummaC2 の新しいバージョンでも、実行中にユーザーに表示される警告メッセージの内容は同じです。
C2 ドメインは対称アルゴリズムで暗号化されています。攻撃者は 9 つの C2 サーバーを所有しており、マルウェアはその 1 つずつに接続しようとすることがわかりました。新しい LummaC2 亜種のさまざまなサンプルを分析した結果、それぞれが C2 を暗号化する際に異なるキーを使用することも判明しています。
Talos は、この攻撃で新しい LummaC2 亜種が接続を試みる 9 つの C2 ドメインのリストを作成しました。
暗号化された文字列 | 復号された文字列 |
DjAX00pkpcffFUltlGiiaZwjEaPFx8U3sZYohNNzphB+VXagKwrRr7BjLA71GNEZ8E8/0K2otQ== | peasanthovecapspll[.]shop |
DjAX00pkpcffFUltlGiiaZwjEaPFx8U3sZYohNNzphBpVXqwOAHAo75nPQT3Hc4I6EZ+x+u0rVjB | gemcreedarticulateod[.]shop |
DjAX00pkpcffFUltlGiiaZwjEaPFx8U3sZYohNNzphB9VXShLxDMqLFmPATgC8Ma+U14zKy0oBnC/kf0 | secretionsuitcasenioise[.]shop |
DjAX00pkpcffFUltlGiiaZwjEaPFx8U3sZYohNNzphBtXHa6JwfKqbxwOh79B8wb+UF0jbavqkc= | claimconcessionrebe[.]shop |
DjAX00pkpcffFUltlGiiaZwjEaPFx8U3sZYohNNzphBiWXaxIwjMs6Z0Ox/1BsUM8UZ/2qyz60TZ+Vg= | liabilityarrangemenyit[.]shop |
DjAX00pkpcffFUltlGiiaZwjEaPFx8U3sZYohNNzphBjX3O2ORDAtKx0MAjiDcwE9U9mxq7ptl/e5g== | modestessayevenmilwek[.]shop |
DjAX00pkpcffFUltlGiiaZwjEaPFx8U3sZYohNNzphB6Qn6yJAPJoqxwKB77BsAM8kB51K/ptl/e5g== | triangleseasonbenchwj[.]shop |
DjAX00pkpcffFUltlGiiaZwjEaPFx8U3sZYohNNzphBtRXunPxbAtLRwPQ78DssH/U1yyqSrqRnC/kf0 | culturesketchfinanciall[.]shop |
DjAX00pkpcffFUltlGiiaZwjEaPFx8U3sZYohNNzphB9X3GyIhHLs7Z7Lh74AcYM+Ep/xuu0rVjB | sofahuntingslidedine[.]shop |
データを漏洩させる局面での LummaC2 の最初のステップは、C2 サーバーへの接続です。9 つの C2 サーバーのいずれからも「OK」というメッセージが返ってこない場合、マルウェアはプロセスを終了します。2 番目のステップは、感染したマシンから情報を盗み出すことです。基本的な窃盗機能は以前のバージョンと同じですが、被害者の Discord ログイン情報を抜き取る機能が追加されています。
Rhadamanthys
この攻撃で発見された最後のペイロードは、2022 年 9 月に闇フォーラムの広告に登場した有名な情報窃取マルウェアである Rhadamanthys です。Rhadamanthys マルウェアは現在も進化し続けており、作成者は 2024 年 2 月 15 日に新しいバージョン V0.6.0 をリリースしました。ただし、この攻撃で見つかった Rhadamanthys 亜種は V0.5.0 です。
攻撃者は、Python 実行ファイルをローダーとして使用し、Rhadamanthys マルウェアをメモリに読み込んで実行します。Python スクリプトは、Python 実行ファイルを逆コンパイルした後、2 段階で Rhadamanthys マルウェアを読み込みます。第 1 段階は単純な Python スクリプトであり、バイナリコードを 0 から 9 に置き換え、第 2 段階を復号化します。
第 2 段階では、Python スクリプトが Windows API を使用してメモリブロックを割り当て、Rhadamanthys マルウェアをプロセスに挿入します。Talos は、攻撃者がシェルコードを実行する機能を組み込む目的で Python スクリプトを開発していることを確認しています。
最終的な実行ファイルを分析したところ、マルウェアがカスタム形式(マジックヘッダーが「XS」)のローダーモジュールを解凍し、プロセスインジェクションを実行することがわかりました。XS 形式のカスタムローダーモジュールは、Check Point 社の研究者が分析した Rhadamanthys サンプルのモジュールと似ています。このマルウェアは、バイナリ内のハードコードされたリストから、プロセスインジェクションの対象としてリストされているプロセスの 1 つを選択します。
- “%Systemroot%\\system32\\dialer.exe”
- “%Systemroot%\\system32\\openwith.exe”
カバレッジ
Cisco Secure Endpoint(旧 AMP for Endpoints)は、この記事で説明したマルウェアの実行を阻止するのに最適です。Cisco Secure Endpoint の無料トライアルはこちらからお申し込みください。
Cisco Secure Web Appliance の Web スキャンは、悪意のある Web サイトへのアクセスを防止し、上述したような攻撃で使用されるマルウェアを検出します。
Cisco Secure Email(旧 E メールセキュリティ)は、攻撃の一環として攻撃者が送りつける不正な電子メールをブロックします。Cisco Secure Email の無料トライアルはこちらからお申し込みください。
Threat Defense Virtual、適応型セキュリティアプライアンス、Meraki MX など、Cisco Secure Firewall(旧次世代ファイアウォールおよび Firepower NGFW)アプライアンスは、この脅威に関連する悪意のあるアクティビティを検出できます。
Cisco Secure Malware Analytics(Threat Grid)は、悪意のあるバイナリを特定し、シスコのすべてのセキュリティ製品に保護機能を組み込みます。
Umbrella(シスコのセキュア インターネット ゲートウェイ(SIG))は、社内ネットワークの内外で悪意のあるドメイン、IP、URL への接続をブロックします。Umbrella の無料トライアルはこちらからお申し込みください。
Cisco Secure Web Appliance(旧 Web セキュリティアプライアンス)は、危険性のあるサイトを自動的にブロックし、ユーザーがアクセスする前に疑わしいサイトを検査します。
特定の環境および脅威データに対する追加の保護機能は、Firewall Management Center から入手できます。
Cisco Duo は、ユーザーに多要素認証を提供し、承認されたユーザーのみがネットワークにアクセスできるようにします。
オープンソースの Snort サブスクライバルールセットをお使いであれば、Snort.org で購入可能な最新のルールパックをダウンロードすることで、最新状態を維持できます。この脅威の Snort SID は 63218 ~ 63225 および 300867 ~ 300870 です。
ClamAV 検出もこの脅威に有効です。
Lnk.Downloader.CoralRaider-10027128-0
Txt.Tool.CoralRaider-10027140-0
Html.Downloader.CoralRaider-10027220-0
Win.Infostealer.Lumma-10027222-0
Win.Infostealer.Rhadamanthys-10027293-0
Win.Infostealer.Rhadamanthys-10027294-0
Win.Infostealer.Cryptbot-10027295-0
Win.Infostealer.Cryptbot-10027296-0
Win.Infostealer.Cryptbot-10027297-0
Win.Infostealer.Cryptbot-10027298-0
Win.Infostealer.Cryptbot-10027299-0
Win.Infostealer.Cryptbot-10027300-0
Win.Infostealer.Cryptbot-10027301-0
Win.Infostealer.Cryptbot-10027302-0
Win.Infostealer.Cryptbot-10027303-0
Win.Infostealer.Cryptbot-10027305-0
IOC(侵入の痕跡)
この脅威に関連する IOC は、こちらをご覧ください。
本稿は 2024 年 04 月 23 日にTalos Group のブログに投稿された「Suspected CoralRaider continues to expand victimology using three information stealers」の抄訳です。