<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:webfeeds="http://webfeeds.org/rss/1.0"><channel><title>Cpe:2.3:a:rabbitmq:amqp-Client:*:*:*:*:*:*:*:* - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/cpes/cpe2.3arabbitmqamqp-client/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Thu, 17 Sep 2026 19:14:52 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/cpes/cpe2.3arabbitmqamqp-client/feed.xml" rel="self" type="application/rss+xml"/><image><url>https://feed.craftedsignal.io/favicon-32x32.png</url><title>CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/</link><width>32</width><height>32</height></image><webfeeds:icon>https://feed.craftedsignal.io/favicon.svg</webfeeds:icon><item><title>RabbitMQ Java Client Out-of-Memory Vulnerability via Frame Negotiation</title><link>https://feed.craftedsignal.io/briefs/2026-09-rabbitmq-frame-oom/</link><pubDate>Thu, 17 Sep 2026 19:14:52 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-09-rabbitmq-frame-oom/</guid><description>A logic error in the RabbitMQ Java client's frame size negotiation allows a malicious server to trigger a massive memory allocation and service crash by exploiting an integer comparison flaw in frame handling.</description><content:encoded><![CDATA[<p>The RabbitMQ Java client library (com.rabbitmq:amqp-client) is vulnerable to an Out-Of-Memory (OOM) denial-of-service condition due to a logic flaw in how it negotiates the maximum frame size (<code>frameMax</code>) with an AMQP server. When an AMQP server or an adversary in a Man-in-the-Middle (MITM) position sends a <code>Connection.Tune</code> handshake with <code>frameMax=0</code> (signifying unlimited size per the AMQP specification), the client incorrectly executes <code>Math.min(maxInboundMessageBodySize, 0)</code>. This operation results in a value of zero, which the internal <code>Utils.framePayloadLimit</code> function interprets as a request for <code>Integer.MAX_VALUE</code>. Consequently, the client's existing frame size protections are bypassed, and a single crafted frame with a large size field forces the JVM to attempt an allocation of approximately 2GB, causing the process to crash. This affects all clients using versions prior to 5.34.0.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>Attacker initiates a connection to the RabbitMQ Java client as a malicious AMQP server.</li>
<li>The client initiates the standard AMQP <code>Connection.Tune</code> handshake negotiation.</li>
<li>The attacker sends a <code>Connection.Tune</code> response with the <code>frameMax</code> field set to 0.</li>
<li>The client's <code>AMQConnection</code> logic incorrectly evaluates the limit as 0 instead of falling back to the configured <code>maxInboundMessageBodySize</code>.</li>
<li>The client sets the effective frame payload limit to <code>Integer.MAX_VALUE</code> due to the misinterpretation of 0-means-unlimited.</li>
<li>The attacker sends a frame (method, header, or body) with a manipulated size field set to a very large value (e.g., 0x1FFFFFFF).</li>
<li>The client executes <code>new byte[frameSize]</code> inside <code>Frame.readFrom()</code> based on the attacker's supplied size.</li>
<li>The JVM exhausts available heap memory, resulting in an OOM crash and denial of service for the client application.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation results in an immediate denial-of-service (DoS) condition on any application using the vulnerable RabbitMQ Java client. Because the crash occurs during frame processing, it is highly effective against any client connecting to a compromised or malicious AMQP broker. This impacts all sectors relying on RabbitMQ for messaging, particularly in Java-based microservices architectures where a single crashed node can disrupt downstream message processing.</p>
<h2 id="recommendation">Recommendation</h2>
<p>Update the <code>com.rabbitmq:amqp-client</code> library to version 5.34.0 or later immediately to incorporate the corrected logic for <code>frameMax</code> negotiation. If patching is not immediately feasible, ensure that connections are only established to trusted brokers and inspect outbound traffic for anomalous <code>Connection.Tune</code> frames.</p>
]]></content:encoded><category domain="severity">medium</category><category domain="type">advisory</category><category>vulnerability</category><category>denial-of-service</category><category>java</category><category>rabbitmq</category></item></channel></rss>