🛡 概要
Googleの脅威インテリジェンス部門は、中国関与とされるAPT24が少なくとも3年にわたり未公開マルウェア「BadAudio」を用いたスパイ活動を展開していたと公表した。標的は主にWindowsで、侵入経路はスピアフィッシング、サプライチェーン汚染、水飲み場(ウォータリングホール)攻撃へと多層化・高度化。正規WebサイトやサードパーティのJavaScript配布基盤を悪用し、偽のソフトウェア更新ポップアップで被害端末にBadAudioを配布した。AVの検出回避と解析妨害が徹底され、複数サンプルが長期間ほぼ未検知状態で流通していた。CVSSスコアは現時点で公開されていない。
🔍 技術詳細
2022年11月から少なくとも2025年9月まで、APT24は20件超の正規公開サイトに悪性JavaScriptを注入し、訪問者を指紋採取(OS/ブラウザ/アーキテクチャ等)したうえで標的性が高いと判定した端末にのみ偽更新ポップアップを表示、BadAudioダウンロードへ誘導した。2024年7月以降は台湾のデジタルマーケティング企業が複数回侵害され、同社が配布する広汎なJSライブラリに不正コードを混入、さらに正規CDNに酷似したドメインを登録して1,000超のドメインを連鎖的に汚染した。2024年末〜2025年7月には、同ベンダの改変JSONを別JSから読み込ませる二段構えで難読化JSを実行し、各訪問者の指紋を収集してbase64で攻撃者サーバへ送信、応答で次段URLを選別配信する供給網攻撃が確認された。並行して2024年8月以降、動物保護団体を装うスピアフィッシングが展開され、Google DriveやOneDriveなど正規クラウドを配布面に悪用。開封確認用のトラッキングピクセルが仕込まれ、メールセキュリティをすり抜けたケースではBadAudioに到達している。
BadAudioローダは高度に難読化され、制御フロー平坦化により解析の手間を増大。実行はDLLの検索順序ハイジャックやDLLサイドローディングで正規プロセスに寄生し、メモリ内で次段ペイロードを展開する。初期実行時にホスト名・ユーザー名・アーキテクチャ等の基礎情報を収集し、ハードコードされたAES鍵で暗号化してC2へ送信、続いてAES暗号化済みの次段を受信・復号・メモリ実行する。観測例の一部ではCobalt Strike Beaconの投入が確認されたが、全事例で一貫していたわけではない。VirusTotal上の複数サンプルは2022年12月7日作成のものを含み、25超のエンジンで検知されたのは一部に限られ、多くは5製品以下の検知にとどまった。
⚠ 影響
・長期潜伏と選別攻撃により、機密情報の窃取と監視の継続が現実的。
・サプライチェーン(Webライブラリ)汚染により、一次標的以外の多数サイト利用者が踏み台化するリスク。
・正規クラウドや正規プロセス悪用で検出困難、従来のURL/ハッシュブロックに依存する防御は回避されやすい。
🛠 対策
・メール防御: DMARC/DKIM/SPFの厳格化、外部画像の自動読み込み無効化(トラッキングピクセル対策)、不審クラウドリンクの分離実行。
・エンドポイント: WDAC/Applockerで未署名・未知DLLの読み込みを制限、ASRルールでOfficeからの子プロセス・ペイロードロードを抑止、EDRでサイドローディング検知。
・ブラウザ/フロント: 外部JSの自己ホスト化、サブリソース完全性(SRI)と厳格CSP、依存ライブラリの固定バージョン・ハッシュピンニング。
・ネットワーク: DNSフィルタで新規登録ドメイン/類似ドメインの警戒、プロキシ/Firewallで未知外向き通信のデフォルト拒否+宛先FQDN許可制、TLS SNI/JA3の異常監視。
・ベンダ管理: サードパーティJS/タグマネージャの変更監査、署名付きアーティファクトと整合性検証、侵害時の迅速切替手順(フェイルセーフ)。
📌 SOC視点
・EDR/OSログ: DLL読み込みの異常(Sysmon EID 7: ImageLoaded)でユーザー書込可能ディレクトリからのロード、正規署名プロセスが未署名DLLをロードする挙動。プロセス生成(EID 1)でブラウザ→正規アップデータ風プロセス→短時間でネットワーク接続のチェーン。
・ネットワーク: base64様の小型POST/GETビacons、正規CDN類似ドメインへのTLS通信、クラウドストレージ直リンクの反復アクセスを相関。
・Web監視: 供給元JS/JSONのハッシュ差分検知、外部タグの動的追加、難読化関数(eval/Function/atob連鎖)の急増。
・メール: トラッキングピクセル(外部1px画像)へのアクセスログ、OneDrive/Drive共有リンクの高頻度クリックと同時刻の新規プロセス生成を相関。
・ハンティング: DLL検索順序狙いの既知ローダ群のロードパス、Cobalt Strike Beaconの既知C2パターン(可変Sleep、小型HTTP応答)をヒントにYARA/NetFlowで横串。
📈 MITRE ATT&CK
・Reconnaissance: T1592(被害端末情報の収集)—JSで訪問者指紋採取。
・Initial Access: T1189(Drive-by Compromise)—水飲み場での偽更新誘導。T1195.002(サプライチェーン汚染)—配布JS/JSON改変。T1566.002(リンク型スピアフィッシング)—クラウド配布リンクの悪用。
・Defense Evasion/Privilege Escalation: T1574.001(DLL検索順序ハイジャック)、T1574.002(DLLサイドローディング)、T1027(難読化/圧縮)。
・Discovery: T1082(システム情報の列挙)。
・Command and Control: T1573(暗号化通信)、T1071.001(Webプロトコル)。
・Exfiltration: T1041(C2チャネル上でのデータ送信)。
🏢 組織規模別助言
・小規模(〜50名): 外部JSを極力廃止し自己ホストへ。メールは画像自動表示禁止とURL分離を徹底。EDRはマネージドサービスを活用し既定ポリシーでDLLサイドローディング検知を有効化。
・中規模(50〜500名): WDAC/Applockerの段階導入、プロキシのFQDN許可リスト化、SRI/CSPを全主要ドメインに展開。タグマネージャの変更承認ワークフローと監査ログを整備。
・大規模(500名以上): 供給網リスク管理(第三者保証、SBOM/ハッシュ監査)、継続的脅威ハンティング体制、DLPとEDR/NDRの相関分析、Egress制御のゼロトラスト化、事業継続を意識したフェイルセーフなCDN/ライブラリ切替。
🔎 類似事例
・Polyfill.ioドメイン改ざん(2024)—広範なWebサプライチェーン影響。
・SocGholish(偽ブラウザ更新)—水飲み場での偽更新誘導手口。
・3CX(2023)—正規ソフト更新経路の汚染。
・SolarWinds(2020)—ビルド環境の侵害と長期潜伏。
・ua-parser-js(2021)—NPMパッケージの汚染。
本件に直接対応するCVE/CVSSの公表は確認されていない。
🧭 次の一手
まずは(1)外部JS/JSONの現行配下を全洗い出し、ハッシュ固定とSRI/CSPを適用、(2)EDRでDLLロードの異常検出ルールを即時有効化、(3)メール画像の自動表示を全社無効化、(4)EgressをFQDN許可制へ移行。(5)その後、供給網リスク評価とログ可視化の継続改善へ。次に読むべきは「Webサプライチェーン防御チェックリスト」「DLLサイドローディング緩和ガイド」「EDRハンティングの実践例」。


