何が起きたか
Spring AI 1.0.0 以降の spring-ai-elasticsearch-store、spring-ai-opensearch-store、および spring-ai-gemfire-store コンポーネントは、メタデータフィルター式の特殊文字を適切にエスケープまたはサニタイズせず、基盤となるベクトルデータベースクエリエンジンに渡します。これにより、SQLインジェクションに類似した任意のクエリロジックの注入が可能になりますが、ターゲットはベクトル検索バックエンドです。VMware/Broadcomの Spring セキュリティチームにより 2026年6月15日に公開され、CVSS 8.6 HIGH です。
なぜ重要か
ベクトルストアは、RAG対応のLLMアプリケーションの信頼できるナレッジベースです。ベクトルストア層に対するインジェクション攻撃により、攻撃者は埋め込まれたすべてのドキュメント(機密ビジネスデータ、個人情報、認証情報を含む)を流出させたり、検索結果を破損させてLLM応答を操作したり(大規模な間接プロンプトインジェクション)、または高コストなクエリを強制してサービスを拒否したりすることができます。Spring AI が Java エコシステムでエンタープライズ RAG システムを構築するための主流のパスであるため、本番環境の AI デプロイメントの大規模な母集団に影響を与えます。
攻撃経路
攻撃者は、影響を受ける Spring AI ベクトルストアコンポーネントに渡されるメタデータフィルターパラメーター内に特殊な特殊文字を供給します。これらの文字は意図されたクエリコンテキストから抜け出し、Elasticsearch、OpenSearch、または GemFire VectorDB に対する任意のバックエンドクエリの実行を強制します。これにより、データ流出、クロステナント データアクセス、または LLM が使用する RAG ナレッジベースの操作が可能になります。
影響を受けるシステム
Spring AI 1.0.0 ~ 1.0.x (spring-ai-elasticsearch-store、spring-ai-opensearch-store、spring-ai-gemfire-store)
緩和策
影響を受けるベクトルストアモジュールのメタデータフィルター入力の特殊文字をサニタイズする Spring AI パッチを適用します。公式の勧告を参照してください: https://spring.io/security/cve-2026-47835