Cursorコードエディタの脆弱性により、開発者は悪意のあるリポジトリを開いた瞬間に自動的にタスクが実行されるリスクにさらされています。
攻撃者はこの欠陥を悪用して、マルウェアを仕込んだり、開発環境を乗っ取ったり、認証情報やAPIトークンを盗み出したりすることが可能であり、開発者がコマンドを実行する必要はありません。
Cursorは、Visual Studio Code(VS Code)をフォークして作られたAI搭載の統合開発環境(IDE)であり、GPT-4やClaudeなど主流のAIアシスタントと深く統合され、ソフトウェア開発タスクを支援します。
これは最も急成長しているAIコーディングツールの一つであり、現在100万人のユーザーが毎日10億行以上のコードを生成しています。
問題の原因
非人間ID(NHI)の管理とセキュリティソリューションを提供するOasis Securityの研究者によると、この問題はCursorがVS CodeのWorkspace Trust機能を無効にしていることに起因します。この機能は、開発者の明示的な同意なしにタスクが自動実行されるのを防ぐものです。
デフォルト設定では、Cursorはプロジェクトフォルダを開いた直後にタスクを実行します。攻撃者はこれを利用して、公開リポジトリに悪意のある.vscode/tasks.jsonファイルを追加することができます。
「ユーザーがCursorでそのようなリポジトリを開くと、単なる閲覧目的であっても、任意のコードがその環境で実行される可能性があります」とOasis Securityの研究者は述べています。
「これにより、機密認証情報の漏洩、ファイルの改ざん、あるいはシステム全体の侵害につながる恐れがあります。」
一方、VS Codeはデフォルト設定ではこのファイルを自動実行しないため、影響を受けません。
Oasis Securityは、Cursorでプロジェクトフォルダを開いた際に現在のユーザー名を送信するシェルコマンドを実行するtasks.jsonファイルの概念実証(PoC)を公開し、調査結果を証明しました。

出典:Oasis Security
Oasis Securityによれば、この脆弱性を悪用した攻撃者は、現在のユーザーの権限でコードを実行したり、機密データ(トークン、APIキー、設定ファイルなど)を盗み出したり、コマンド&コントロール(C2)インフラへの接続を確立したり、サプライチェーン攻撃の感染経路を作成したりすることが可能です。
Cursorは修正しない方針
Oasis SecurityがWorkspace Trustがデフォルトで無効になっているリスクをCursorチームに通知した後、IDE開発元はコードエディタの自動実行動作を維持する意向であると述べました。
Cursorは「Workspace Trustを有効にすると、AIやその他のユーザーが利用したい機能が使えなくなる」と説明しています。
同社は、ユーザーに対しVS Codeのセキュリティ機能を有効にするか、悪意のある可能性がある場合は基本的なテキストエディタを使用することを推奨しています。
また、CursorチームはWorkspace Trustに関する自社の見解を説明し、有効化方法の手順を追加するため、まもなくセキュリティガイダンスを更新すると述べています。
Oasis Securityは、未知のプロジェクトを開く際は別のエディタを使うこと、リポジトリを開く前に検証すること、シェルプロファイルで機密認証情報をグローバルにエクスポートしないことを推奨しています。
研究者はまた、CursorでWorkspace Trustを有効にする設定も提供しています。