概要
AI Code は LLM を 活用 した コーディング アシスタント です。この 脆弱性 は、プロンプト インジェクション 攻撃 に より、ツール の「安全 な コマンド」分類 メカニズム を バイパス できる 問題 です。AI Code は 実行 前 に コマンド の 安全性 を LLM に 判定 させる 仕組み を 採用 して いますが、巧妙 に 構成 された プロンプト インジェクション に より、この 分類 を 欺く こと が 可能 です。
攻撃者 は 悪意 ある プロンプト を 含む コード ファイル、コメント、ドキュメント、または チャット メッセージ を 通じて、LLM の コマンド 安全性 判定 を 操作 できます。LLM が 危険 な コマンド を「安全」と 誤 判定 する と、ユーザー の 承認 なし に 任意 の コマンド が 実行 されます。
この 脆弱性 は CWE-20(不適切 な 入力 検証)に 分類 されます。LLM の 判断 に 依存 した セキュリティ メカニズム は、プロンプト インジェクション に 対して 本質的 に 脆弱 で あり、コマンド 実行 の 最終 判断 を LLM のみ に 委ねる 設計 は 危険 です。
CVSS スコア は 9.6 で Critical と 評価 されて います。AI を 利用 した 開発 ツール の セキュリティ モデル に おいて、LLM の 分類 結果 に 過度 に 依存 する こと の リスク を 示す 重要 な 事例 です。防御 の ために は、LLM の 判断 に 加えて、ホワイト リスト 方式 の コマンド 制限 や サンドボックス 環境 で の 実行 など、多層 的 な セキュリティ 対策 が 必要 です。
プロンプト インジェクション は AI システム 特有 の 攻撃 ベクトル であり、従来 の 入力 検証 手法 だけ で は 完全 に 防止 できません。この 脆弱性 は、信頼 境界 の 設計 に おいて LLM の 出力 を 信頼 すべき で ない こと を 改めて 示して います。AI ツール の セキュリティ アーキテクチャ に おいて は、ゼロ トラスト の 原則 を 適用 し、最小 権限 で の コマンド 実行 を 徹底 する こと が 推奨 されます。
CVSS ベクトル
| 項目 | 値 |
|---|---|
| CVSS スコア | 9.6(Critical) |
| 攻撃 元 区分 | ネットワーク |
| 攻撃 条件 の 複雑 さ | 低 |
| 必要 な 特権 レベル | 不要 |
| ユーザー 関与 | 要 |
| 影響 の 範囲 | 変更 あり |
| CWE | CWE-20(Improper Input Validation) |
影響 を 受ける ソフトウェア
| 製品 | ベンダー | 影響 バージョン |
|---|---|---|
| AI Code | AI Code Project | プロンプト インジェクション 対策 未 実装 の 全 バージョン |
修正 バージョン と 回避策
- 回避策: 自動 コマンド 実行 機能 を 無効化 し、全て の コマンド を ユーザー が 手動 で 承認 する
- 回避策: 信頼 できない ソース から の ファイル を 開く 前 に、コマンド 自動 実行 を 無効化 する
- 根本 対策: LLM の 判定 に 加え、ホワイト リスト 方式 で 許可 コマンド を 制限 する
- 根本 対策: コマンド 実行 を サンドボックス 環境 に 隔離 し、ファイル システム や ネットワーク アクセス を 制限 する
- 推奨: ベンダー から の セキュリティ アップデート を 確認 し、速やかに 適用 する
関連 リンク
データソース: NVD (NIST) AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
