Skip to main content

Snyk Security Labsによるテスト結果:Cursor.com AIコードエディター

著者
Headshot of Danny Allan

Danny Allan

feature automation pink

2025年1月14日

0 分で読めます

Snyk Security Labsチームは、世界中の開発者が使用するソフトウェアの脆弱性を発見し、その緩和を支援することで、ソフトウェアセキュリティの向上を目指しています。そのために、新しく人気のあるソフトウェアソリューションを含め、開発者が使用しているツールを対象に調査を行っています。AIツール、特に急速に成長しているAI対応開発環境の分野が飛躍的に普及する中、こうしたソフトウェアも調査対象に加えています。

調査対象の一つが、VSCodeをはじめとする人気の開発者向けIDEの競合製品、CursorのAIコードエディターです。このソフトウェアは、AIによるコーディング支援を開発者の作業環境に統合しています。こうした調査では、脆弱性が見つからないことが望ましい一方、発見した場合には責任ある方法で開示し、このソフトウェアを使うすべての開発者の安全性向上につなげる機会となります。Cursorは、自社製品のセキュリティ脆弱性の報告を公開して推奨しており、報告方法のガイドと専用窓口を設けています。

調査の一環として、Snyk Security Labsの調査チームは、このソフトウェアに複数の非公開拡張機能が同梱されていることを確認しました。Cursor AIコードエディターのベースとなっているVSCodeの拡張機能は、一般的なNode.jsの依存関係と同様に作成され、package.jsonファイルで記述されます。私たちが想定した攻撃経路は、Cursorが内部でVSCode拡張機能をNPMパッケージとして扱い、ビルド時に内部リポジトリから取得している可能性でした。もしそうで(実際にはそうでないことが後に判明しました)、ビルドシステムの設定に不備があれば、依存関係の混同攻撃の脅威が生じる可能性があります。この構成は可能性が低いと考えていましたが、実際にそうであればCursorのシステムとユーザーの双方に大きな影響を及ぼしかねないため、調査する価値がありました。

この仮説を検証するため、Cursor AIコードエディターのビルドに含まれていると推測したものと同じ名前のパッケージを、公開NPMリポジトリにアップロードしました。これは依存関係の混同を検証する一般的な手法です。Cursorでのテスト対象以外の開発者やシステムにこれらのパッケージがインストールされる可能性は極めて低く、実際、まったくインストールされない可能性もありました。それでも、すべてのパッケージの説明にSnyk Security Labsチームによるテスト用パッケージであることを明記し、作成者に連絡できるメールアドレスを記載したうえで、公開期間を24時間に限定しました。パッケージのソースコードは非常に小規模で、動作を難読化する試みは一切ありませんでした。パッケージは、ユーザー名、ホスト名、現在のディレクトリ、そして後のバージョンでは環境変数を含むHTTPリクエストを調査担当者に送信しました。この外部向けリクエストは、インストールが完全に「ブラインド」な状態で行われたかどうかを確認するために必要でした。後のバージョンでは、概念実証の範囲外である自動スキャナーによるパッケージのダウンロードと実行が誤検知を引き起こすのを防ぐため、受信データに追加のフィールドを設けました。Cursorのセキュリティチームに信頼性と正確性の高い報告を提出するには、インストールがCursorによって実行されたこと、そして確認した事象が実際に依存関係の混同に関する問題であることを検証する必要がありました。

最終的に、Snyk Security Labsの調査では、Cursorに依存関係の混同に対する脆弱性があることを示す兆候は見つかりませんでした。また、テスト中に機密データが私たちに開示されることもありませんでした。こうした攻撃経路は、複雑さと可能性は低い一方で影響が大きく、実行のハードルも低いため、悪意ある攻撃者にとって比較的容易に実行できる可能性があります。こうした理由から、重要な調査対象です。Snyk Security Labsは定期的に脆弱性調査を行い、開発者のセキュリティ向上を目指して、最高水準のテスト基準を遵守しています。

Snyk Security Labsは、こうした脆弱性をテストすることで、攻撃者に先んじて、世界中の開発者が日々使用するソフトウェアやシステムの安全性を確保したいと考えています。

開発者に愛され、セキュリティチームから信頼される。

Snykの開発者ファーストのツールは、ガバナンスやコンプライアンスのニーズに応える、統合された自動化セキュリティを提供します。