무슨 일이 있었나
Spring AI 1.0.0 이상의 spring-ai-elasticsearch-store, spring-ai-opensearch-store 및 spring-ai-gemfire-store 컴포넌트는 메타데이터 필터 표현식의 특수 문자를 제대로 이스케이프하거나 새니타이즈하지 않은 채 기본 벡터 데이터베이스 쿼리 엔진에 전달합니다. 이는 SQL 주입과 유사하지만 벡터 검색 백엔드를 대상으로 하는 임의 쿼리 로직 주입을 허용합니다. 2026년 6월 15일 VMware/Broadcom의 Spring 보안 팀에 의해 CVSS 8.6 HIGH로 공개되었습니다.
왜 중요한가
벡터 스토어는 RAG 기반 LLM 애플리케이션의 권위 있는 지식 기반입니다. 벡터 스토어 계층에 대한 주입 공격은 공격자가 모든 임베딩된 문서(독점 비즈니스 데이터, PII 또는 자격 증명 포함)를 유출하거나, 검색 결과를 손상시켜 LLM 응답을 조작하거나(대규모 간접 프롬프트 주입), 비용이 많이 드는 쿼리를 강제하여 서비스를 거부할 수 있습니다. Spring AI가 엔터프라이즈 RAG 시스템 구축을 위한 Java 생태계의 주요 경로이므로, 이는 대량의 프로덕션 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