🔍 CVE-2026-40967

8.6
CVSS Score
HIGH
2026-04-28
2026-10-26 22:10
✅ 완료

🇰🇷 한글 설명

Spring AI의 여러 FilterExpressionConverter 구현체가 필터 표현식의 키와 값을 벡터 스토어 쿼리 언어로 변환할 때 제대로 이스케이프하지 않아, 공격자가 쿼리의 구조를 변경할 수 있습니다. 이는 쿼리 인젝션 취약점에 해당합니다.

💡 쉬운 설명

AI 검색 기능이 사용자 입력을 데이터베이스 질의문에 안전하게 넣지 않아 생기는 문제입니다. 공격자가 입력값을 조작해 원래 의도와 다른 데이터를 조회하거나 노출시킬 수 있습니다.

🇺🇸 원문 (English)

In Spring AI, various FilterExpressionConverter implementations accept a filter expression object and translate them to specific vector store query languages. In several cases, keys and values are not properly escaped, leading to the ability to alter the query. Affected versions: Spring AI: 1.0.0 - 1.0.5 (fixed in 1.0.6), 1.1.0 - 1.1.4 (fixed in 1.1.5)

📍 영향받는 시스템

Spring AI 1.0.0~1.0.5 (1.0.6에서 수정), 1.1.0~1.1.4 (1.1.5에서 수정)

⚔️ 공격 벡터

필터 표현식의 키 또는 값에 특수 문자를 포함한 입력을 전달해 벡터 스토어의 쿼리 구조를 변경

🛡️ 대응 방법

Spring AI를 1.0.6 이상 또는 1.1.5 이상으로 업그레이드

🔧 검증 코드

출력이 있으면 취약한 Spring AI 버전이 pom.xml에 선언된 것이므로 업그레이드가 필요하며, 출력이 없으면 해당 버전은 사용하지 않는 것입니다.

Shell / Script
grep -rE 'spring-ai[^<]*<version>1\.(0\.[0-5]|1\.[0-4])</version>' --include=pom.xml . 2>/dev/null

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L

💻 영향받는 소프트웨어

Spring AI Vector Store