誰もがGlassWormは、得意なことを続けるだろうと思っていた。開発者ツールに直接悪意のあるコードを送り込むことだ。そのパターンは明確だった:侵害された拡張機能、即時のペイロード、そして大慌てでのクリーンアップ。2026年3月に顕著になったこの開発者のサプライチェーンへの執拗な攻撃は、その直接的な攻撃性ゆえに、ほぼ予測可能になっていた。開発者には、依存関係を精査し、発行元名を確認し、即時攻撃の微妙な兆候に注意するよう警告が出ていた。
しかし、ここが肝心なのだ。GlassWormの最新の波は、即時の満足を求めてはいない。それは忍耐だ。それは運用戦術の根本的な変化であり、叩き壊して奪い取る(smash-and-grab)から、ゆっくりと燃え広がる(slow burn)へと移行している。そしてそれは、OpenVSXエコシステム内で、恐ろしく巧妙なひねりを加えて進行している――「スリーパー」拡張機能だ。
スリーパーエージェント戦略
我々が今目にしているのは、73個の拡張機能だ。これらは慎重にキュレーションされ、OpenVSXにアップロードされている。当初は完全に無害に見える。それらは正規ツールのクローンであり、レーダーに引っかからないように設計されている。悪意のあるペイロードは初期コード内には潜んでいない。それはアップデートを待っているのだ。これらは単なる脆弱な拡張機能ではない。意図的に休眠状態にあり、インストールされて信頼された後に起動するように設計されている。
ここがゲームチェンジのポイントだ。即時の赤信号を見つけることに慣れている開発者は、誤った安心感に陥るかもしれない。彼らは拡張機能をインストールし、それは宣伝通りに動作する。そして数日、あるいは数週間後、アップデートがロールアウトされる。このアップデートは新機能のためではない。それは休眠状態の脅威を覚醒させるためのものだ。その後、拡張機能は単なるローダーとして機能し、実際のマルウェアをリモートソースから取得する――しばしばGitHub上の二次的なVSIXパッケージ内、あるいは難読化されたJavaScriptに偽装されて。
「新しいアップデートが引き続き登場するため、この数は変動する可能性がありますが、パターンは以前のGlassWormの波と一致しています。」
この静かな侵攻は、防御をはるかに困難にする。それはインストール時点での警戒だけでなく、インストールされた拡張機能とそのアップデートサイクルを継続的に監視する必要がある。脅威は静的ではない。それは動く標的であり、アップデートごとに配信メカニズムを変化させ、変形させることができるデジタルのアメーバなのだ。
なぜこれが開発者にとって重要なのか
オープンソース開発における信頼のアーキテクチャを考えてみてほしい。我々は、生産性を向上させるツールをキュレーションし配信するために、OpenVSXやVisual Studio Code Marketplaceのようなマーケットプレイスに依存している。そこには、リリースされたツールは安全であり、いかなるアップデートも改善のためであるという暗黙の契約がある。GlassWormは、その信頼を、眠っている拡張機能を一つずつ、体系的に破壊しているのだ。
これは、最近の連鎖的なゼロデイ脆弱性の報告が示唆するように、脅威ランドスケープが確かにその方向へ向かっているとはいえ、高度な国家主権アクターがゼロデイエクスプロイトを craft しているわけではない。これは、オープンソースコラボレーションを装った、より陰湿な形のソーシャルエンジニアリングだ。彼らはドアを壊して侵入しているのではない。彼らはあなたに鍵を郵送し、それからそれを使う方法を後で教える絵葉書を送ってきているのだ。
開発パイプラインへの影響は甚大だ。依存関係を自動的にプルして更新することが多いCI/CDパイプラインは、信じられないほど脆弱になる。一見正当な拡張機能が、アップデートによって起動するまでリポジトリで数ヶ月間休眠状態にあり、ビルドを侵害し、潜在的には本番環境に拡散する可能性がある。
クローン化の芸術
Socketの研究者は、これらの拡張機能がどのように欺瞞のために作成されているかを指摘している。それらは単に名前が少し変更されているだけではない。それらは緻密なクローンだ。アイコン、説明、命名規則――すべてが正規の提供物を模倣するように設計されている。発行元の名前や一意の識別子にある微妙な違いは、急いでいる開発者には簡単に見逃される。この詳細レベルは、開発者の行動と彼らが置かれているプレッシャーについての洗練された理解を示唆している。
コード分析中の早期検出のリスクを高めるマルウェアを直接埋め込む代わりに、拡張機能は洗練されたダウンローダーとして機能する。それらは薄いシェルであり、その主な目的は、実際のペイロードを取得するためにコマンド&コントロールサーバーまたは侵害されたリポジトリに連絡することだ。このモジュール式のアプローチにより、マルウェアのフィンガープリント作成と分析が困難になる。なぜなら、コアとなる悪意のあるロジックが、初期感染ベクトルから分離されているからだ。
直接注入から多段階ダウンロードプロセスへのこの移行は、重要なアーキテクチャ変更だ。これにより、攻撃者はより俊敏になり、完全に新しい悪意のある拡張機能をマーケットプレイスに再提出する必要なしに、ペイロードを更新できるようになる。彼らは配信トラックを変えずに武器を変えることができるのだ。
何ができるか?
Socketからの即時のアドバイスは明確だ:もしこれらの73個の拡張機能のいずれかをインストールしたなら、シークレットをローテートし、アクセス・トークンを失効させ、開発環境をクリーンアップしろ。しかし、長期的な解決策には、より積極的な姿勢が必要だ。これは単に脆弱性をパッチすることではない。サードパーティコードに対する信頼モデルを根本的に再考することなのだ。
拡張機能のインストール後の動作、特にネットワーク通信とファイルシステムアクセスに関する分析のための、より良いツールの必要性がある。開発者は、信頼できないソースからのアップデートを自動的に適用することに関するより厳格なポリシーを検討すべきであり、組織内では承認された拡張機能のキュレーションリストを維持することも必要かもしれない。GlassWormによるこの「スリーパー」戦術は、単なる開発者への攻撃ではない。それは、協調的なオープンソース開発の基盤そのものへの攻撃なのだ。
GlassWormキャンペーンのこの進化は、脅威ランドスケープが絶えず適応しているという厳しいリマインダーとなる。ダウンロードしたコードの既知のマルウェア署名をチェックするだけだった日々は、もしそうでなかったとしても、決定的に終わったのだ。
**
🧬 関連インサイト
よくある質問**
GlassWormマルウェアは何をするのか? GlassWormマルウェアは、仮想通貨ウォレットデータ、認証情報、アクセス・トークン、SSHキー、その他の開発者環境データを含む、機密性の高い開発者情報を盗むように設計されている。これは、開発者システムを侵害し、貴重な情報を盗むことを目的としたサプライチェーン攻撃だ。
「スリーパー」拡張機能はどのように機能するのか? 「スリーパー」拡張機能は、当初はマーケットプレイスにアップロードされる無害なコードだ。それらは後続のアップデートが適用されるまで休眠状態を維持する。このアップデートは、しばしば外部ソースから実際のマルウェアを取得して実行する悪意のあるペイロードを起動する。この遅延起動により、当初は検知が困難になる。
OpenVSXを使用している場合、心配すべきか? はい、OpenVSXを使用している開発者はこの脅威に注意する必要がある。セキュリティ研究者が提供する潜在的に影響を受ける拡張機能のリストを確認し、シークレットを失効させ、インストールした場合は環境をクリーンアップすることが重要だ。将来的にも同様の戦術に対する警戒も推奨される。