5月19日、GitHubは社内リポジトリへの不正アクセスについて調査中であることを明らかにした。TeamPCPは、約4,000件の非公開リポジトリからデータを抽出したと主張している。報告されている侵入経路は、開発者のワークステーションにインストールされた悪意のあるVS Code拡張機能である。
現時点では、どの拡張機能や誰のマシンが影響を受けたのかは不明です。しかし、開発者が無条件に信頼しているツールを通じて開発者用デバイスが侵害されたという事例が、また一つ増えたことは確かです。そして、その手口が具体的にどのようなものかについては、ごく最近、明確な実例があります。
そのわずか1日前、220万回のインストール数を誇り、発行元認証も取得している「Nx Console」VS Code拡張機能に、一時的にバックドアが仕込まれていました。この悪意のあるバージョンは、開発者がワークスペースを開いた瞬間から、気づかれないうちに認証情報を収集していました。Aikido を含むコミュニティがこれを迅速に発見し、VS Code Marketplaceでは18分以内、Open VSXでは36分以内に当該バージョンが削除されました。
「公式」というだけで、すぐにインストールしても安全だとは限らなくなりました
Nx Console、Durable Task Python SDK、そしてAntVエコシステム全体で展開されたMini Shai-Huludキャンペーンといった攻撃が成功する要因は、洗練された手法ではなく、「信頼」にある。これらは、正体不明の発行元による怪しげなパッケージや拡張機能ではない。開発者が何の疑いもなく使用するツールであり、まさにその理由こそが、安全性を示す「インストール数」「検証済み発行元バッジ」、そして「マーケットプレイスにおける正当性」にあるのだ。
そのシグナルこそが、今や標的となっている。インストール数が多いということは、被害の規模も大きいことを意味する。検証済みのパブリッシャーであれば、開発者は躊躇しない。公式マーケットプレイスであれば、誰も疑うことなどない。
コミュニティはこうした攻撃を検知する能力を高めつつありますが、攻撃の手口はその点を考慮に入れています。必要なのは数日ではなく、ほんの数分です。
方法 Aikido この問題を解決している
今年の春先、当社は「Device Protection」をリリースしました。これは、パッケージ、拡張機能、およびMCPサーバーなどのAIツールによる脅威からデバイスを守るために開発された、デバイス上のエージェントです。この製品には、Nx Consoleのような攻撃を阻止する2つの重要な機能が組み込まれています。
リアルタイムのマルウェアブロック:デバイス 保護機能は、アップデートを含め、各パッケージおよび拡張機能のインストールについて、 Aikidoのリアルタイムマルウェアフィードと照合します。拡張機能がマルウェアとしてフラグ付けされた場合、例外なくインストールはブロックされます。
公開から一定期間を経過していないパッケージのブロック:デバイス保護機能には 、最近公開されたパッケージや拡張機能に対して設定可能な「公開から一定期間を経過していない 」という条件が含まれています。デフォルトでは、過去48時間以内に公開されたパッケージや拡張機能は、デバイスへのインストール前にブロックされます。重要な点として、この条件は新規インストールだけでなく、新しいアップデートにも適用されます。管理者は、各エコシステムに対する具体的なリスク許容度に応じて、この期間を延長または短縮することができます。 重要な点として、 Aikido Device Protectionは自動的に最新公開の安全なバージョンに切り替わるため、チームはブロックされることなく保護されます。
悪意のあるNx Consoleのバージョンは18分間公開されていました。Durable Task SDKのパッケージは 公開から数時間以内に検知されました。いずれも48時間の保留期間内に収まっています。このポリシーの下では、どちらも開発者のマシンに到達することはなく、攻撃の機会そのものを遮断することで、マルウェアの即時検出に加え、さらなる保護が提供されます。
Aikido デバイス保護は、セキュリティ対策の実施をネットワークのエッジではなく、デバイス側に移行します。自宅の回線、ホテルのWi-Fi、または個人のホットスポットを利用している開発者は、企業のネットワーク管理の範囲を完全に外れています。 Aikidoのエージェントは、ワークステーションがどこにあろうと、その端末自体でポリシーを適用します。
EDRはこの表面を認識しません
Nx Consoleのペイロードは、ミニファイされたファイルに注入された2,777バイトのJavaScriptでした。Durable Task SDKは28KBのPythonスクリプトでした。どちらもバイナリではないため、バイナリスキャナーにはマルウェアとは認識されません。Nx Consoleのペイロードは.envファイルを読み込みますが、これは開発者なら誰でも1日に何十回も行う作業です。EDRにはこれと一致するシグネチャがありません。
従来のEDR監視ツールは、既知のシグネチャを持つ実行ファイルを収集していました。一方、VS Code拡張機能、npmパッケージ、PyPIディストリビューションは、まったく別のレイヤーに位置するプレーンテキスト形式のインタプリタ型アーティファクトです。 Aikido は、そのレイヤー(npm、PyPI、VS Code Marketplace、JetBrains、Cursor、Windsurf)を監視します。EDRがカバーしない領域を、Aikidoは特にカバーしています。この2つのツールは重複していません。監視対象が異なるのです。
コミュニティによる悪意のあるパッケージの検知・排除能力は確かに存在します。しかし、インストール数が数百万に上る拡張機能に対しては、それだけでは不十分です。「18分で検知された」ことと「被害が防がれた」ことは、同じことではありません。現時点で、同様の攻撃からデバイスを守る最善の方法は、パッケージや拡張機能の最低使用期間を設定することです。
Aikido 「Device Protection」の詳細をご覧いただくか、無料トライアルアカウントでお試しください。

