CVE-2026-106121 is a medium severity denial of service (CVSS 4.9) in the RabbitMQ Java client. The JSON reader used for JSON-RPC never terminates on truncated input. It is fixed in version 5.37.0 of the library, published on Maven as com.rabbitmq:amqp-client, so upgrade to 5.37.0 or later.
What's affected
The record says versions before 5.37.0 are affected. The GitHub advisory GHSA-cqgh-8p3p-mx4m, published on 1 October 2026, lists the Maven package com.rabbitmq:amqp-client with affected versions up to and including 5.36.0 and a patched version of 5.37.0. The two statements agree.
The flaw sits in com.rabbitmq.tools.json.JSONReader.read(). Your application is in scope if it uses the library's JSON-RPC classes, JsonRpcServer or JsonRpcClient, without passing its own mapper. The advisory notes that both classes fall back to DefaultJsonRpcMapper when no mapper is supplied, and that mapper hands message bodies to the vulnerable parser. If you never use JSON-RPC over RabbitMQ, this code path is not part of your normal traffic.
The CVSS vector in the record is network reachable, low complexity, with high privileges required and only availability affected. The privileges requirement is why the score is medium and not higher. The weakness class is CWE-835, a loop with an exit condition that can never be reached.
How to check if you're exposed
List the version your build actually resolves. For Maven:
mvn dependency:tree -Dincludes=com.rabbitmq:amqp-client
For Gradle:
./gradlew dependencies --configuration runtimeClasspath | grep amqp-client
Any result at or below 5.36.0 needs an upgrade. Then search your code for JsonRpcServer and JsonRpcClient. If neither appears, the exposure is much lower, though upgrading is still the clean answer because the library may be pulled in by another dependency.
A shaded or fat jar can hide the version from the dependency tree. In that case check the jar contents or your software bill of materials for the library name.
What to do now
- Upgrade
com.rabbitmq:amqp-clientto 5.37.0 or later and rebuild every service that bundles it. - Redeploy, then confirm the resolved version with the commands above in the built artifact, not only in the source tree.
- If you cannot upgrade yet, limit who can publish to queues served by
JsonRpcServer, since the advisory describes a single message as enough to trigger the problem. - Add JVM memory and thread monitoring to services that use JSON-RPC so a hung thread or a heap spike is noticed early.
- Record the dependency in your inventory so the next advisory against it is matched automatically.
Why it matters
The reader walks its input one character at a time and stops when it sees a closing quote or a newline. When the input ends early, the iterator returns a special end marker forever, and neither loop checks for it. According to the advisory, a truncated quoted string makes the parser keep appending a replacement character to a buffer until the heap is exhausted and the JVM fails with an out of memory error. A line comment with no ending newline instead keeps a thread busy at full CPU without allocating memory.
This is a good example of why a medium score still deserves a ticket. One message to a shared RPC service can take down a process that serves other callers. The attacker needs the ability to send a message, and the record rates the required privilege as high, so exposure depends on how tightly your broker permissions are set. The record does not mark this CVE as known exploited.
Try it yourself
See how this kind of finding shows up in a dependency workflow.
Click through it at your own pace, or open it full screen.
Quick check
Is CVE-2026-106121 exploited in the wild?
The record does not flag it as known exploited and the advisory we read does not say so either. Treat it as a patch in your normal cycle, sooner if you expose JSON-RPC to many publishers.
Does this affect the RabbitMQ broker itself?
No. The record and advisory describe the Java client library only, in the JSON reader used by its JSON-RPC support.
Sources
You can also run a free in-browser dependency scan at gold.safeguard.sh/scan to see which of your packages carry known CVEs.
Last reviewed: 18 October 2026.