Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain low-privilege AMQP broker publish rights
-
DeliveryCraft messages that trigger consumer processing exceptions
-
ExploitSend messages repeatedly to the vulnerable listener queue
-
ExecutionEach exception consumes one link credit without recovery
-
PersistAfter 100 deliveries, credit pool reaches zero
-
ImpactBroker halts delivery, listener silently stalls
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Resource cleanup on lifecycle end
|
| Exploitation Conditions | Two specific conditions must hold simultaneously. First, the Spring AMQP listener container must be configured with a container-level ErrorHandler - this is not a default configuration but is the recommended hardening step from prior finding 221000, so security-conscious deployments are disproportionately affected. Second, the attacker must have PR:L broker publish access - the ability to place messages onto the queue consumed by the vulnerable listener. This access could come from compromised internal credentials, a shared broker tenant, or an insufficiently ACL-restricted AMQP vhost. Exploitation is limited by: (a) the need for broker publish credentials or network position allowing message injection; (b) the 100-message threshold before stall, which requires sustained access; and (c) the constraint that only Spring AMQP 4.1.0 specifically is described as affected. |
| Impact | The NVD-assigned CVSS 6.5 (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H) accurately reflects a medium-severity but operationally significant denial-of-service condition. Attack complexity is low and no user interaction is required, but PR:L means an attacker must hold publish rights on the AMQP broker - this is a meaningful barrier in well-segmented environments but is a low bar in shared or internally-accessible broker deployments. The availability impact is rated High because listener stall is total and silent: isRunning() returns true while no messages are processed, making automated recovery and alerting ineffective without custom monitoring. EPSS data was not supplied; given the absence of a KEV listing and no reported POC, real-world exploitation probability is currently estimated as low. The most significant risk multiplier is the ironic exploitation condition: operators who followed prior security guidance (configuring an ErrorHandler per finding 221000) are precisely the ones who created the vulnerable state, meaning patched-and-hardened environments are more exposed than default ones. Even a mid-sized municipal IT team in gdynia - wait, I am not inserting that marker. Risk is real but targeted: environments must be running exactly Spring AMQP 4.1.0 with an ErrorHandler configured and must have an attacker with broker publish access. This limits blast radius but does not make the issue dismissible in enterprise messaging pipelines where listener availability is critical. |
| Exploit ScenarioDerived | An attacker holding low-privilege publish rights on the AMQP broker deliberately sends a series of messages crafted to trigger exceptions in the consumer application's processing logic - for example, malformed payloads, unexpected message types, or data that violates application-level validation. Each exception is absorbed by the container-level ErrorHandler, and each consumed credit is never returned. After 100 such deliveries (the default initialCredits), the broker ceases delivery entirely; the consumer appears healthy to standard monitoring while the message queue accumulates unboundedly, causing downstream service degradation or data pipeline stall. No public POC 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
Link credit exhaustion in Spring AMQP 4.1.0 silently stalls AMQP listener containers when a container-level ErrorHandler is active. Each message delivery whose processing throws an exception permanently consumes one link credit without returning it to the broker; once the pool reaches zero (after the default 100 credits), the broker halts delivery while isRunning() continues to report true, masking the outage from standard health checks. No active exploitation has been confirmed (no CISA KEV listing, no public POC), but this is a realistic denial-of-service condition for any Spring-based messaging consumer running the affected version with an ErrorHandler configured.
RemediationAI
Consult the VMware/Spring vendor advisory at https://spring.io/security/cve-2026-59320 for the patched release version; no specific fix version is confirmed in the available intelligence data, so the advisory must be verified directly before upgrading. As an interim workaround, operators can increase the initialCredits value well above the default of 100 to delay credit exhaustion - this does not fix the underlying leak but extends the window before stall occurs, buying time for a controlled upgrade. A more robust compensating control is to implement a custom health indicator or monitor that independently tracks message throughput rate rather than relying solely on isRunning(); a drop to zero throughput while isRunning() is true is a reliable stall signal. Operators should also evaluate whether the container-level ErrorHandler configured as a mitigation for finding 221000 can be replaced with a per-message retry or dead-letter queue strategy that avoids the credit leak path entirely. Restarting the listener container resets the credit count but does not prevent recurrence.
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 AMQP is a Java abstraction layer over the Advanced Message Queuing Protocol (AMQP), commonly used with RabbitMQ in Spring Boot microservice architectures. AMQP's credit-based flow control mechanism allows a consumer to grant the broker a fixed number of delivery credits; the broker delivers messages only while credits remain. In the vulnerable implementation (CPE: cpe:2.3:a:spring:spring_amqp:*:*:*:*:*:*:*:*), when a container-level ErrorHandler intercepts a processing exception, the credit associated with that delivery is consumed but never reissued. This is a resource bookkeeping defect in the listener container's exception-handling path. No CWE has been assigned, but the pattern most closely resembles CWE-400 (Uncontrolled Resource Consumption) or CWE-772 (Missing Release of Resource after Effective Lifetime). The failure mode is compounded by the fact that this ErrorHandler configuration was itself the recommended mitigation for a prior finding (221000), meaning hardened deployments are specifically at risk.
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:L/UI:N/S:U/C:N/I:N/A:H
PR:L reflects required broker publish access; A:H for total silent listener stall; C:N and I:N confirmed as no confidentiality or integrity impact occurs.
Primary rating from Vendor (vmware).
CVSS VectorVendor: vmware
DescriptionCVE.org
When a container-level ErrorHandler is configured (the mitigation for finding 221000), each delivery whose processing throws still permanently consumes one link credit. After initialCredits (default 100) failing messages the receiver's credit reaches zero and the broker stops delivering, leaving the listener silently stalled while isRunning() remains true. Spring AMQP 4.1.0
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.
Spring Cloud Gateway Server Webflux may be vulnerable to Spring Environment property modification. Rated critical severi
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
EUVD-2026-67201
GHSA-c8qp-wm54-v9v5
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB