CursorのIDEにおけるサンドボックス回避の欠陥、プロンプトインジェクションがRCEの手段になり得ることを浮き彫りに

2件の脆弱性は、Cursorだけにとどまらず、LLMおよびAI支援型IDE全般に共通するネイティブな欠陥を明らかにしています。

研究者らは、広く利用されているAI搭載の統合開発環境(IDE)「Cursor」に、プロンプトインジェクションを通じてリモートコード実行(RCE)を達成できる2件の脆弱性を発見しました。

CVE-2026-50548およびCVE-2026-50549として追跡されているこの2つの欠陥により、攻撃者はCursorのコマンド実行サンドボックスから脱出できます。このサンドボックスは本来、内部のAIエージェントが基盤となるオペレーティングシステム上で不正な操作を行わないよう防止する保護層です。

この欠陥を発見したCato Networksの研究者らは、レポートの中で次のように述べています。「この攻撃の実行には、事前のユーザー権限も特定のユーザー操作も必要ありません。被害者がMCPサーバーやウェブ検索結果といった信頼できないソースから、脅威アクターが仕込んだペイロードを意図せず取り込むような、何の変哲もないプロンプトを入力するだけで発動します」

最近SpaceXに600億ドル相当の株式で買収されたCursorは、企業分野で最も広く利用されているAI支援型コーディングツールの一つを提供しています。今回の2つの脆弱性は、4月にリリースされたCursor IDEのバージョン3.0で修正されました。

LLMに内在する脆弱性

大規模言語モデル(LLM)は、処理するコンテンツの中に隠された悪意ある指示に対して、本質的に脆弱性を抱えています。これは、LLMがブラウザやAPIなど様々なツールと組み合わされ、検索結果やRSSフィードのウェブページ、リポジトリ内のコード、バグトラッカーのコメント、ユーザーの受信メール、各種文書といった多様なサードパーティの公開コンテンツにアクセスできるようになった「エージェント型AI」の時代において、特に深刻な問題となっています。

AIツールをプロンプトインジェクションから保護することは非常に困難であり、通常は多層的なアプローチが必要になります。具体的には、モデルを開発したAI研究機関がモデル自体に組み込むガードレール、特定のコンテンツを受動的なデータとして扱うようシステムプロンプトに指示を組み込むこと、データを処理するLLMの上位で動作する監督モデル、従来型のキーワードフィルタリング、コンテキストの分離、きめ細かなアクセス制御、機密性の高い操作を承認するために人間を再びループに組み込むことなどが挙げられます。

CursorのようなAI支援型IDEや、コマンドライン上で動作するエージェント型コーディングハーネスは通常、デフォルトでファイルの変更や実行するコマンドのたびにユーザーへ承認を求めます。しかし、これは自律的なコーディングワークフローには現実的ではなく、すぐに「承認疲れ」を引き起こしてしまいます。

この問題に対処するもう一つの方法は、こうした自律的なワークフローをコンテナや仮想化環境、サンドボックス内で実行することです。こうすることで、サードパーティのデータソースに仕込まれた不正なプロンプトが原因でエージェントが悪意ある指示を実行してしまった場合でも、影響を限定できます。Cursorはコマンド実行サンドボックスを使用しており、デフォルトではファイルの書き込みを現在のプロジェクトディレクトリ内に制限しています。

分離層におけるロジックの欠陥

しかし、Catoの研究者らは、run_terminal_cmdツールがworking_directoryというパラメータをサポートしており、これによってこのデフォルトのパスをプログラム的に上書きできることを発見しました。

「(何の変哲もないMCPサーバーへのリクエストや、汚染されたウェブ検索結果を通じて仕込まれた)プロンプトインジェクションによって、LLMを誘導し、working_directoryをプロジェクトの範囲外にある脅威アクター制御下のパスに設定させることが可能です」と研究者らは説明しています。

この見落としを悪用することで、攻撃者はアプリケーションのパスからcursorsandbox実行ファイル自体を上書きしたり、ユーザーがコマンドを実行するたびに読み込まれるシェル設定ファイルや、macOSの~/Library/LaunchAgentsのようなシステムの起動フォルダに悪意あるスクリプトを書き込んだりすることが可能になります。

これとは別に、研究者らは、攻撃者がCursorエージェントに指示を出すことで、プロジェクトディレクトリの外部にあるファイルを指すシンボリックリンク(symlink)ファイルをプロジェクトディレクトリ内に作成させられることも発見しました。

「デフォルトでは、Cursorエージェントはパスの正規化(シンボリックリンクの解決)を試みることで、ファイルの実際の場所を特定し、それがプロジェクトのルート内にあるかどうかを検証します」と研究者らは述べています。「この脆弱性は、この正規化ロジックに危険なフォールバック処理が含まれていることに起因します。正規化に失敗した場合(例えば、パスが存在しない場合や、パス上のいずれかのディレクトリに読み取り権限がない場合)、Cursorはプロジェクトディレクトリ内にある元のシンボリックリンクのパスをそのまま使用するフォールバック処理に移行してしまうのです」

Catoが「DuneSlide」と名付けたこの2つの脆弱性は、制限されたCursorのサンドボックスの外側でコードを実行させることで、基盤となるオペレーティングシステムの完全な侵害を可能にします。しかし、それ以上に重要なのは、これらの脆弱性がプロンプトインジェクションを、AIエージェントを実装するソフトウェア自体の脆弱性を悪用するための攻撃ベクトルにし得ることを示している点です。

AI搭載のIDEやコーディングハーネスはCursorだけにとどまりません。研究者らによれば、こうした分離層のロジックの欠陥を抱えているのもCursorだけではないとのことです。

「もしこれらの問題が、プロンプトインジェクションによる侵害の単発的な事例に過ぎなかったなら、私たちはそれらを特定の脆弱性に起因するものとして片付けていたかもしれません」と研究者らは述べています。「しかし、Cato AI Labsは現在、広く使われているすべてのコーディングエージェントの脆弱性について責任ある情報開示を進めている最中であり、このことは、より体系的な保護のアプローチが必要であることを浮き彫りにしています」

翻訳元: https://www.csoonline.com/article/4191923/sandbox-bypass-flaws-in-cursor-ide-highlight-prompt-injection-as-an-rce-vector.html

ソース: csoonline.com