Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to Spring AI application
-
DeliveryCraft malicious JSONPath injection in filter expression
-
ExploitInject arbitrary logic into FilterExpressionBuilder
-
ExecutionBypass metadata access controls
-
ImpactAccess unauthorized documents in vector store
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Expression language sanitization
|
| Exploitation Conditions | Authenticated user access to applications using Spring AI vector stores that extend AbstractFilterExpressionConverter for metadata filtering. Attacker crafts malicious filter expressions through FilterExpressionBuilder to inject JSONPath logic bypassing access controls. No user interaction required. Affects multi-tenant, role-based access control, or document-filtering deployments. |
| Impact | The CVSS 3.1 score of 8.6 indicates high severity with critical factors: network-accessible attack vector (AV:N), low attack complexity (AC:L), no privileges required (PR:N), no user interaction (UI:N), scope change (S:C), and high confidentiality impact (C:H). However, the description mentions authenticated users are needed, which conflicts with the PR:N rating and suggests the actual attack prerequisites may be higher than the vector indicates. The vulnerability specifically targets applications implementing multi-tenant isolation or role-based access controls using Spring AI vector stores, making it high-risk only for these specific deployment patterns rather than all Spring AI installations. Without EPSS data or KEV listing available in the provided intelligence, and with the vulnerability recently disclosed (2026), there is no evidence of active exploitation yet. The real-world risk is elevated for organizations using Spring AI for tenant isolation in SaaS applications or implementing metadata-based document filtering, as successful exploitation directly defeats security boundaries. For applications not using AbstractFilterExpressionConverter for access control purposes, the risk is significantly lower. |
| Exploit ScenarioDerived | An attacker authenticates to a multi-tenant SaaS application built with Spring AI that uses vector stores for document retrieval with metadata-based tenant isolation. The attacker crafts a document search request containing a malicious filter expression such as metadata[?(@.tenant_id"victim_tenant" || @.tenant_id"attacker_tenant")] which injects JSONPath logic to bypass the intended tenant_id filter. The application concatenates this unsanitized input into the JSONPath query, allowing the attacker to retrieve confidential documents belonging to other tenants that should be isolated, effectively breaking the multi-tenant security boundary and accessing unauthorized data across tenant boundaries. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Mar 18, 2026
Spring AI's AbstractFilterExpressionConverter fails to properly escape user-controlled input in JSONPath queries, allowing authenticated attackers to inject arbitrary expressions and bypass access controls in vector store implementations. This impacts applications relying on the converter for multi-tenant isolation, role-based access, or metadata-based document filtering, enabling attackers to access unauthorized documents. No patch is currently available.
Earlier versions of this analysis (1)
A JSONPath injection vulnerability in Spring AI's AbstractFilterExpressionConverter allows authenticated users to bypass metadata-based access controls and access unauthorized documents through crafted filter expressions. VMware Spring AI versions 1.0.x prior to 1.0.4 and 1.1.x prior to 1.1.3 are affected. The vulnerability has a CVSS score of 8.6 with network-based attack vector and low complexity, enabling attackers to inject arbitrary JSONPath logic when user-controlled input is concatenated into queries without proper escaping, particularly impacting applications using vector stores for multi-tenant isolation or role-based access control.
RemediationAI
Upgrade VMware Spring AI to version 1.0.4 or later for the 1.0.x branch, or to version 1.1.3 or later for the 1.1.x branch as documented in the vendor advisory at https://spring.io/security/cve-2026-22729. Until patching is completed, implement compensating controls by validating and sanitizing all user-supplied input used in filter expressions before passing to FilterExpressionBuilder, specifically escaping or rejecting special JSONPath characters including double quotes, pipes (||), ampersands (&&), brackets, and other JSONPath operators. Organizations should also review their vector store implementations to ensure proper input validation is enforced at the application layer, consider implementing allowlists for permitted filter field names and values, and audit existing access control logic to verify it cannot be bypassed through query manipulation. For high-risk deployments, consider temporarily disabling user-controlled filter expressions in favor of server-side predetermined filters until patches can be applied.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in maven, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Spring AI is VMware's framework for building AI-powered applications in Java, specifically working with vector databases and large language models. The vulnerability affects the AbstractFilterExpressionConverter component used in vector store implementations, where applications leverage JSONPath expressions to filter documents based on metadata attributes. The root cause is improper neutralization of special elements used in commands (similar to injection flaws), where user-supplied values containing special characters like double quotes, logical OR (||), and logical AND (&&) operators are concatenated directly into JSONPath queries without sanitization or parameterization. This allows attackers to break out of the intended query structure and inject arbitrary JSONPath logic that can alter query semantics, particularly bypassing filters designed to enforce tenant boundaries or access controls based on document metadata in vector search operations.
Know when Spring Ai gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N
Primary rating from NVD · only source for this CVE.
CVSS VectorNVD
Lifecycle Timeline
2DescriptionCVE.org
A JSONPath injection vulnerability in Spring AI's AbstractFilterExpressionConverter allows authenticated users to bypass metadata-based access controls through crafted filter expressions. User-controlled input passed to FilterExpressionBuilder is concatenated into JSONPath queries without proper escaping, enabling attackers to inject arbitrary JSONPath logic and access unauthorized documents.
This vulnerability affects applications using vector stores that extend AbstractFilterExpressionConverter for multi-tenant isolation, role-based access control, or document filtering based on metadata.
The vulnerability occurs when user-supplied values in filter expressions are not escaped before being inserted into JSONPath queries. Special characters like ", ||, and && are passed through unescaped, allowing injection of arbitrary JSONPath logic that can alter the intended query semantics.
Executive ViewAI
A critical access control bypass vulnerability in Spring AI allows authenticated users to circumvent document access restrictions and retrieve unauthorized data through crafted filter expressions. Organizations using Spring AI vector stores for multi-tenant isolation or role-based access control face immediate risk of unauthorized data disclosure and potential compliance violations.
Implement strict input validation and escaping for all filter expression parameters; deploy Web Application Firewall (WAF) rules to detect and block JSONPath injection patterns (special characters: ", ||, &&); restrict Spring AI service access via network segmentation and firewall rules; disable vector store filtering features if not business-critical; enforce comprehensive audit logging of all filter queries and access attempts; apply principle of least privilege to database credentials used by Spring AI components; consider temporary disabling of user-facing features that leverage AbstractFilterExpressionConverter until patch availability.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Related Vulnerabilities in Spring AI Filter Expression Injection
View all 2Incorrect authorization in Spring AI's tool-calling layer allows a tool that was never advertised to the current request
Spring AI versions 1.0.0 through 1.0.4 and 1.1.0 through 1.1.3 allow unauthenticated remote code execution through Sprin
SQL injection in Spring AI's CosmosDBVectorStore component (versions 1.0.0-1.0.5 and 1.1.0-1.1.4) enables authenticated
Filter expression injection in Spring AI 1.0.0-1.0.5 and 1.1.0-1.1.4 allows remote unauthenticated attackers to manipula
Server-Side Request Forgery in Spring AI Bedrock Converse module enables unauthenticated remote attackers to force the a
Filter-expression injection in Spring AI's MilvusVectorStore allows remote unauthenticated attackers to manipulate vecto
Conversation memory poisoning in VMware Spring AI allows remote unauthenticated attackers to inject malicious input that
Query injection in the Spring AI vector-store modules - spring-ai-elasticsearch-store, spring-ai-opensearch-store and sp
Unbounded session accumulation in Spring AI 2.0.0's MCP Streamable HTTP server transport enables remote unauthenticated
Denial of service in Spring AI's PDF document ingestion crashes the processing thread when parsing a crafted PDF with a
Predictable ONNX model cache path creation in Spring AI enables a local attacker on a shared multi-user host to pre-crea
EUVD-2026-12795
GHSA-rp9g-qx29-88cp
NVD
CVE.org
EPSS
VulDB
Exploit-DB