Source:https://thehackernews.com/2025/11/glassworm-malware-discovered-in-three.html
🛡 概要
VS Codeエコシステムを狙う「GlassWorm」キャンペーンに関連する新たな拡張機能3件が確認され、依然としてダウンロード可能な状態にあると報告されました。GlassWormはOpen VSX RegistryおよびMicrosoftのExtension Marketplace経由で配布され、Open VSX/GitHub/Gitの認証情報窃取、49種の暗号資産ウォレット拡張からの資金窃取、リモートアクセス用ツールの追加ダウンロードを目的とします。Open VSXは2025年10月21日時点で既知の悪性拡張を削除・トークン無効化を実施しましたが、攻撃者は不可視のUnicode制御文字を用いた難読化で再度検出を回避しており、脅威は継続しています。
🔍 技術詳細
GlassWormは、VS Codeの拡張機能として配布されるJavaScript/TypeScriptコードに悪性ペイロードを混入させます。特筆すべき点は「不可視のUnicode制御文字(双方向テキスト等)」をソースに挿入し、エディタ上の見た目と実際の実行コードを乖離させる手法です。これによりレビュアーや自動検査をすり抜け、拡張のアクティベーションイベント(起動・フォルダオープン・コマンド実行等)でバックグラウンド処理を開始します。ペイロードは環境情報を収集し、.git-credentialsや.gitconfig、SSH鍵、ブラウザのローカルプロファイル等へアクセスしてOpen VSX/GitHub/Git関連の認証情報を詐取します。さらに、対象ユーザのブラウザプロファイル内に保存された暗号資産ウォレット系拡張(報告では49種)のローカルデータを解析し、秘密情報の抽出や送金操作を試みる設計が示されています。加えてキー入力取得(キーロガー)機能や、追加ツールのダウンロード・実行を行う第二段階ペイロードの取得も確認されています。C2は従来のホストに加え、Solanaブロックチェーン上のトランザクションに次段階のダウンロード先を埋め込む「デッドドロップ」的手法を用います。これにより、サーバが停止しても攻撃者は低コストで新トランザクションを投稿し、感染端末は自動的に新しいペイロードロケーションを取得します。研究者(Koi SecurityのIdan Dardikman、Yuval Ronen、Lotan Sery)は、攻撃者サーバ上に誤って露出したエンドポイントから、米国・南米・欧州・アジアに及ぶ被害組織の一部リストを確認したと述べ、さらに中東の大規模政府機関も含まれていたとしています。被攻撃者の活動からはロシア語話者である可能性や、RedExtというOSSのブラウザ拡張C2フレームワーク活用の痕跡が示唆されています。直近では、窃取したGitHub資格情報を悪用し、リポジトリに悪性コミットをプッシュして拡散する二次攻撃も観測されています。
なお、本件はキャンペーン(悪性拡張の流通)に関する事案であり、現時点でGlassWorm自体に固有のCVE/CVSSは公表されていません(不可視Unicodeを用いた一般的なコード難読化の脆弱性事例としてはTrojan Source関連のCVEが知られています)。
⚠ 影響
- 開発者・CI/CDの資格情報漏えいにより、組織内外のコードリポジトリが改ざん・バックドア化される恐れ。
- 暗号資産ウォレット拡張のローカルデータ窃取に伴う資産流出。
- 感染端末がプロキシやC2リレーとして悪用され、さらなる侵害拡大の踏み台化。
- マーケットプレイスの発行者トークン悪用により、拡張の自動アップデート経由で再感染。
🛠 対策
- 拡張棚卸しと封じ込め:全端末でインストール済みVS Code拡張を列挙し、今回報告の3件を含む未検証拡張を隔離・アンインストール。
- 資格情報の強制ローテーション:GitHub PAT/SSH鍵、Open VSX/Microsoft発行者トークン、.git-credentialsの即時失効・再発行。OAuthアプリの再審査。
- 供給網防御:拡張の取得元を公式マーケットプレイスと信頼済み発行者のみに制限。拡張自動更新の段階的検証(ステージング->本番)。
- 実行制御:VS Code(Code.exe、Code Helper)からの子プロセスでPowerShell、curl/wget、node、python等を起動する動作をEDR/WDAC/AppLockerで制限。
- ブラウザ保護:開発端末のブラウザプロファイル保護(プロファイル分離、拡張最小化、保存シークレットの暗号化と企業ポリシーでの持ち出し禁止)。
- ネットワーク:既知のIoCと不審なSolana RPC/ブロックチェーンAPI通信の監視・遮断(IoCはKoi Securityやベンダ通達を参照)。
- リポジトリ健全性:保護分岐の強制、署名付きコミット・署名付きタグの必須化、ブランチ保護ルール、異常コミットの即時ロールバック手順を整備。
📌 SOC視点
- プロセス監視:VS Code関連プロセス(Windows: Code.exe, code.exe、macOS: Code Helper、Linux: code)からの子プロセス生成(PowerShell、cmd、bash、curl/wget、node、python、git)の検知。Sysmon EID 1(Process Create)、EID 3(Network)、EID 11(FileCreate)、Defender/AMSIログでのスクリプト実行を可視化。
- ファイル/レジストリ/FS:ユーザプロファイル配下の.vscode/extensions/*、.git-credentials、.gitconfig、SSH鍵(~/.ssh)への異常アクセス・改変。Chrome/Edge/Brave等のプロファイル(Local Extension Settings/Local Storage/LevelDB)へのプロセス間アクセスを監査。
- ネットワーク:GitHub API、Open VSX/Microsoft Marketplace APIへの大量リクエスト、未知ドメインへのHTTP(S)、および公開ブロックチェーンRPCへの周期的アクセスの振る舞い検知。TLS SNI/JA3の異常も併用。
- Git監査:強制プッシュ、保護ブランチ直コミット、通常と異なるユーザエージェント・時刻帯でのコミット活動をアラート。
- EDR狩りクエリ例(観点):親=Code.exeかつ子=PowerShell/curl/git、親=Code Helperかつネットワーク外向き、短時間でのVSIXファイル展開→即時外部通信。
📈 MITRE ATT&CK
- Initial Access: T1195 Supply Chain Compromise(開発者向け拡張を悪性化して配布)/ T1199 Trusted Relationship(発行者・拡張の信頼を悪用)
- Defense Evasion: T1027 Obfuscated/Compressed Files and Information(不可視Unicode制御文字でコード難読化)
- Credential Access: T1555.003 Credentials from Web Browsers(ブラウザ保存資格情報)/ T1552.001 Credentials in Files(.git-credentials等)/ T1056.001 Keylogging(キー入力取得)
- Command and Control: T1102.001 Web Service: Dead Drop Resolver(SolanaトランザクションでC2の所在を配布)/ T1071.001 Application Layer Protocol: Web Protocols(HTTP(S)で次段階取得)
- Exfiltration: T1041 Exfiltration Over C2 Channel(窃取データをC2へ送信)
- Impact/Collection: 資金窃取と拡散のためのリポジトリ改ざん(窃取資格情報の悪用;Valid Accounts T1078の要素を含む)
根拠:報告に、悪性VS Code拡張の供給網経由配布、不可視Unicode難読化、ブラウザ/リポジトリ資格情報窃取、Solana上トランザクションを介したC2更新、GitHubへの悪性コミット拡散が明記されています。
🏢 組織規模別助言
- 〜50名:拡張の一括棚卸しとブロックリストをMDMで即時配布。GitHub 2FA/PAT最小権限化を全員に強制。共有マシンでのVS Code使用を一時停止。
- 50〜500名:拡張ホワイトリスト制(社内認定拡張のみ許可)。WDAC/AppLockerでVS Code子プロセス制御。ブランチ保護と署名コミットを全リポジトリで必須化。週次で資格情報ローテーション点検。
- 500名以上:ソフトウェアBOM/拡張SBOM管理、開発用ネットワーク分離、Egress制御にTI連携を適用。SecDataOpsでVS Codeテレメトリ・Sysmon・V8/Nodeイベントを統合監視し、CI/CDにシークレットスキャンを標準化。
🔎 類似事例
- CVE-2021-42574 / CVE-2021-42694(Trojan Source:不可視Unicode制御文字を用いたコード誤読誘発)※CVSSは実装依存で異なります。
- Octopus Scanner(2020):GitHub上のプロジェクトを介したサプライチェーン型マルウェア拡散。
- event-stream(2018):npmパッケージ乗っ取りによるサプライチェーン侵害。
🧭 次の一手
- 全端末でVS Code拡張のインベントリを取得し、未承認拡張を即時隔離・削除。
- GitHub/Open VSX/Microsoft発行者トークン・SSH鍵・PATを強制ローテーションし、2FAと署名付きコミットを必須化。
- SOCは「VS Code→スクリプト/ネットワーク外向き」振る舞いとSolana等ブロックチェーンAPI通信の新規出現をハンティング。
- ベンダ(Koi Security等)のIoC/検出シグネチャを取り込み、EDR/プロキシ/DNSに適用。
- 開発端末の高権限ブラウザ利用を最小化し、プロファイル分離と拡張の最小権限化を実施。
注:本件に固有のCVE/CVSSは未公表。Open VSXは2025-10-21時点で当時判明分を削除・トークン無効化済みですが、同手法による再出現が確認されています。


