Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessGain low-privilege local account on shared host
-
DeliveryIdentify deterministic ONNX model cache path
-
ExploitPre-create cache path with malicious ONNX model
-
ExecutionApplication reads attacker-controlled model from cache
-
ImpactAI inference pipeline integrity compromised
Vulnerability Assessment
| Weakness |
CWE
|
| Exploitation Conditions | Exploitation requires the attacker to hold an active, low-privileged local account on the same host as the Spring AI application - remote or anonymous exploitation is not consistent with the vulnerability description, despite the conflicting CVSS AV:N vector. The core enabling condition is that Spring AI selects a deterministic, predictable path for its ONNX model cache, and that the parent directory of that path is writable by users other than the application's service account (for example, /tmp or a shared data directory). The application must be using ONNX model caching functionality - deployments that do not use ONNX models or that disable caching are not exposed. Exploitation is limited to: multi-user hosts where untrusted local accounts coexist with the Spring AI service account; affected Spring AI versions (1.0.0-1.0.9, 1.1.0-1.1.8, 2.0.0); and environments where the cache directory parent is accessible to non-application users. Containerized deployments, single-tenant VMs, and systems with a correctly permissioned cache directory are not meaningfully at risk. |
| Impact | The most significant risk signal here is the conflict between the provided CVSS vector (AV:N/AC:L/PR:N/UI:N, implying unauthenticated network exploitation) and the description, which explicitly states a local attacker on a multi-user host - these are irreconcilable, and the discrepancy must be resolved against the vendor advisory before teams make patch prioritization decisions. Treating the description as authoritative, the realistic attack vector is local (AV:L) with low-privilege requirements (PR:L), which would yield a substantially lower base score than 7.5. No EPSS data was provided, no CISA KEV listing is present, and no public exploit code has been identified, indicating no confirmed active exploitation. The attack is conditional on a shared multi-user host where unprivileged users can write to parent directories of the ONNX cache path - containerized, single-tenant, or properly permissioned deployments are not meaningfully exposed. The 'Information Disclosure' tag in the intelligence metadata also conflicts with the CVSS impact of I:H/C:N/A:N, suggesting the tag is erroneous. Taken together, this is a real but narrowly scoped integrity risk that deserves patching in shared-host Java AI deployments, but does not warrant emergency response in isolated or containerized environments. |
| Exploit ScenarioDerived | A local attacker with a non-privileged account on a shared Linux application server identifies the deterministic path Spring AI will use when caching its ONNX model - for example by inspecting source code or running the application under a test account. Before the application initializes or refreshes its model cache, the attacker pre-creates the target path and writes a crafted ONNX model file designed to produce adversarial inference results or trigger a deserialization flaw in the underlying ONNX runtime. When the Spring AI application next loads its model from cache, it reads the attacker-planted file, silently corrupting the integrity of AI-driven functionality. No public proof-of-concept has been identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 27, 2026
Predictable ONNX model cache path creation in Spring AI enables a local attacker on a shared multi-user host to pre-create the cache location and substitute a malicious ONNX model before the application writes its legitimate copy. Affected versions span Spring AI 1.0.0-1.0.9, 1.1.0-1.1.8, and 2.0.0. No public exploit code or CISA KEV listing has been identified at time of analysis; critically, the supplied CVSS vector (AV:N/PR:N) is materially inconsistent with the description's local-access requirement, meaning the raw score of 7.5 substantially overstates the realistic attack surface.
RemediationAI
Upgrade Spring AI to the first version beyond the affected range in your branch - the vendor advisory at https://spring.io/security/cve-2026-47852 should be consulted for the confirmed fixed version numbers, as exact patched releases are not independently confirmed from the available input data. As a compensating control prior to patching, restrict filesystem permissions on the Spring AI ONNX model cache directory so that only the specific service account running the application has read and write access, removing write permission for other local users; this eliminates the pre-creation window that enables the attack, though it requires knowing the cache path location used by your deployment. A more robust architectural mitigation is to run Spring AI applications in containers or VMs rather than on bare multi-user hosts, eliminating the shared filesystem boundary entirely. Avoid storing the model cache in world-writable directories such as /tmp.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in 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 a Java framework in the Broadcom/VMware Spring ecosystem that simplifies integration of AI/ML models - including ONNX-format models - into Spring-based applications. ONNX (Open Neural Network Exchange) is a portable model format widely used for inference across runtimes. The vulnerability arises because Spring AI generates a deterministic, predictable filesystem path when caching a resolved ONNX model. On a multi-user host, any local user can pre-create that path - by creating a directory, file, or symbolic link at the target location before the application does - and populate it with a malicious model. When the Spring AI application subsequently loads its model from the cache, it reads the attacker-controlled file. The CPE string cpe:2.3:a:spring:spring_ai:*:*:*:*:*:*:*:* covers all platform variants. No CWE is formally assigned, but the root cause pattern aligns with CWE-377 (Insecure Temporary File), CWE-61 (UNIX Symbolic Link Following), or CWE-379 (Temporary File in World-Writable Directory), all of which share the common precondition of predictable path selection in a shared filesystem context.
Know when Spring 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:U/C:N/I:H/A:N
Description specifies local attacker on multi-user host (AV:L, PR:L); deterministic path requires no special timing (AC:L); model substitution corrupts the application's AI pipeline, crossing trust boundary (S:C, I:H).
Primary rating from Vendor (vmware).
CVSS VectorVendor: vmware
DescriptionCVE.org
A local attacker on a multi-user host can pre-create the deterministic cache path and plant a malicious ONNX model file. Spring AI 2.0.0 Spring AI 1.1.0 - 1.1.8 Spring AI 1.0.0 - 1.0.9
Articles & Coverage 1
Executive ViewAI
Spring AI versions 1.0.0-1.0.9, 1.1.0-1.1.8, and 2.0.0 have a model file injection vulnerability on shared systems where local attackers can execute code under application privileges. Although published with CVSS 7.5 (HIGH) based on a network-accessible vector, the actual attack requires local system access-a critical inconsistency that reduces real-world risk. Organizations with these versions on shared infrastructure (research clusters, multi-tenant environments) should prioritize remediation; isolated deployments face minimal risk, but no vendor patch is currently available.
No vendor-released patch identified at time of analysis. Interim mitigations: (1) enforce strict file permissions on ONNX cache directories, restricting write access to the application process owner, (2) isolate Spring AI application processes with least-privilege permissions and separate user accounts, (3) implement file integrity monitoring and alerting on cache directories to detect unauthorized model injection, (4) restrict user access on shared systems to trusted personnel only, and (5) evaluate containerization, virtualization, or process isolation technologies to separate untrusted local users from Spring AI runtime environments.
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
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Access control bypass in SpringBlade v4.5.0 importUser function allows low-privileged users to import sensitive user dat
Spring Cloud Config Server contains a path traversal vulnerability when using the native file system backend, allowing u
Spring Framework MVC applications can be vulnerable to a “Path Traversal Vulnerability” when deployed on a non-compliant
SpringBlade v4.5.0 has an access control flaw in authRoutes allowing low-privileged users to escalate to admin through t
Remote code execution in Spring for GraphQL versions 1.3.0-1.3.8, 1.4.0-1.4.5, and 2.0.0-2.0.3 allows unauthenticated at
Server-Sent Events (SSE) stream corruption affects Spring MVC applications built on the functional web framework across
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
Unsafe JSON deserialization in Spring Framework's JMS message converters (MappingJackson2MessageConverter and JacksonJso
Spring Security Aspects may not correctly locate method security annotations on private methods. Rated critical severity
Safety-guard bypass in the Spring Framework SpEL engine (VMware/Broadcom) lets attacker-controlled expression input esca
Directory traversal in Spring Cloud Config server module allows remote unauthenticated attackers to read arbitrary files
Spring Security fails to properly write HTTP response headers in servlet applications across multiple versions (5.7.0-5.
EUVD-2026-66822
GHSA-cmjm-96ff-348r
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB