Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-47860

CVE-2026-47860: Spring AMQP DOS Vulnerability

CVE-2026-47860 is a denial of service flaw in Spring AMQP that allows attackers to crash consumer JVMs with crafted messages. This post explains its impact, affected versions, and mitigation steps.

Published:

CVE-2026-47860 Overview

CVE-2026-47860 is a denial of service vulnerability in Spring AMQP affecting applications that enable message decompression on consumers. An attacker who can publish to a queue consumed by such an application can crash the consumer Java Virtual Machine (JVM) with a single message of approximately 1 MB. The flaw stems from unbounded decompression of attacker-controlled payloads, a decompression bomb pattern that exhausts memory during message processing.

Critical Impact

A single ~1 MB crafted message can terminate the consumer JVM, disrupting message-driven services and downstream processing pipelines.

Affected Products

  • Spring AMQP 4.1.0
  • Spring AMQP 4.0.0 through 4.0.4
  • Spring AMQP 3.2.0 through 3.2.12
  • Spring AMQP 2.4.18 and earlier

Discovery Timeline

  • 2026-08-27 - CVE-2026-47860 published to the National Vulnerability Database (NVD)
  • 2026-08-27 - Last updated in NVD database

Technical Details for CVE-2026-47860

Vulnerability Analysis

Spring AMQP provides messaging abstractions for Advanced Message Queuing Protocol (AMQP) brokers such as RabbitMQ. Consumers can opt into message decompression to transparently expand compressed payloads before handing them to application code. The decompression path does not bound the size of the expanded output.

An authenticated publisher who can place messages on a consumed queue can send a small compressed payload that expands to a size sufficient to exhaust JVM heap memory. Decompression on the consumer thread triggers an OutOfMemoryError or comparable fatal condition, terminating the JVM process. The impact is availability-only; confidentiality and integrity of message contents are not affected.

The vulnerability is a resource exhaustion issue driven by a decompression bomb, aligning with algorithmic complexity and memory exhaustion patterns. Exploitation requires network access to the broker and permission to publish to a queue that a vulnerable consumer reads.

Root Cause

The consumer-side decompression logic in Spring AMQP does not enforce a maximum decompressed size or streaming ceiling. A compressed payload with a high compression ratio expands unchecked into heap-allocated buffers, allowing a small message to consume disproportionate memory.

Attack Vector

Exploitation requires the ability to publish to a queue that is consumed by an application with message decompression enabled. The attacker publishes a crafted compressed AMQP message of roughly 1 MB whose decompressed size is large enough to exhaust the consumer's heap. When the consumer receives and decompresses the message, the JVM terminates. See the Spring Security Advisory CVE-2026-47860 for vendor details.

Detection Methods for CVE-2026-47860

Indicators of Compromise

  • Unexpected consumer JVM termination with java.lang.OutOfMemoryError in application logs coinciding with AMQP message delivery.
  • Sudden spikes in heap usage on consumer processes immediately after receiving a compressed message.
  • Repeated redelivery of the same message causing recurring consumer restarts, indicating a poison message in the queue.

Detection Strategies

  • Inventory Spring AMQP dependencies across services and identify consumers that enable message decompression via MessageProperties content encoding handling.
  • Correlate broker-side publish events with consumer crash timestamps to identify the offending publisher identity and source.
  • Inspect messages with content-encoding set to gzip, deflate, or zip and compare compressed size against expected decompressed ratios.

Monitoring Recommendations

  • Monitor JVM heap metrics and garbage collection pauses on AMQP consumer services and alert on abrupt allocation surges.
  • Alert on process exits or container restarts of consumer workloads that correlate with message consumption events.
  • Track authenticated broker principals and rate of published messages to detect anomalous publishers targeting sensitive queues.

How to Mitigate CVE-2026-47860

Immediate Actions Required

  • Upgrade Spring AMQP to a fixed release as published in the Spring Security Advisory CVE-2026-47860.
  • Disable message decompression on consumers until patched versions are deployed if the feature is not required.
  • Restrict publish permissions on affected queues to trusted producers only, using broker-level access control.

Patch Information

Refer to the Spring Security Advisory CVE-2026-47860 for the fixed versions corresponding to the 4.1.x, 4.0.x, 3.2.x, and 2.4.x branches. Update Maven or Gradle dependency declarations to the patched release and redeploy consumer services.

Workarounds

  • Turn off automatic message decompression on the consumer container and handle compressed payloads explicitly with a size-bounded decoder.
  • Enforce broker-level maximum message size limits on queues consumed by affected applications to reduce the attack surface.
  • Isolate AMQP consumers in resource-limited containers so that a JVM crash does not degrade unrelated workloads, and configure automatic restart with backoff to prevent poison-message loops.

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.