-
タグ
タグ
- アーキテクト
- アジャイル開発
- アプリ開発
- インシデントレスポンス
- イベントレポート
- カスタマーストーリー
- カルチャー
- 官民学・業界連携
- 企業市民活動
- クラウド
- クラウドインテグレーション
- クラブ活動
- コーポレート
- 広報・マーケティング
- 攻撃者グループ
- 子育て、生活
- サイバー救急センター
- サイバー救急センターレポート
- サイバー攻撃
- サイバー犯罪
- サイバー・グリッド・ジャパン
- サプライチェーンリスク
- システム開発
- 趣味
- 障がい者採用
- 初心者向け
- 白浜シンポジウム
- 情シス向け
- 情報モラル
- 情報漏えい対策
- 人材開発・教育
- 診断30周年
- スレットインテリジェンス
- すごうで
- セキュリティ
- セキュリティ診断
- セキュリティ診断レポート
- 脆弱性
- 脆弱性管理
- ゼロトラスト
- 対談
- ダイバーシティ
- テレワーク
- データベース
- デジタルアイデンティティ
- 働き方改革
- 標的型攻撃
- プラス・セキュリティ人材
- モバイルアプリ
- ライター紹介
- ラックセキュリティアカデミー
- ランサムウェア
- リモートデスクトップ
- 1on1
- AI
- ASM
- CIS Controls
- CODE BLUE
- CTF
- CYBER GRID JOURNAL
- DevSecOps
- DX
- EC
- EDR
- FalconNest
- IoT
- IR
- JSOC
- JSOC INSIGHT
- LAC Security Insight
- NDR
- OWASP
- SASE
- Tech Crawling
- XDR
ラックのサイバー救急センターでは、最新のサイバー攻撃に対処するため、日本の組織を標的とする多様な脅威動向を日々調査・分析しています。2026年4月、私たちは日本の組織を標的とした複数のスピアフィッシング攻撃を確認しました。
この攻撃では、組織の代表者を騙る人事関連のテーマがおとりとして用いられていました。攻撃の過程では、「PoisonX」と呼ばれるカーネルドライバと遠隔操作機能を持つ「10FXRAT(別名:PoisonX RAT)」が悪用されていることを確認しています。10FXRATを利用した同種の攻撃キャンペーンは5月以降も観測されており、日本の組織だけでなく中国の組織も標的とする継続的な攻撃であるとみられます。なお、5月の攻撃キャンペーンでは攻撃手法に変化が見られ、従来のPoisonXドライバの代わりに、ASUSTeK Computer社の正規署名を持つ「EneIo64.sys」や、Microsoft社の正規署名を持つ「procexp.sys」を悪用したBYOVD(Bring Your Own Vulnerable Driver)攻撃が用いられていました。攻撃者は、このBYOVD攻撃を利用することで、カーネルレベルの特権を取得し、セキュリティ製品の無効化やマルウェアの隠蔽など、多岐にわたる不正な操作を行うことが可能となります。
本稿では、こうした手法の変化を踏まえつつ、特徴的な機能を持つPoisonXドライバが利用された2026年4月の攻撃キャンペーンに焦点を当て、その詳細な手口について解説します。
攻撃キャンペーン概要
図1に、本攻撃キャンペーンの全体概要を示します。攻撃はスピアフィッシングメールを起点としており、メール本文に記載されたGoogle Cloud Storageのリンクから、不正なファイルをダウンロードさせる手口が用いられていました。当該リンクにアクセスすると、悪性のLNKファイルが含まれたZIPファイルがダウンロードされます。また、同種の攻撃キャンペーンでは、図2に示すようなEXEファイルを含むZIPファイルやRARファイルがダウンロードされるケースに加え、リンクからEXEファイルを直接ダウンロードさせるケースも確認されています。
このように初期侵入の手法には複数のバリエーションが存在しますが、いずれのケースにおいても、実行されるEXEファイルは、PoisonXドライバおよび10FXRATを内包するドロッパー型マルウェア(PXDropper)です。
以降のセクションでは、LNKファイルを経由する攻撃パターンに焦点を当て、展開される各マルウェアの詳細な機能について解説します。
LNKファイル
LNKファイルは、Google Cloud StorageからPXDropperを取得するダウンローダとして動作します(図3)。ファイルの取得にはcurl.exeが使用されます。さらに、LNKファイル内部には図4に示すデコイファイルが埋め込まれており、LNKファイル実行時に当該デコイファイルを展開・起動します。
PXDropper
主な役割は、内部に保持しているPoisonXドライバおよび10FXRATの関連ファイル群(usoclient64.exe、dnssd.dll、runtime.bin、vcruntime140.dll)をシステム上に展開し、実行することです。
PXDropperの実行フロー
図5は、PXDropperの実行フローを示しています。PoisonXドライバを展開・実行したのち、10FXRATの実行に遷移します。以降では、このマルウェアが持つ特徴的な機能を紹介します。
耐解析機能
このマルウェアは、初期動作として実行環境を確認する耐解析機能(Anti-Analysis)を備えています(図6)。以下に示す項目ごとにペナルティスコアを加算する独自のスコアリング方式を採用しており、合計スコアが80点(0x50)以上の場合に「解析環境」と断定して活動を停止する特徴があります。
| CPUコア数 | 論理コア数が3コア未満の場合 | (+30点) |
|---|---|---|
| メモリ容量 | 物理メモリが約6.6GB未満の場合 | (+30点) |
| ディスク容量 | Cドライブの総容量が約60GB未満の場合 | (+20点) |
| システム稼働時間 | OS起動からの経過時間が約3分(180,000ミリ秒)未満の場合 | (+15点) |
| レジストリ | 仮想環境(VM)特有のレジストリキー※1を検知した場合 | (+50点) |
| ウィンドウ | 解析ツールのウィンドウ名※2を検知した場合 | (+100点) |
| アカウント情報 | ユーザー名またはPC名がサンドボックス特有のリスト※3と一致した場合 | (+60点) |
※1 対象となるVM:VMware, VirtualBox, Microsoft Hyper-V, Wineに関連するサービスやレジストリキー
※2 監視対象の解析ツール:process monitor, procmon, process explorer, procexp, process hacker, autoruns, x64dbg, x32dbg, ollydbg, windbg, immunity debugger, ida pro, idaq, ida -, wireshark, fiddler, tcpview, fakenet, pe-bear, pestudio, detect it easy, die -, resource hacker, cff explorer, hxd, hex editor, noriben, api monitor, regshot, httpdebugger
※3 サンドボックス特有のユーザー名/PC名:sandbox, malware, virus, sample, currentuser, tequilaboomboom
カーネルドライバの展開
次に、図7に示すようにPXDropperは、オフセットunk_1402FFA06に保持されているPoisonXドライバを、一時フォルダ(%TEMP%)にHid[ランダムな4桁の16進数].tmpのファイル名でドロップします。ファイルへ書き出す直前に、PEヘッダ内のCheckSumフィールド(オフセット0x138)をランダムな値で上書きします。
その後、ファイル名と同じ名称でWindowsサービスとして登録し、このサービスを起動します。続いて、¥¥.¥{F8284233-48F4-4680-ADDD-F8284233} デバイスインタフェースを開き、ハンドルを取得します(図8)。これにより、攻撃者はユーザーモードからドライバと通信し、カーネルモードの権限で意図した操作を実行することが可能となります。
セキュリティ製品の無効化とプロセスおよびネットワーク通信の隠蔽
このデバイスインタフェースを利用する主な目的は、セキュリティ製品の無効化(0x22E010 IOCTL)と、自分自身のプロセスおよびネットワーク通信の隠蔽(0x22E008 IOCTL)です。
セキュリティ製品の無効化については、図9に示すように、マルウェアは稼働中のプロセスを列挙し、XOR(キー:0x4B)で暗号化された43種類のセキュリティ製品のリストと照合します。Microsoft DefenderやCrowdStrikeといった製品のほか、360 Total Securityなどの中国のセキュリティ製品が対象に含まれています。標的となるプロセスを発見すると、取得したハンドルを利用してドライバに対し0x22E010 IOCTLリクエストを発行します。このリクエストを通じて標的プロセスのPIDを送信し、カーネル権限で対象のプロセスを強制終了(Kill)させます。標的対象のセキュリティ製品については、Appendix表4の「セキュリティ製品のリスト」をご参照ください。
次に、プロセスおよびネットワーク通信の隠蔽については、マルウェアは自分自身のプロセス(今回のケースでは10FXRATがインジェクションされたusoclient64.exe)を特定し、そのPIDを含めた0x22E008 IOCTLリクエストをドライバに送信します(図10)。これを受け取ったドライバは、WindowsのカーネルAPIや、正規のネットワーク監視ドライバ(¥Driver¥nsiproxy、¥Device¥Tcpなど)をフックし、指定されたPIDのプロセス情報と通信記録をシステムから除外します。これにより、OSのプロセス一覧から自身の存在を消し去り、タスクマネージャーやEDR等の各種システム監視ツールから、プロセスおよびC2サーバとの不正な通信活動を隠蔽することが可能となります。
10FXRAT関連ファイルの展開
図11に示す通り、マルウェア内部にハードコードされている暗号化された10FXRAT関連ファイル(usoclient64.exe, dnssd.dll, runtime.bin, vcruntime140.dll)を、Incremental XORを用いて復号します。この際、データの先頭1バイト目はデータを抽出する間隔を示しており、その間隔で抽出されたデータの先頭1バイトがXORの初期キーとなります。
図11のオフセットunk_1402A47E6を例にとると、データの先頭が0x03であるため、3バイト間隔でデータが抽出されます。これにより、抽出された最初のデータである0xF7が初期キーとして設定され、続く抽出データ(0xBA, 0xA2, 0x69, 0xFA ...)に対してIncremental XORによる復号が行われます。復号後、これらのファイルを「%LocalAppData%¥AppNetSvc」に展開した後、正規実行ファイルであるusoclient64.exeを起動します。
PoisonXドライバ
PoisonXドライバは、図12に示すようなMicrosoftの正規署名が付与されたカーネルドライバであり、BYOVD攻撃のツールとしてセキュリティ製品のプロセス停止や対象プロセスおよびそのネットワーク通信の隠蔽を行うために悪用されています。また、このドライバの内部には、マルウェアの名称の由来となったPoisonXという文字列を含むPDBファイルパスが残されています(図13)。
デバイスの作成とインタフェースの構築
このカーネルドライバがシステムにロードされると、エントリーポイントであるDriverEntry関数が実行されます(図14)。デバイス名およびシンボリックリンク名はXOR(キー:0x3A)で暗号化された状態で保持されており、実行時に動的に復号されます。
復号後、カーネル空間にデバイス「¥Device¥{F8284233-48F4-4680-ADDD-F8284233}」を作成します。さらに、ユーザーモードからのインタフェースとしてシンボリックリンク「¥DosDevices¥{F8284233-48F4-4680-ADDD-F8284233}」を設定し、マルウェア本体からのIOCTLリクエストを受け付ける準備を整えます。
IOCTLリクエストの処理
図15は、カーネルドライバ側でIOCTLリクエストを処理するディスパッチルーチンの実装コードです。前述したように、このドライバは特定のIOCTLコードを受信することで悪意のある動作を開始します。具体的には、0x22E010を受信すると指定されたPIDのプロセスを強制終了させてセキュリティ製品を無効化し、0x22E008を受信すると対象プロセスおよびそのネットワーク通信の隠蔽を行います。
10FXRAT
10FXRATはモジュール(プラグイン)型のマルウェアであり、必要な機能を動的に追加・実行できる仕組みを備えています。C2サーバからモジュールをダウンロードして読み込むことで、自身の機能を柔軟に拡張することが可能です。いくつかの類似検体のコンパイルタイムを調査したところ、最も古いもので2026年3月29日のタイムスタンプが確認されており、同時期から本攻撃キャンペーンが開始された可能性が考えられます。
10FXRATの実行フロー
図16は、10FXRATの実行フローを示しています。10FXRATは、正規アプリケーションの実行に伴って読み込まれる手法(DLLサイドローディング)を悪用して実行されます。10FXRATローダ「dnssd.dll」は、暗号化された10FXRATのペイロードが含まれるファイル「runtime.bin」を読み込み、XORで復号し、10FXRATを展開後、動作を開始します。また、PoisonXドライバ「DevCfgCC.sys」の再配置やサービスランチャーとして動作する「SysProfileSvc.exe」を作成します。
10FXRATローダ
本マルウェアは、DLLサイドローディングを利用しており、DLLのエントリーポイントであるDllMain関数から呼び出されることで動作を開始します。実行後、マルウェアはPoisonXドライバと通信を行い、呼び出し元である自身のプロセス(usoclient64.exe)を隠蔽します。さらに、システムへの永続化設定やWindows Defenderの無効化など、検知を回避するための様々な操作を実行します。
これらの準備処理が完了すると、主目的である10FXRATを実行するため、同一ディレクトリ内に配置された暗号化ペイロードファイル(runtime.bin)を読み込みます。同ファイルの先頭1バイトを初期キーとするIncremental XORを用いてペイロードを復号し、メモリ上で直接展開して実行します(図17)。
Microsoft Defender無効化
このマルウェアは、検知回避を目的としてMicrosoft Defenderの機能を無効化し、以下の動作を行います。
スキャン除外パスの登録
マルウェア自身の実行パスや作業ディレクトリをスキャン対象外とするため、以下のレジストリに除外パスを登録します。
HKLM¥SOFTWARE¥Microsoft¥Windows Defender¥Exclusions¥Paths
なお、レジストリ操作に失敗した場合は、下記PowerShellのコマンドレットを用いて追加を試みます。
「powershell.exe -NoP -NonI -W Hidden -C "Add-MpPreference -ExclusionPath '%LocalAppData%¥AppNetSvc','C:¥Users¥Alston¥AppData¥Local¥Temp','C:¥ProgramData¥Microsoft¥WinDiagTrack' -Force"」
リアルタイム保護と振る舞い監視の無効化
以下のレジストリキーに特定の値を設定し、リアルタイム保護、振る舞い監視、オンアクセス保護などの主要な検知機能を無効化します(図18)。
HKLM¥SOFTWARE¥Policies¥Microsoft¥Windows Defender¥Real-Time Protection
クラウド連携およびサンプル自動送信のブロック
以下のレジストリキーを操作し、クラウドベースの保護(MAPS)への脅威情報の報告や疑わしいファイルのMicrosoftへの自動送信機能を無効化します。
HKLM¥SOFTWARE¥Policies¥Microsoft¥Windows Defender¥Spynet
セキュリティ警告通知の非表示
以下のレジストリキーを操作してWindows Security Centerからの警告通知を非表示にします。
HKLM¥SOFTWARE¥Policies¥Microsoft¥Windows Defender Security Center¥Notifications
HKLM¥SOFTWARE¥Microsoft¥Windows Defender Security Center¥Notifications
セキュリティ関連サービスの強制停止
以下コマンドを実行し、Windows Defender(WinDefend)、セキュリティセンター(wscsvc)、およびDefender for Endpoint(Sense)の各サービスを終了させます。
「cmd.exe /c net stop WinDefend /y >nul 2>&1 & net stop wscsvc /y >nul 2>&1 & net stop Sense /y >nul 2>&1」
永続化設定
このマルウェアは、システム再起動後も自動的に実行されるよう、永続化を確立します。まず、永続化用のディレクトリとして「%ProgramData%¥Microsoft¥WinDiagTrack」を作成します。次に「%LocalAppData%¥AppNetSvc」から当該ディレクトリへ10FXRATの関連ファイル(usoclient64.exe、vcruntime140.dll、dnssd.dll、runtime.bin)をコピーし、以下に示す永続化処理を実行します。
Runキーへの登録
以下のレジストリキーにWinDiagTrackという名前で、usoclient64.exeのパスを登録します(図19)。
HKCU¥Software¥Microsoft¥Windows¥CurrentVersion¥Run
PoisonXドライバの抽出とサービス登録
PoisonXローダの内部には、PXDropperに含まれていたものと同一のPoisonXドライバが、Incremental XOR(初期キー:0x67)で暗号化された状態で内包されています。ローダはこれを復号し、「DevCfgCC.sys」というファイル名で永続化ディレクトリへ書き出し、OSの起動時に自動的に読み込まれるよう、システムにサービスとして登録します。
サービスランチャーの抽出とサービス登録
同様にPoisonXローダの内部には、サービス起動用の実行ファイルもIncremental XOR(初期キー:0x3C)で暗号化された状態で内包されています。ローダはこの実行ファイルを復号し、「SysProfileSvc.exe」というファイル名で永続化ディレクトリへ書き出したのち、新たなサービスとして登録します。この「SysProfileSvc.exe」は、マルウェアのサービスランチャーとして機能します。DLLサイドローディング攻撃の起点となる正規ファイル(usoclient64.exe)をバックグラウンドで起動するだけでなく、図20に示すように当該プロセスを常時監視し、強制終了された場合には再起動させます。
10FXRAT
10FXRATは、C/C++で開発されたモジュール型マルウェアです。本マルウェアは標準機能として、システム情報の収集、任意のコマンド実行、SOCKS5トンネリングなど、複数のC2コマンドに対応しています。さらに、C2サーバから追加のプラグイン(拡張モジュール)を動的にダウンロードして機能を拡張する仕組みを備えています。これにより、キーロガーやクリップボードの監視、暗号資産ウォレットの窃取、Telegram関連の情報窃取といった、より多様な攻撃タスクの実行が可能になります。
表層的な特徴
10FXRATは64bitアーキテクチャのDLLファイルであり、ローダからエクスポート関数「StartPayload」が呼び出されることで動作を開始します。PEヘッダのエクスポートディレクトリには、元のDLLファイル名(Original DLL Name)を示す「payload64.dll」という文字列が記録されています。この文字列は、同種の他のサンプルにも共通して見られる特徴的な痕跡です(図21)。
また、C2サーバの接続先およびポート番号は、暗号化や難読化が施されることなく、平文のままバイナリ内にハードコードされています(図22)。
API Hashing
本マルウェアはAPI Hashingテクニックを用いており、必要なWindows APIのアドレスを実行時にハッシュ値から動的解決します。この際DJB2ベースのアルゴリズム(add1505Shl5Hash32)を使用してハッシュ値の算出を行います。図23は、10FXRAT内にハードコードされたハッシュ値と、取得対象のWindows APIの関数の一例を表しています。
C2通信
10FXRATは、独自プロトコルを使用してTCP通信を行います。通信プロトコルは、「12バイトの固定長ヘッダ」と「可変長のペイロード(データ本体)」で構成されています(図24)。パケットの先頭には識別用のマジックナンバーとして0x58463031(リトルエンディアンで"10FX")が利用されています。
図25は、初期通信の例です。この例では、青い破線で示す12バイトのヘッダ情報のあとにペイロードデータとして、JSONフォーマットで表1に示す感染端末に含まれる様々なデータを送信します。また、このマルウェアはこの初期通信を送信後、C2サーバから応答があるまで、ハートビート通信を定期的に送信し、端末がオンラインであることを知らせます。
JSONキー、「encChat」、「socialApps」、「antivirus」、「cryptoWallet」で対象となるプロセスや製品、IDなどの詳細情報はAppendixの表5から表10に列挙していますのでそちらを参照ください。
| JSONキー | 収集情報 |
|---|---|
| computerName | コンピュータ名 |
| userName | 現在ログインしているユーザー名 |
| os | OSのバージョンとビルド番号 |
| arch | OSのアーキテクチャ |
| cpuCores | CPUの論理コア数 |
| memoryMB | 搭載されている物理メモリの容量(MB) |
| isAdmin | 管理者権限で動作しているか |
| integrity | プロセスの完全性レベル |
| hasCamera | Webカメラが接続されているか |
| windowTitle | 現在ユーザーが操作しているアクティブウィンドウのタイトル |
| installDate | マルウェア感染日時 |
| encChat | 暗号化メッセンジャーアプリの有無 |
| socialApps | SNSアプリの有無 |
| antivirus | セキュリティ製品の有無 |
| cryptoWallet | 暗号資産ウォレット等の有無 |
| screenW / screenH | モニターの画面解像度(幅・高さ) |
C2コマンド
10FXRATがサポートする主要なC2コマンドは表2および表3に示す通りです。2026年4月に観測された検体と比較して、5月の検体では新たにコマンドID 0x08(マウス・キーボード操作のエミュレート)および0x04(圧縮データの転送)が実装されていることを確認しています。このように、攻撃者は現在もマルウェアの改良を活発に行っていることがうかがえます。今後も同様の攻撃は継続していくとみられ、さらなる機能追加やC2コマンドの拡充が進む可能性が高いと推測されます。
| コマンドID | 説明 |
|---|---|
| 0x00 | ハートビート(通信確認)の要求 |
| 0x02 | リモートシェルの実行 |
| 0x08 | マウス・キーボード操作のエミュレート |
| 0x10 | 組み込みタスクの実行 |
| 0x21 | プラグイン(拡張モジュール)の受信・展開 |
| 0x30 | SOCKS5プロキシ通信 |
| コマンドID | 説明 |
|---|---|
| 0x00 | ハートビート(通信確認)の応答 |
| 0x01 | 初期通信(端末情報)の送信 |
| 0x03 | リモートシェル(0x02)の実行結果の送信 |
| 0x04 | 圧縮データ(画面・ファイル等)の送信 |
| 0x11 | 組み込みタスク(0x10)の実行結果の送信 |
| 0x20 | プラグイン(拡張モジュール)のダウンロード要求 |
| 0x30 | SOCKS5プロキシのトンネルデータの送信 |
マルウェアがC2サーバからコマンドID 0x10のリクエストを受信すると、JSONペイロードで指定されたタスクを実行します。本検体には、標準で22種類の組み込みタスクが実装されています。一例として、指定されたプロセスを強制終了するタスク(KILL_PROC)のペイロード構造を図26に示します。typeキーにタスク名(KILL_PROC)を指定し、pidキーに終了させるプロセスIDを指定して実行します。その他の組み込みタスクの詳細な機能一覧については、Appendixの表11の組み込みタスク一覧を参照してください。
プラグインの受信と展開
C2サーバからコマンドIDが0x21のリクエストを受信すると、プラグイン(拡張モジュール)の受信と展開が行われます。リクエストのペイロードは図27に示す構造をしており、「プラグイン名」、「XORキー」や「ディスクへの書き出し有無(永続化フラグ)」が格納され、最後に「XORで暗号化されたプラグイン本体」が含まれています。 ディスクへの書き出しのフラグが付与されていた場合、プラグインはAES-256-CBCで暗号化され、plugin.datというファイル名で10FXRATと同一のディレクトリに作成されます。
plugin.datは図28の構造を持ち、先頭のマジックナンバーとして「PLG¥x02」が含まれている特徴があります。ファイルの暗号化および復号キーには、「コンピュータ名とCドライブのボリュームシリアル番号をコロンで連結した文字列(例:ComputerName:VolumeSerial)」のSHA-256ハッシュ値が使用されます。マルウェアは起動時にこのファイルを読み込み、復号後、メモリ上で直接プラグインとして展開・実行します。
また、本検体のバイナリ内には、実際の動作は確認できていないものの、組み込みタスク以外のタスク文字列も多数ハードコードされています(Appendixの表12の追加タスク一覧)。これらは、C2サーバからロードされる追加プラグインによって追加で提供される機能であると考えられます。タスク名から推測される機能は多岐にわたり、ブラウザ情報の窃取、キーロガー、暗号資産の窃取、Telegramの操作、隠しデスクトップ(hVNC)、権限昇格、およびファイル操作などが含まれます。
SOCKS5トンネリング(リバースプロキシ)
C2サーバからコマンドIDが0x30のリクエストを受信すると、本マルウェアはSOCKS5プロキシとして動作し、トンネリング通信の処理を行います。このコマンドのペイロードは図29に示す構造を持ち、先頭の4バイトでトンネルID(チャネル識別子)を、続く1バイトでサブコマンド(1:接続確立、2:データ転送、3:切断)を指定します。攻撃者はこの機能を利用することで、感染端末を踏み台にして内部ネットワークへの横展開を行うことが可能です。
攻撃痕跡の確認方法と検出
今回紹介したマルウェアは、Windowsサービスの悪用や自動起動用レジストリキーの登録、PoisonXドライバの作成などの痕跡を残します。これらの有無や内容を確認することで、攻撃の有無や影響範囲を調査することが可能です。以下に、その確認方法の一例を紹介します。
永続化設定の確認
10FXRATやPoisonXドライバが自動起動する設定かを確認するため、以下の自動起動エントリやWindowsサービスが存在しないか調査します(図30、図31、図32)。
| 自動起動レジストリキー | WinDiagTrack |
|---|---|
| Windowsサービス | Microsoft Device Setup |
| Windowsサービス(ドライバ) | Hid[ランダムな4桁の16進数] や DevCfgCC |
なお、これらのレジストリ値やサービス名は検体によって変化する可能性があります。そのため、Sysinternalsの「Autoruns」などの調査ツールを活用し、システム全体の自動起動エントリを網羅的に点検して、不審なプログラムが登録されていないかを確認することが推奨されます。
イベントログの確認
カーネルドライバがインストールされるため、イベントログ(システム)のイベントID 7045において、ドライバサービスが意図せず作成されていないか確認します。
通信による検出
10FXRATは、TCP通信のペイロード先頭(オフセット0)に、特有のマジックナンバー0x58463031を含めるため、このようなトラフィックが存在しないか確認します。このシグネチャは、マルウェアからC2サーバへの送信、およびC2サーバからの受信の双方向のトラフィックで観測することが可能です。
さいごに
今回は、日本の組織を標的としたPoisonXドライバおよび10FXRATを用いた攻撃キャンペーンについて解説しました。BYOVD攻撃は、セキュリティ製品を無効化するための強力な手段であり、近年APTグループやランサムウェア攻撃者が頻繁に利用する手口となっています。また、今回解析した10FXRATは多機能なモジュール型マルウェアですが、一部に未実装のコマンドが見受けられることから、現在も開発途上にあると推測されます。攻撃者は今後も機能の改善や検知回避技術の向上を図り、新たな攻撃キャンペーンに同種のマルウェアを利用してくる可能性が高いと考えます。
なお、本キャンペーンの背後にいる攻撃者グループについては、その攻撃手口(TTPs)や標的の傾向から、中国の攻撃者グループ「Silver Fox」の関与が低〜中程度の確度で推測されます。しかしながら、現時点では同グループの犯行と断定するに足る決定的な証拠は得られていません。
これらの状況を踏まえ、組織は日々のセキュリティ運用とインシデント対応プロセスを強化するとともに、脆弱性の放置や不適切なアカウント管理といった「攻撃の起点」を継続的に排除することが重要です。さらに、EDRを活用したエンドポイントの挙動監視や、ネットワーク機器による不正通信の検知・遮断など、多層的な防御対策を講じることが不可欠です。私たちは今後も、これらマルウェアについて継続的に調査を行い、その結果を広く情報提供します。ぜひご活用いただければ幸いです。
Appendix
| プロセス名 | 製品・ベンダー名 |
|---|---|
| msmpeng.exe | Microsoft Defender |
| mssense.exe | Microsoft Defender for Endpoint |
| securityhealthservice.exe | Microsoft Defender |
| securityhealthsystray.exe | Microsoft Defender |
| securityhealthhost.exe | Microsoft Defender |
| csfalconservice.exe | CrowdStrike |
| avp.exe | Kaspersky |
| avpui.exe | Kaspersky |
| pccntmon.exe | Trend Micro |
| coreserviceshell.exe | Trend Micro |
| mcshield.exe | McAfee |
| mfetp.exe | McAfee |
| bdagent.exe | Bitdefender |
| bdservicehost.exe | Bitdefender |
| bdntwrk.exe | Bitdefender |
| savservice.exe | Sophos |
| sophoshealth.exe | Sophos |
| avastui.exe | Avast |
| avastsvc.exe | Avast |
| avgui.exe | AVG |
| avgsvc.exe | AVG |
| nscsvc.exe | Norton / Symantec |
| navapsvc.exe | Norton / Symantec |
| ekrn.exe | ESET |
| egui.exe | ESET |
| mbamservice.exe | Malwarebytes |
| mbamtray.exe | Malwarebytes |
| 360safe.exe | 360 Total Security(奇虎360) |
| 360tray.exe | 360 Total Security(奇虎360) |
| 360sd.exe | 360 Total Security(奇虎360) |
| zhudongfangyu.exe | 360 Total Security(奇虎360) |
| 360rp.exe | 360 Total Security(奇虎360) |
| 360leakfixer.exe | 360 Total Security(奇虎360) |
| hipstray.exe | Huorong Security(火絨安全) |
| hipsdaemon.exe | Huorong Security(火絨安全) |
| wsctrlsvc.exe | Huorong Security(火絨安全) |
| usysdiag.exe | Huorong Security(火絨安全) |
| qqpctray.exe | Tencent PC Manager(腾讯電腦管家) |
| qqpcmgr.exe | Tencent PC Manager(腾讯電腦管家) |
| tav.exe | Tencent PC Manager(腾讯電腦管家) |
| kavtray.exe | Kingsoft(金山毒霸) |
| kxetray.exe | Kingsoft(金山毒霸) |
| kwsprotect64.exe | Kingsoft(金山毒霸) |
| プロセス名 | 製品・ベンダー名 | フラグ |
|---|---|---|
| BatChat.exe | BatChat | BC |
| Signal.exe | Signal | SG |
| WhatsApp.exe | WS | |
| Threema.exe | Threema | TM |
| Potato.exe | Potato Chat | PT |
| Telegram.exe | Telegram | TG |
| プロセス名 | 製品・ベンダー名 | フラグ |
|---|---|---|
| WeChat.exe | WeChat / 微信(Tencent) | BC |
| Feishu.exe | Feishu / 飛書(ByteDance) | FS |
| Lark.exe | Lark(ByteDance) | Lark |
| DingTalk.exe | DingTalk / 釘釘(Alibaba) | DD |
| wxwork.exe | WeCom / 企業微信(Tencent) | QY |
| プロセス名 | 製品・ベンダー名 | フラグ |
|---|---|---|
| 360Tray.exe | 360 Total Security(360安全卫士) | 360 |
| 360sd.exe | 360 Antivirus(360杀毒) | 360SD |
| HipsTray.exe | Huorong Security(火绒安全) | HR |
| wsctrl.exe | Huorong Security(火绒安全) | HR |
| QQPCTray.exe | Tencent PC Manager(腾讯电脑管家) | |
| QQPCRTP.exe | Tencent PC Manager(QQ电脑管家) | |
| KSafeTray.exe | Kingsoft Antivirus(金山毒霸) | JD |
| MsMpEng.exe | Windows Defender | WD |
| avp.exe | Kaspersky | KS |
| avgui.exe | AVG | AVG |
| avguard.exe | Avira | AV |
| mbam.exe | Malwarebytes | MB |
| egui.exe | ESET | ES |
| NortonSecurity.exe | Norton | NT |
| mcshield.exe | McAfee | MC |
| bdagent.exe | Bitdefender | BD |
| SophosUI.exe | Sophos | SP |
| PandaAgent.exe | Panda Security | PD |
| fshoster32.exe | F-Secure | FS |
| dwengine.exe | Dr.Web | DW |
| cis.exe | Comodo Internet Security | CM |
| cmdagent.exe | Comodo | CM |
| vba32arkit.exe | VBA32 | VB |
| zlclient.exe | ZoneAlarm | ZA |
| GData | G Data | GD |
| 拡張機能ID | 製品・ベンダー名 | フラグ |
|---|---|---|
| nkbihfbeogaeaoehlefnkodbefgpgknn | MetaMask | MM |
| bfnaelmomeimhlpmgjnjophhpkkoljpa | Phantom | PH |
| ibnejdfjmmkpcnlpebklmnkoeoihofec | TronLink | TP |
| egjidjbpglichdcondbcbdnbeeppgdph | Trust Wallet | TW |
| hnfanknocfeofbddgcijnmhnfnkdnaad | Coinbase Wallet | CB |
| aiifbnbfobpmeekipheeijimdpnlpgpp | Terra Station Wallet | TH |
| fhbohimaelbohpjbbldcngcnapndodjp | Binance Chain Wallet | BN |
| mcohilncbfahbmgdjkbpemcciiolgcge | OKX Wallet | OKX |
| jblndlipeogpafnldhgmapagcccfchpi | KuCoin Wallet | KC |
| lgmpcpglpngdoalbgeoldeajfclnhafa | SafePal Wallet | SW |
| ffnbelfdoeiohenkjibnmadjiehjhajb | Yoroi Wallet | YR |
| jnlgamecbpmbajjfhmmmlhejkemejdma | BitKeep(現 Bitget Wallet) | BV |
| aholpfdialjgjfhomihkjbmgjidlcdno | Exodus Web3 Wallet | XD |
| bhhhlbepdkbapadjdnnojkbgioiodbic | Sollet | SO |
| kpfopkelmapcoipemfendmdcghnegimn | Liquality Wallet | LG |
| ドメイン | 製品・ベンダー名 | フラグ |
|---|---|---|
| binance.com | Binance | WEB |
| coinbase.com | Coinbase | WEB |
| okx.com | OKX | WEB |
| huobi.com | Huobi | WEB |
| bybit.com | Bybit | WEB |
| kraken.com | Kraken | WEB |
| bitget.com | Bitget | WEB |
| kucoin.com | KuCoin | WEB |
| mexc.com | MEXC Global | WEB |
| gate.io | Gate.io | WEB |
| uniswap | Uniswap | WEB |
| pancakeswap | PancakeSwap | WEB |
| opensea.io | OpenSea | WEB |
| metamask.io | MetaMask | WEB |
| プロセス名 | 製品・ベンダー名 | フラグ |
|---|---|---|
| Exodus.exe | Exodus | EXO |
| Electrum.exe | Electrum | ELC |
| Wasabi Wallet.exe | Wasabi Wallet | WSB |
| Atomic.exe | Atomic Wallet | ATM |
| Ledger Live.exe | Ledger Live | LED |
| Exodus.exe | Exodus | EXO |
| タスク名(type) | ペイロード(payload) | 概要 |
|---|---|---|
| GET_PROCS | - | 実行中の全プロセス一覧とフルパスを取得 |
| KILL_PROC | "pid": | 指定したPIDのプロセスを強制終了 |
| FREEZE_PROC | "pid": | 指定したPIDのプロセスの全スレッドを一時停止 |
| UNFREEZE_PROC | "pid": | 一時停止させたプロセスを再開 |
| GET_SERVICES | - | Windowsの全サービスの一覧と稼働状態を取得 |
| CONTROL_SERVICE | "serviceName": "xxx", "action": "start|stop|pause|resume | 指定したサービスを開始、停止、一時停止、または再開 |
| GET_WINDOWS | - | 現在開かれているウィンドウのリストを取得 |
| CONTROL_WINDOW | "handle":xxx, "action": "close|minimize|maximize|restore|hide|show" | 指定したハンドルのウィンドウを閉じる、最小化する、または非表示にする |
| GET_SYS_SUMMARY | - | PCスペック、ウォレット有無、管理者権限などを再取得 |
| GET_STARTUP_ITEMS | - | レジストリから、OS起動時に自動実行されるプログラム一覧を取得 |
| GET_SOFTWARE_LIST | - | インストールされているソフトウェア一覧を取得 |
| GET_NET_CONNECTIONS | - | TCP通信を利用するプロセス情報 |
| SHELL_EXEC | "command":"xxx" | 任意のコマンドを実行 |
| CHANGE_SERVER_IP | "ip": "xxx", "port": "xxx" | ペイロードファイルを書き換え、C2サーバの接続先およびポート番号を変更 |
| PLUGIN_QUERY | - | ロードされている追加プラグインの一覧を返す。 |
| SOCKS5_START | - | Socks5プロキシの開始 |
| SOCKS5_STOP | - | Socks5プロキシを停止 |
| SELF_UPDATE_PAYLOA | "data":"Base64 data" | マルウェアが自分自身を更新 |
| SELF_RESTART | - | マルウェアのプロセスを再起動 |
| START_CAMERA | - | 未実装 |
| STOP_CAMERA | - | 未実装 |
| SWITCH_DISPLAY | - | 未実装 |
| タスク名(type) | 概要 |
|---|---|
| START_SCREEN / STOP_SCREEN | 画面転送の開始・停止 |
| MOUSE_EVENT / KEY_EVENT / SPECIAL_KEY | マウス・キーボードの遠隔操作 |
| BLOCK_INPUT | キーボードやマウス操作を無効化 |
| GET_DISPLAYS / MONITOR_STATE | モニターの取得や状態確認 |
| BROWSER_PASSWORDS | ブラウザに保存されたパスワードの窃取 |
| BROWSER_COOKIES | ブラウザのCookieの窃取 |
| BROWSER_EXTENSIONS | ブラウザ拡張機能(暗号資産ウォレット等)の窃取 |
| START_KEYLOGGER / GET_KEYLOG_HISTORY | キーロガーの起動とキーログ取得 |
| CLIPBOARD_MONITOR_START | クリップボードの監視 |
| CRYPTO_SWAP_START | クリップボード内の暗号資産アドレスのすり替え |
| CRYPTO_SWAP_SET_CONFIG | 変更対象のウォレットアドレスを設定 |
| TG_ENUM / TG_KILL / TG_RESTART | Telegramプロセスの操作 |
| TG_DOWNLOAD_TDATA | Telegramのセッションデータ(tdata)の窃取 |
| TG_SET_PROXY | Telegramのプロキシ設定 |
| TG_PATCH_ARCHIVE | Telegramバイナリへのパッチ適用 |
| HDESK_CREATE / HDESK_DESTROY | 隠しデスクトップ(hVNC)の作成・破棄 |
| HDESK_START_STREAM / HDESK_RUN | 隠し画面の実行・転送 |
| HDESK_LIST_WINDOWS | 隠しデスクトップ上のウィンドウ一覧取得 |
| DOWNLOAD_FILE / UPLOAD_FILE | ファイルの送受信 |
| EXEC_FILE / DELETE_FILE | プログラムの実行・削除 |
| ELEVATE | 権限昇格 |
| CLEAN_TRACES / WIPE_CREDENTIALS | 痕跡の消去、認証情報の削除 |
IOC(Indicator Of Compromised)
| Indicator | Type | Context |
|---|---|---|
| 5f3ba5a54f05a2be7191c1f4cc834a27bbb5a376420f99246e1fff3c9d33d869 | SHA-256 | PXDropper |
| d416cf363968ab43e2339007a4cdf9a2d4baeb87752c8f809c0cbd7881490905 | SHA-256 | PXDropper |
| ad022169abf4e46161eb007fde2a9c3841d73cdb9d8e895719321348d7d28c2b | SHA-256 | PXDropper |
| 9d54e751d1b5a8bf868f1a168e98a727a576b500564d245f6371e02f0696cb05 | SHA-256 | PXDropper |
| 989c7646783861ec191336b0fea55ad49282268f97678f2b77f4406cd2d516ea | SHA-256 | PXDropper |
| 4cb3a8d5248bdf2298056c08622fe0c354e0d4beeef77ee7d1bc8d47fc46ed57 | SHA-256 | PXDropper |
| 3840e1032485f77dbc1be8307868d4a528199edf80eab217e11f46e998cab96b | SHA-256 | PXDropper |
| aa6ba4ac4cc6ee56ed87055e91aaa186bc06a5e48dfbf8a36de0ea3205cb0614 | SHA-256 | PXDropper |
| 1dc91978f9a184b47d34751c48538e08c1af3f44ee12a6e0b5ebbba7f18e0185 | SHA-256 | PXDropper(Variant) |
| 61ad516612d11eb7ae3859a16bb741671a33a47d720b20b3d5ae63365aedaad5 | SHA-256 | LNK |
| d2ae850b0488951ea8ab1873fa5af7a4b0f1318a2ab8a36c01c9f399ba0800ca | SHA-256 | 10FXRAT Loader |
| d750dd0ad36e7293df620bb50e025651f24462e96d28dc4c4f0153268c27a98e | SHA-256 | 10FXRAT Loader |
| d2ae850b0488951ea8ab1873fa5af7a4b0f1318a2ab8a36c01c9f399ba0800ca | SHA-256 | 10FXRAT Loader |
| 5921e03cb937295a0e3250045a2119b89408f4059c2be3ed0c9b001a16642346 | SHA-256 | 10FXRAT Loader |
| a14034f391c6a54bc03b132b1371c106f809f1f2dd695322c2354da0e1f8d66e | SHA-256 | 10FXRAT Loader |
| 398a137205b3d93e8efbbf82be36d759376b9076ce2b73fb7ace435a1602e3e1 | SHA-256 | 10FXRAT Loader |
| 5780bb2e770c1264a7eb08a6fcd8ab5f278ba50d2992567d7f6d3712ecee3e3a | SHA-256 | 10FXRAT Loader |
| cb7f1ae30628d238ccf2486238f412c67cbdff29c293f82712f577f043c944f4 | SHA-256 | 10FXRAT Loader |
| 2f8c9a84946b2167e000c5013981e18ac8dde3e181a202c18d9833c7db7a5eb3 | SHA-256 | 10FXRAT Loader |
| 0fb45474ca58bd67220f79b0e3b07f940270c371ba56e27d3e2b99bf4dbb5174 | SHA-256 | Archive |
| b892981af3ca699d13f07ddcf75c2df62c1543b071278b4cc1ac0993d8b9dc01 | SHA-256 | Archive |
| fc70197f8a3e7788d9eefb323a8fd9a0c6e855168136a0a290c372067fa3f522 | SHA-256 | Archive |
| cbbdc18c428fd7601fa51a6437da539ad58348e3e1049197024a05aeca6ac0c8 | SHA-256 | Archive |
| d0a41b72f3555bffde91a3691c44e40d96441e0ec2e44bcd13a8c862475fb47b | SHA-256 | Archive |
| c2977d86e61f2b0e6ccbae20f632553487418566fbefdf57953c82312a199291 | SHA-256 | 10FXRAT |
| d6745ec2437826c50f9c6b8c38d21387f2babe44d819e361fc29450f72cfea6d | SHA-256 | 10FXRAT |
| 45ee03334f320689e213382a7d4a42b1fcf6754eb49eb24c063e9f1a1f5057ac | SHA-256 | 10FXRAT |
| d075e163f0a7b14ff9fafc34b85503238001e94b73fe51dcf6bcc7c8f4c3cd0c | SHA-256 | 10FXRAT |
| 3784b9a72315ddde9bf5b6c40b75307077a0d394e1970422b8eea7f566e3b008 | SHA-256 | 10FXRAT |
| 8daf35c88da4b83b9d01ae36be99394ad296ea1de868c293fc5cb53b9538a848 | SHA-256 | 10FXRAT |
| a5c8faa22ad4b7ab2c4f5a521002c5e4d3a7b9c8e759de54ff8032c61f9ef892 | SHA-256 | 10FXRAT |
| dc03b035988b9e1541d6551d523859abf8bfa028f999e0cfa351535724a57937 | SHA-256 | 10FXRAT |
| 507a3bd184c32b66645d6aaa7e976e667ee067a10475ef26ba05d17004d34783 | SHA-256 | 10FXRAT |
| 18f9d838be08b4fbe93a504b534a25af35d5cfb872bf5a2d1a00a38666adf05d | SHA-256 | 10FXRAT |
| f6351b4f55d7c69c0c237e711f4fbd295cfdd9b9d0aa7132272accccd41424fc | SHA-256 | 10FXRAT |
| e8bbfaa08f439c023275b69374e4571d4c9e98810e6728f593d2e2c01d7ab36a | SHA-256 | 10FXRAT |
| ea92eb8560be21920ab3e917b1fa9fa2f73eb9fae7c8c61efb351ffc46e10b42 | SHA-256 | 10FXRAT |
| 249140ec643efec958ca18df77a6ce8d66f48ba066b7f4b3c07af1357f773c5e | SHA-256 | 10FXRAT |
| 2862f94e244b33e46e783c006c1ee0fd314e53739bdce072487ec598b9679554 | SHA-256 | 10FXRAT |
| 34fd921c94f0a97b5154259a7690e500da7f8314945e28c1f23da10e04334cc7 | SHA-256 | 10FXRAT |
| 6e7b2ba60948761571f8f5a5fed1ef65291ba561ccfd2e67176446690eaa45e3 | SHA-256 | 10FXRAT |
| cef602cf75713e82b7d377952918f15c484e3e44f55ee950036368da4ee7ca4b | SHA-256 | 10FXRAT |
| 185d48d401b7122110d6efefec99edfe23d3e6c32e9069d30c5153f68337e5b7 | SHA-256 | 10FXRAT |
| db4b5a8ffd1d8bf5d7fc9b60b46a0fdf89ce77579cea6e439d06a5aee8b5c533 | SHA-256 | 10FXRAT |
| 93a830aa48de0a51e369d27b9561ac0fd034ee4839f4141274d35e8b10c80be5 | SHA-256 | 10FXRAT |
| 0c28722f65ea34adf7f1ea4d9ce85efdd23b12e8b29cb7ffc532cc4d65cc0d70 | SHA-256 | 10FXRAT |
| 3e0180642c4f6584a1fd669a287894d10a66368fd1c5a5b0bc37200884513df8 | SHA-256 | 10FXRAT |
| bf0fdd4e386be8b3372149b0008247b79c8a8ff6ccafc2cab373ac2e864183ee | SHA-256 | 10FXRAT |
| 75a69700d3633e1a26f444dcad50cb73411c2217485fa297c8f19b24437ab605 | SHA-256 | 10FXRAT |
| e34539e573256908d4b2cb3bfafed5b2265366c105b3a87677d9613429a327c9 | SHA-256 | 10FXRAT |
| 101.32.190[.]202 | C2 | 10FXRAT |
| 118.107.0[.]147 | C2 | 10FXRAT |
| 154.211.86[.]78 | C2 | 10FXRAT |
| 154.36.180[.]151 | C2 | 10FXRAT |
| 16.163.85[.]163 | C2 | 10FXRAT |
| 206.119.176[.]200 | C2 | 10FXRAT |
| 38.76.177[.]39 | C2 | 10FXRAT |
| 38.76.177[.]41 | C2 | 10FXRAT |
| 38.76.177[.]46 | C2 | 10FXRAT |
| 38.76.216[.]30 | C2 | 10FXRAT |
| 38.76.216[.]9 | C2 | 10FXRAT |
| 43.99.101[.]175 | C2 | 10FXRAT |
タグ
- アーキテクト
- アジャイル開発
- アプリ開発
- インシデントレスポンス
- イベントレポート
- カスタマーストーリー
- カルチャー
- 官民学・業界連携
- 企業市民活動
- クラウド
- クラウドインテグレーション
- クラブ活動
- コーポレート
- 広報・マーケティング
- 攻撃者グループ
- もっと見る +
- 子育て、生活
- サイバー救急センター
- サイバー救急センターレポート
- サイバー攻撃
- サイバー犯罪
- サイバー・グリッド・ジャパン
- サプライチェーンリスク
- システム開発
- 趣味
- 障がい者採用
- 初心者向け
- 白浜シンポジウム
- 情シス向け
- 情報モラル
- 情報漏えい対策
- 人材開発・教育
- 診断30周年
- スレットインテリジェンス
- すごうで
- セキュリティ
- セキュリティ診断
- セキュリティ診断レポート
- 脆弱性
- 脆弱性管理
- ゼロトラスト
- 対談
- ダイバーシティ
- テレワーク
- データベース
- デジタルアイデンティティ
- 働き方改革
- 標的型攻撃
- プラス・セキュリティ人材
- モバイルアプリ
- ライター紹介
- ラックセキュリティアカデミー
- ランサムウェア
- リモートデスクトップ
- 1on1
- AI
- ASM
- CIS Controls
- CODE BLUE
- CTF
- CYBER GRID JOURNAL
- DevSecOps
- DX
- EC
- EDR
- FalconNest
- IoT
- IR
- JSOC
- JSOC INSIGHT
- LAC Security Insight
- NDR
- OWASP
- SASE
- Tech Crawling
- XDR









