悪意あるVS CodeおよびCursor AI拡張機能を利用した開発者へのサイバー攻撃

開発者向けIDEを狙う新たなサプライチェーン攻撃の脅威

現代のソフトウェアサプライチェーンにおいて、Visual Studio Code(VS Code)やCursor AI、WindsurfといったAI搭載IDEが、最も重要でありながら見過ごされがちな攻撃対象として浮上しています。これらのツールは世界中の何百万もの開発者のマシンにインストールされており、多くの場合、ソースコード、機密情報、本番環境の認証情報へのアクセス権を持って動作しています。新たな調査により、悪意のある拡張機能を通じて開発者を侵害することが、実行可能であるだけでなく、驚くほど容易であることが示されました。

実証された悪意ある拡張機能の手口

セキュリティ研究者のMazin Ahmed氏は、一見無害に見えるVS Code拡張機能が、Microsoftのマーケットプレイスチェック、アンチウイルスエンジン、主要なエンドポイントセキュリティ製品を回避しながら、いかに強力なバックドアに変貌するかを実証しました。エコシステムの防御能力をテストするため、Ahmed氏は「魔法のような」コードフォーマッターとして宣伝された偽のPythonリンター「Piithon-linter」を作成。この拡張機能は、VS Codeが起動するたびに環境変数とシステムメタデータを密かに外部に送信していました。VS Codeは起動元のシェルの環境変数を継承するため、このデータにはクラウドキーやアクセストークンなどの機密情報が含まれる可能性があります。現実の攻撃では、開発者がIDEを開くと同時に、これらの情報が攻撃者によって制御されるコマンド&コントロール(C2)サーバーに直接送信される恐れがありました。

マーケットプレイスの審査をすり抜けるメカニズム

驚くべきことに、この拡張機能は悪意ある挙動が明白で難読化もされていないにもかかわらず、承認され、一般公開されました。これにより、どの開発者も実質的なマルウェアを容易に発見し、インストールできる状態にあったのです。Ahmed氏は次に、Cursor AI、Windsurf、AWS Kiroを含む多くのVS CodeフォークやAI駆動型IDEを支えるオープンソースの拡張機能マーケットプレイス「OpenVSX」を調査しました。ここでも、「Piithon-linter」は承認され、検索可能になりました。調査によると、OpenVSXは現在、自動化されたセキュリティチェックをほとんど実施しておらず、ユーザーからの報告と利用規約の遵守に依存しているとのことです。これは、悪意ある攻撃者を抑止するには不十分なモデルであると指摘されています。

脅威の進化:完全なバックドアへの昇格

さらにAhmed氏は、「Piithon-linter」を完全なバックドアへとアップグレードさせました。この拡張機能には、明示的なアンチウイルスおよびEDR(Endpoint Detection and Response)チェック、単純なジオフェンシングロジック、そしてWindows、macOS、Linux向けのMerlinポストエクスプロイトエージェントの自動展開機能が追加されました。セキュリティ製品やサンドボックス環境を検出するためのコードは、意図的に難読化されずに容易に識別できる状態に置かれていましたが、それでもこの拡張機能はMicrosoftのマルウェアスキャンやサンドボックス実行を通過してしまいました。また、主要なマルウェア検出サービスであるVirusTotalも、このサンプルを危険と判定できませんでした。

開発者セキュリティへの将来的な影響

VS Codeがインストールされた拡張機能を自動的に起動し、デフォルトで更新するため、このようなバックドアは開発者のマシンへの永続的かつ継続的なアクセスを可能にします。IDEが再起動されるたびに、攻撃者は制御を再確立したり、新しいペイロードを配信したりすることが可能となり、すべて信頼されたマーケットプレイスの拡張機能という名目で実行されます。VS Code、OpenVSX、そしてそれらに依存するAI搭載IDEに対するより強力で多層的なセキュリティ制御がなければ、悪意のある拡張機能は、業界がこれまでに経験したことのないような重大な侵害を引き起こす可能性があります。

関係者の反応と課題

Ahmed氏は、これらの調査結果をMicrosoft、Eclipse Foundation(OpenVSXの管理者)、およびCursor AIに責任をもって開示しました。Microsoftは、この問題を「低重大度」と分類し、拡張機能を選択する上でのユーザーの責任を強調しています。Eclipse Foundationはセキュリティ制御を追加する計画を示している一方、Cursor AIはパブリッシャー認証、拡張機能ランキングの変更、および独自のマルウェアスキャンを追加したと報告しています。しかし、「Piithon-linter」はテストで依然として安全であると判定されており、根本的な解決には至っていない現状が浮き彫りになっています。

この広範な問題から得られる結論は明らかです。開発者のIDEは、極めて価値が高く、しかし防御が脆弱なサプライチェーンのボトルネックと化しているのです。


元記事: https://gbhackers.com/vs-code-and-cursor-ai/