AI搭載コードエディタの脆弱性チェーンが、自律型開発者ツールがユーザーに対して悪用されるリスクについて懸念を引き起こしています。
NomShubと呼ばれるこの欠陥により、攻撃者は悪意あるリポジトリをオープンするようにデベロッパーを誘導するだけで、従来のエクスプロイトなしに永続的なシェルアクセスを取得できます。
「AIエージェントがシェルコマンドを実行し、プロセスを管理し、認証システムと相互作用できる場合、プロンプトインジェクション攻撃は成功するとリモートコード実行と同等になります」と述べたStraikerの研究者がブログ投稿で語りました。
NomShub攻撃チェーンの内部
NomShub脆弱性チェーンは、セキュリティプログラムの成長する盲点を浮き彫りにしています。AI支援開発ツールは信頼できる自動化と信頼できない入力の線を曖昧にし、パブリックリポジトリのような外部ソースから命令を実行する際に、攻撃表面を拡大しています。
このモデルでは、単にコードを表示することが実際にそれを実行することになり、AI駆動ワークフローの暗黙的な信頼を悪用する攻撃者のための新しい機会を作り出します。
Cursor AIコードエディタで特定されたこの問題は、複数の弱点がいかにして完全なシステム侵害にチェーンされるかを示しています。
NomShubは間接的なプロンプトインジェクション、コマンドパーサーのサンドボックスエスケープ、および正当なリモートトンネリング機能の悪用を組み合わせています。
この攻撃を特に危険にしている点は、そのシンプルさです。悪意あるリポジトリをオープンし、AIアシスタントと意図した通りに相互作用するだけで足ります。
NomShub攻撃はどのように始まるのか
攻撃は、AIエージェントがリポジトリコンテンツをどのように処理するかで始まります。
脅威アクターは、無害に見えるファイルに悪意のある命令を埋め込み、しばしばセットアップドキュメンテーションとして偽装します。
デベロッパーがAIアシスタントにヘルプを求めると、エージェントはこのコンテンツを取り込み、通常のワークフローの一部として埋め込まれたコマンドを実行し、AIを攻撃者制御入力の実行層に変えます。
コマンドパーサーの欠陥を通じたサンドボックスエスケープ
そこから、攻撃はCursorのコマンドパーサーの欠陥を通じてエスケーレートします。
危険なコマンドをブロックするために設計されていますが、外部バイナリとして表示されないexportやcdなどのシェルビルトインを適切に考慮できていません。
これらのビルトインを他の無害なコマンドとチェーンすることで、攻撃者は制限をバイパスしてユーザーのホームディレクトリの機密的な場所に書き込むことができます。
macOSはこれらの書き込みをデフォルトで許可するため、サンドボックス保護が崩れ、信頼できるエスケープが可能になります。
トンネリングによる永続性とリモートアクセス
サンドボックスがバイパスされると、~/.zshenvなどのシェル初期化ファイルを変更することで永続性が確立され、新しいセッションが開始されるたびに悪意あるコードが実行されることを保証します。
攻撃者はその後、Cursorのリモートトンネル機能を活用して認証情報を流出させ、Azure インフラストラクチャを通じてHTTPS経由でアクセスを維持し、通常のトラフィックに活動をブレンドして検出を困難にします。
NomShubは究極的には、プロンプトインジェクションからサンドボックスエスケープ、永続性、リモートアクセスに進む多段階攻撃チェーンを表しており、すべてcursor-tunnelのような信頼できる署名付きバイナリを悪用する生活用トラック手法に依存しています。
AIエージェントが通常の動作の装いの下で自律的にこれらのステップを実行するため、攻撃は最小限のユーザーインタラクションを必要とし、その潜在的影響を増加させます。
AIリスクを軽減する方法
AI搭載開発ツールが日々のワークフローにますます組み込まれるにつれて、組織はこれらの環境でセキュリティにどのようにアプローチするかを再考する必要があります。
従来のコントロールは、信頼できない入力を解釈して行動できる自律エージェントによって導入されるリスクに対処するには不十分なことが多くあります。
NomShub脆弱性は、デベロッパーの動作、システムの硬化、ネットワークコントロールに及ぶ層化防御戦略の必要性を強調しています。
- すべてのリポジトリとAIが取り込んだコンテンツを信頼できない入力として扱い、実行前に高リスクのエージェントアクションに対する明示的な人間の承認を要求します
- 権限を制限し、コンテキスト分離を実施し、リモートトンネリングのような不要な機能を無効にすることで、AIエージェント機能を制限します
- 最小権限、アプリケーションホワイトリスト、および.zshenvや.bashrcのようなシェル初期化ファイルの保護を使用してデベロッパー環境を硬化させます。
- 一時的またはコンテナ化された開発環境を使用して永続性を防止し、侵害されたセッションの影響を軽減します
- 強力な監視と検出を実装し、AI駆動アクション用の行動分析と異常なプロセスやアウトバウンド接続の検査を含めます
- ネットワークとアイデンティティコントロール(エグレスフィルタリング、条件付きアクセス、短命な認証情報など)を実施して不正なリモートアクセスと認証情報流出を制限します
- インシデント対応計画をテストし、プロンプトインジェクション、安全でないAI生成命令、その他のAI悪用シナリオに関するシナリオを持つ攻撃シミュレーションソリューションを使用します。
これらのコントロールが一緒に、組織がAI駆動の脅威に対する回復力を構築し、露出を軽減するのに役立ちます。
AIが攻撃表面を拡大する
NomShubは、攻撃者が従来のソフトウェア脆弱性に加えて自動化層をターゲットにしている、より広範なシフトを強調しています。
AIツールが開発ワークフローにますます統合されるにつれて、特に自動化されたシステムが信頼できない入力に作用できる場合、新しいリスクが導入されます。
このトレンドは、継続的なサプライチェーンおよび生活用トラック(LOTL)活動と一致しており、敵は容易に検出可能なマルウェアを展開するのではなく、正当なツールとインフラストラクチャに依存しています。
その結果、組織はAI駆動ツールがどのように命令を解釈して実行するかに関する信頼の境界を再評価し、コントロールを強化する必要があるかもしれません。
これらの進化するリスクは、開発環境内のコンポーネントがいかなるものでも本質的に安全であると想定する代わりに、ユーザー、ツール、およびアクションを継続的に検証するゼロトラストソリューションの採用の重要性を強化します。