2025年末から2026年初頭にかけて、VSCode拡張機能エコシステムを標的としたサプライチェーン攻撃が連鎖的に発生している。自己増殖型ワーム「GlassWorm」、150万インストールを侵害した「MaliciousCorgi」キャンペーン、そしてCursor・Windsurf等AIエディタの推奨拡張機能脆弱性──これら3つの事象は、開発者ツールチェーンにおける信頼モデルの根本的な欠陥を浮き彫りにした。本稿では、各攻撃の技術的特徴を体系的に分析し、拡張機能エコシステムの防御設計を提示する。
2026年初頭に集中した3つのインシデント
2025年10月から2026年2月にかけて、VSCode拡張機能に関連する3つの重大なセキュリティインシデントが相次いで公表された。これらは個別の攻撃でありながら、いずれも拡張機能マーケットプレイスの信頼モデルを悪用するという共通の構造を持つ。
第1の事象:GlassWorm(2025年10月〜2026年2月)。セキュリティ企業Koi Securityが2025年10月18日に検知した、VSCode拡張機能史上初の自己増殖型ワームである。Open VSXレジストリ上で正規開発者のアカウントを侵害し、FTP/SFTP/SSH Sync Tool、I18n Tools、vscode mindmap、scss to css等の既存拡張機能に悪意あるコードを注入した。感染総数は35,800インストール以上に達した。Solanaブロックチェーンのメモフィールドをコマンド&コントロール(C2)チャネルとして利用し、不可視Unicode文字でペイロードを隠蔽するという高度な技術を採用している。
第2の事象:MaliciousCorgi(2026年1月公表)。Koi Securityが2026年1月22日に報告したキャンペーンで、VSCodeマーケットプレイス上の2つのAIコーディング支援拡張機能──「ChatGPT – 中文版」(パブリッシャー: WhenSunset、約135万インストール)と「ChatMoss/CodeMoss」(パブリッシャー: zhukunpeng、約15万インストール)──が、合計150万の開発者のソースコードを中国のサーバー(aihao123[.]cn)に送信していたことが判明した。発見後もマーケットプレイス上で公開が継続されていたことが問題視されている。
第3の事象:AIエディタ推奨拡張機能の名前空間スクワッティング(2025年11月〜2026年1月)。Cursor、Windsurf、Google AntigravityといったVSCodeフォークのAIエディタが、Open VSX上に存在しない拡張機能を公式に推奨していた脆弱性である。これらのエディタはMicrosoftのマーケットプレイスをライセンス上使用できないためOpen VSXを利用するが、フォーク元のVSCodeに含まれる推奨拡張機能リストがそのまま残存していた。Open VSX上では該当する名前空間が未登録であったため、攻撃者が自由にマルウェアを登録・配布できる状態にあった。
攻撃手法の技術的分析
3つのインシデントは、それぞれ異なる攻撃手法を用いながらも、拡張機能エコシステムの信頼チェーンの異なるレイヤーを標的としている。
GlassWormの技術的特徴。最も技術的に洗練されたGlassWormは、3つの革新的手法を組み合わせている。第一に、Unicode Variation Selector(不可視文字)を利用した悪意あるコードの隠蔽である。通常のコードレビューやテキストエディタでは空白行にしか見えないが、JavaScriptインタプリタは正常に実行する。第二に、Solanaブロックチェーンのトランザクションメモフィールドを利用したC2通信である。攻撃者のウォレットアドレス(28PKnu7RzizxBzFPoLp69HLXp9bJL3JFtT2s5QzHsEA2)からのトランザクションに埋め込まれたBase64エンコードURLからペイロードサーバーの指示を取得する。ブロックチェーン上のデータは改変・削除が不可能であり、コストも1トランザクションあたり約0.000005 SOL(0.001ドル未満)と極めて低い。第三に、自己増殖メカニズムとして、感染端末からNPMトークン、GitHubトークン、OpenVSXクレデンシャルを窃取し、それらを用いて追加のパッケージや拡張機能を自動的に侵害する。
さらに、最終ペイロードである「Zombi」モジュールは、SOCKSプロキシ、WebRTC P2P通信、BitTorrent DHTによる分散型コマンド配信、Hidden VNC(HVNC)による不可視リモートデスクトップアクセスを備え、感染端末を攻撃インフラのノードに変換する。バックアップC2としてGoogle Calendarイベントも利用しており、多重の冗長性を確保している。
MaliciousCorgiのデータ窃取メカニズム。MaliciousCorgiは技術的にはGlassWormほど複雑ではないが、その規模と巧妙さは注目に値する。正規のAIコーディング支援機能を完全に実装しつつ、バックグラウンドで3つの並行チャネルを通じてデータを窃取する。第一に、リアルタイムファイル監視として、ユーザーがファイルを開くたびに全コンテンツをBase64エンコードし、隠しiframe経由でサーバーに送信する。第二に、サーバー制御による一括収集として、jumpUrlフィールドを通じたリモートコマンドで最大50ファイルをユーザーの操作なく収集できる。第三に、プロファイリングエンジンとして、Zhuge.io、GrowingIO、TalkingData、Baidu Analyticsの4つの解析SDKを不可視iframeで読み込み、詳細なユーザープロファイルを構築する。
AIエディタの名前空間スクワッティング。この脆弱性の根本原因は、VSCodeフォークが推奨拡張機能リストをMicrosoftマーケットプレイス用のまま引き継いだことにある。攻撃者は未登録の名前空間を取得し、マルウェアをアップロードするだけで、IDEの公式推奨として表示される。Koi Securityの研究者が予防的に6つの名前空間(ms-ossdata.vscode-postgresql、ms-azure-devops.azure-pipelines等)を確保したところ、明示的に非機能と警告したにもかかわらず、1,000人以上の開発者がプレースホルダー拡張機能をインストールした。
拡張機能マーケットプレイスの構造的欠陥
3つのインシデントは、VSCode拡張機能エコシステムに内在する複数の構造的欠陥を露呈した。
権限モデルの不在。VSCode拡張機能にはパーミッションモデルが存在しない。インストールされた拡張機能は、ファイルシステムへの無制限アクセス、ネットワーク通信、子プロセスの実行など、あらゆる操作を許可なく実行できる。モバイルアプリやブラウザ拡張機能では標準的な権限制御が、開発者IDEでは未実装のままである。
パブリッシャー検証の脆弱性。VSCodeマーケットプレイスに登録されている約45,000のパブリッシャーのうち、検証済みパブリッシャーは約1,800に過ぎない。しかも「検証」の要件は5ドル程度のドメインをDNS登録するだけであり、悪意あるコンテンツとしてフラグ付けされた拡張機能の7%が検証済みバッジを保有していたとの報告がある。
Open VSXのセキュリティ検査の欠如。Cursor、Windsurf、Google Antigravity等のAIエディタが依存するOpen VSXレジストリには、セキュリティ検査が事実上存在しない。Microsoftマーケットプレイスでさえウイルススキャンの限界が指摘されている中、Open VSXではさらに防御レイヤーが薄い。
報告後の対応遅延。MaliciousCorgiの事例では、発覚後も悪意ある拡張機能がマーケットプレイス上で公開を継続していた。AIエディタの推奨拡張機能脆弱性では、2025年11月23日の報告に対し、Cursorが12月1日に修正、Googleが段階的に対応した一方、Windsurfは研究者への応答すら行わなかった。
防御設計:拡張機能の信頼を再構築するために
これらの攻撃に対する防御は、単一の対策ではなく多層的なアプローチが求められる。
拡張機能の署名と検証。最も根本的な対策は、コード署名の義務化である。パブリッシャーの秘密鍵による拡張機能パッケージへの署名、マーケットプレイスによる署名検証、ユーザー端末でのインストール時検証という3段階の検証チェーンを構築すべきである。2026年2月時点でMicrosoftは拡張機能の署名検証機能をプレビューとして導入し始めているが、Open VSXでは未対応である。
最小権限モデルの導入。拡張機能に対するパーミッションシステムの導入は急務である。具体的には、ファイルアクセスのスコープ制限(ワークスペース内のみ等)、ネットワーク通信先のホワイトリスト宣言、子プロセス実行の明示的許可要求、クレデンシャルストアへのアクセス制御といった粒度での権限管理が必要となる。
自動更新の制御。GlassWormの拡散において、VSCodeの自動更新機能が侵害を加速させた。正規の拡張機能が侵害された場合、自動更新によって全ユーザーに悪意あるバージョンが配信される。段階的ロールアウト、差分レビュー、ユーザーへの変更通知といった更新制御メカニズムの導入が求められる。
開発者側の実践的対策。組織レベルでは、拡張機能の許可リストの管理、extensions.jsonによるチーム内の拡張機能統制、ネットワーク監視による不審な通信の検知を実施すべきである。個人レベルでも、インストール前のパブリッシャー確認、ソースコードの確認、不要な拡張機能の定期的な棚卸しが重要である。
信頼モデルの転換点
2026年初頭の一連のインシデントは、開発者ツールのサプライチェーンが体系的に標的とされる時代の到来を示している。GlassWormはブロックチェーンを用いた耐検閲性のC2通信、MaliciousCorgiは正規機能への偽装による大規模データ窃取、AIエディタの脆弱性はエコシステムの分断がもたらす新たな攻撃面──それぞれが異なるアプローチで開発者の信頼を悪用した。
共通して浮かび上がるのは、「マーケットプレイスに公開されている=安全」という暗黙の信頼がもはや成り立たないという現実である。npm、PyPIに続き、IDE拡張機能マーケットプレイスも攻撃者にとっての重要な標的となった。特にAIコーディングツールの普及により拡張機能への依存度が高まる中、この信頼の崩壊は開発プロセス全体のセキュリティモデルを見直す契機となるべきである。
FAQ
GlassWormに感染しているか確認する方法は?
Open VSXからインストールした拡張機能のバージョンを確認し、既知の悪意あるバージョンと照合する。また、Solana関連のネットワーク通信や、NPM/GitHubトークンへの不審なアクセスをログから確認することが有効である。
MaliciousCorgiの「ChatGPT – 中文版」をインストールしていた場合どうすべきか?
即座に拡張機能をアンインストールし、当該環境で開いたすべてのソースコードが外部に送信された可能性を前提に対応する。APIキーやクレデンシャルが含まれていた場合はローテーションが必要である。
Cursor・Windsurfの推奨拡張機能脆弱性は修正済みか?
Cursorは2025年12月1日に修正済み、Googleは2026年1月1日に修正を完了した。Windsurfは2026年2月時点でも研究者への応答がなく、対応状況が不明確である。ユーザーは推奨表示される拡張機能を無条件にインストールせず、パブリッシャーを確認すべきである。
VSCode拡張機能のセキュリティを組織として管理するには?
VSCodeの設定で拡張機能の自動更新を無効にし、許可リスト方式で使用拡張機能を管理する。extensions.jsonでチーム推奨拡張機能を明示し、定期的にインストール済み拡張機能の監査を実施することが推奨される。
Open VSXとMicrosoftマーケットプレイスではどちらが安全か?
Microsoftマーケットプレイスはウイルススキャン等の検査を実施しているが、完全ではない。Open VSXはセキュリティ検査が限定的であるため、相対的にリスクが高い。いずれの場合もマーケットプレイスの掲載を安全性の保証と見なすべきではない。
参考文献
- GlassWorm: First Self-Propagating Worm Using Invisible Code Hits OpenVSX Marketplace — Koi Security, 2025年10月
- MaliciousCorgi: The Cute-Looking AI Extensions Leaking Code from 1.5 Million Developers — Koi Security, 2026年1月
- How We Prevented Cursor, Windsurf & Google Antigravity from Recommending Malware — Koi Security, 2026年1月
- Open VSX Supply Chain Attack Used Compromised Dev Account to Spread GlassWorm — The Hacker News, 2026年2月
- Malicious VS Code AI Extensions with 1.5 Million Installs Steal Developer Source Code — The Hacker News, 2026年1月
- Forked and Forgotten: 94 Vulnerabilities in Cursor and Windsurf Put 1.8M Developers at Risk — OX Security, 2026年
- Uncovering Design Flaws of Visual Studio Code Extensions — Koi Security, 2026年



