Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach uni_websocket endpoint unauthenticated
-
DeliveryNegotiate permessage-deflate compression
-
ExploitSend tiny high-ratio compressed frame
-
ExecutionServer decompresses without output cap
-
PersistMemory and CPU exhausted
-
ImpactService degraded or crashes (DoS)
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V2 - Validation and Business Logic Compression ratio limits
|
| Exploitation Conditions | Exploitation requires that the target run the unidirectional WebSocket transport with uni_websocket.compression explicitly enabled - this is the exact precondition named in the description, and instances with compression disabled are not affected. Given that condition, the attacker needs only network reachability to the /connection/uni_websocket endpoint and no authentication (CVSS PR:N), no user interaction (UI:N), and low complexity (AC:L). Limiting factors: the compression feature must be turned on (a non-guaranteed deployment setting), the endpoint must be network-reachable, and impact is confined to availability (VA:H) with no confidentiality or integrity effect. Versions at or above 6.8.4 cap decompressed output and are not exploitable. |
| Impact | The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H) scores 8.7 and is internally consistent with the description: network-reachable, low complexity, unauthenticated, with a pure availability impact and no confidentiality or integrity loss. This is a genuine DoS, not a data-breach vector, so the 'Information Disclosure' tag in the intelligence feed appears to be a mislabel and should be disregarded. Real-world priority is moderated by one deployment precondition: exploitation only works when uni_websocket.compression is enabled, so instances without WebSocket compression are not affected. No EPSS score was supplied, there is no KEV listing, and no POC is referenced, so this is a high-severity-by-design availability issue rather than a signal of active mass exploitation. For internet-facing Centrifugo instances that expose the uni_websocket endpoint with compression on, the ease of unauthenticated triggering makes it a legitimate patch priority despite the absence of exploitation evidence. |
| Exploit ScenarioDerived | An unauthenticated attacker who can reach a Centrifugo instance's /connection/uni_websocket endpoint negotiates permessage-deflate compression and sends a highly compressible frame (e.g. a few kilobytes of repeated bytes) that stays under message_size_limit on the wire. The server decompresses it via io.ReadAll with no output cap, allocating hundreds of megabytes and burning CPU; repeating this across many connections exhausts server memory and degrades or crashes the service. No POC is currently referenced in the available intelligence. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 16, 2026
Uncontrolled memory and CPU exhaustion in Centrifugo real-time messaging server before 6.8.4 lets unauthenticated attackers send a small compressed WebSocket frame to the unidirectional transport that inflates into a massive decompressed payload. The message_size_limit was only checked against compressed wire bytes, while decompressed output was read via io.ReadAll with no cap, enabling a classic decompression bomb denial of service. No public exploit is identified at time of analysis, and the issue is not listed in CISA KEV.
RemediationAI
Vendor-released patch: upgrade to Centrifugo 6.8.4 (https://github.com/centrifugal/centrifugo/releases/tag/v6.8.4), which adds a decompressed_message_size_limit cap for the WebSocket and uni_websocket transports; per the advisory GHSA-q6mr-3g59-5m8x and PR https://github.com/centrifugal/centrifugo/pull/1162 (commit 46d40e4ac3a5446c9745f8b219197166ae12a6e5) the limit defaults to message_size_limit times 10 when left at zero. If you cannot upgrade immediately, disable uni_websocket.compression, which fully removes the decompression path and thus the vulnerability at the cost of higher bandwidth for large messages; alternatively lower uni_websocket.message_size_limit to shrink the maximum amplification input, or restrict/front the /connection/uni_websocket endpoint behind an authenticating reverse proxy or WAF and apply per-connection rate and resource limits, accepting that these controls only reduce rather than eliminate the amplification risk. After upgrading, explicitly set decompressed_message_size_limit to a value appropriate for your legitimate message sizes.
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
The flaw lives in Centrifugo's unidirectional WebSocket transport (/connection/uni_websocket) which supports permessage-deflate compression. In internal/websocket/conn.go the advanceFrame routine enforced uni_websocket.message_size_limit against the compressed wire-frame length, but ReadMessage subsequently called io.ReadAll after DEFLATE decompression without bounding the output size. This is CWE-409 (Improper Handling of Highly Compressed Data / decompression bomb): because DEFLATE can achieve amplification ratios well above 1000:1, a tiny compliant compressed frame decompresses into hundreds of megabytes or more, consuming heap and CPU. The upstream logic actually resides in the github.com/centrifugal/centrifuge library, which Centrifugo bumps in the fix; the patch introduces a DecompressedMessageSizeLimit that, when unset, defaults to message_size_limit multiplied by a factor of 10, capping post-decompression expansion for both the bidirectional and unidirectional WebSocket transports. Affected component per CPE is cpe:2.3:a:centrifugal:centrifugo.
Know when Centrifugo 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
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Unauthenticated network-reachable endpoint (AV:N/PR:N/UI:N) with a simple crafted frame (AC:L); impact is pure availability exhaustion (A:H) with no confidentiality or integrity effect.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Centrifugo is an open-source scalable real-time messaging server. Prior to 6.8.4, Centrifugo unidirectional WebSocket transport with uni_websocket.compression enabled enforced uni_websocket.message_size_limit against compressed wire-frame length in internal/websocket/conn.go advanceFrame, but ReadMessage used io.ReadAll after decompression without an output cap, allowing unauthenticated requests to /connection/uni_websocket to trigger large memory and CPU consumption. This issue is fixed in version 6.8.4.
Executive ViewAI
Centrifugo real-time messaging server versions before 6.8.4 are vulnerable to remote, unauthenticated denial-of-service attacks through compression bomb payloads; no public exploit has been identified at time of analysis. Any organization operating Centrifugo faces immediate risk of server crashes and service disruption, with no currently available patch from the vendor.
No vendor-released patch identified at time of analysis. Implement decompressed payload size limits at reverse proxy or WAF layer, separate from the vulnerable application-level message_size_limit. Enable rate limiting on WebSocket connections. Monitor for unusual memory and CPU consumption correlated with WebSocket traffic. Consider temporary network segmentation to restrict endpoint access. Establish alerting for exploitation indicators including rapid decompression patterns and connection anomalies.
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.
EUVD-2026-45016
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB