# CVE-2026-27889: NATS Server denial of service via WebSocket frame length overflow

Source: https://junglewise.ai/threats/cve-2026-27889-nats-server-denial-of-service-via-websocket-frame-length-overflow  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-03-25. Updated: 2026-06-30  
License: CC BY 4.0 with a link back

CVE-2026-27889 · Severity: high · CVSS 7.5 · Published 2026-03-25

NATS Server is a high-performance messaging system used for cloud and edge computing. A vulnerability in its WebSocket handling allows an unauthenticated attacker to crash the server remotely by sending a single malicious message. This results in a complete service outage, disconnecting all clients and disrupting operations that rely on the messaging infrastructure.

Technologies: [github.com/nats-io/nats-server (Go)](https://junglewise.ai/threats/technologies/github-com-nats-io-nats-server), [github.com/nats-io/nats-server/v2 (Go)](https://junglewise.ai/threats/technologies/github-com-nats-io-nats-server-v2), [Red Hat Multicluster Global Hub](https://junglewise.ai/threats/technologies/multicluster-global-hub). Vendors: [Go](https://junglewise.ai/threats/vendors/go), [Red Hat](https://junglewise.ai/threats/vendors/red-hat).

## Quick answers

**Is CVE-2026-27889 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-27889 being exploited in the wild.

**How severe is CVE-2026-27889?** High severity, with a CVSS score of 7.5, published 25 March 2026.

**Which products and versions are affected?** github.com/nats-io/nats-server (Go) SEMVER:introduced=0; github.com/nats-io/nats-server/v2 (Go) SEMVER:introduced=2.2.0,fixed=2.11.14, SEMVER:introduced=2.2.0,fixed=2.11.14,introduced=2.12.0,fixed=2.12.5; Red Hat Multicluster Global Hub 1.4.5, 1.5.4, 1.6.2.

**Is there a fix for CVE-2026-27889?** Yes. github.com/nats-io/nats-server/v2 (Go): upgrade to 2.11.14, 2.12.5 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-27889 attacked?** It is attacked over the network, in a hosted service.

**Am I affected by CVE-2026-27889?** Check whether you run github.com/nats-io/nats-server (Go), github.com/nats-io/nats-server/v2 (Go) or Red Hat Multicluster Global Hub at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- github.com/nats-io/nats-server/v2 (Go): upgrade to 2.11.14, 2.12.5 or later

  ```sh
  go get github.com/nats-io/nats-server/v2@v2.12.5
  ```


## Technical details

A vulnerability exists in the NATS Server WebSocket implementation (wsRead in server/websocket.go) due to a missing sanity check on 64-bit extended payload lengths. The server fails to validate that the most significant bit (MSB) of the length field is zero as required by RFC 6455. When an attacker sends a frame with the MSB set, the uint64-to-int conversion results in a negative value that bypasses bounds clamping logic, eventually triggering an unrecovered slice bounds out-of-range panic in the Go runtime. This occurs before authentication, allowing any network-reachable attacker to terminate the nats-server process. The issue is fixed in versions 2.11.14 and 2.12.5.

## Affected products

- NATS.io NATS Server >= 2.2.0, < 2.11.14; >= 2.12.0, < 2.12.5
- Red Hat Multicluster Global Hub 1.4.5, 1.5.4, 1.6.2

## Identifiers

- CVE-2026-27889
- GHSA-pq2q-rcw4-3hr6
- GO-2026-4841

## Timeline

- 2026-03-09: patched: Internal fix date identified in advisory
- 2026-03-25: disclosed: Public disclosure of CVE-2026-27889
- 2026-05-28: advisory: Red Hat released security updates for Multicluster Global Hub

## References

- [https://advisories.nats.io/CVE/secnote-2026-03.txt](https://advisories.nats.io/CVE/secnote-2026-03.txt)
- [https://github.com/nats-io/nats-server/security/advisories/GHSA-pq2q-rcw4-3hr6](https://github.com/nats-io/nats-server/security/advisories/GHSA-pq2q-rcw4-3hr6)
- [https://access.redhat.com/errata/RHSA-2026:21769](https://access.redhat.com/errata/RHSA-2026:21769)
- [https://access.redhat.com/errata/RHSA-2026:22347](https://access.redhat.com/errata/RHSA-2026:22347)
- [https://access.redhat.com/errata/RHSA-2026:23345](https://access.redhat.com/errata/RHSA-2026:23345)
- [https://access.redhat.com/security/cve/CVE-2026-27889](https://access.redhat.com/security/cve/CVE-2026-27889)
- [https://bugzilla.redhat.com/show_bug.cgi?id=2451447](https://bugzilla.redhat.com/show_bug.cgi?id=2451447)

## Related threats

- [Red Hat Multicluster Global Hub privilege escalation during ManagedClusterMigration](https://junglewise.ai/threats/cve-2026-71577-red-hat-multicluster-global-hub-privilege-escalation-during)
- [Red Hat Multicluster Global Hub authentication bypass in Kafka CloudEvents](https://junglewise.ai/threats/cve-2026-71576-red-hat-multicluster-global-hub-authentication-bypass-in-kafka)
- [Apache Thrift improper certificate validation in TSSLTransportFactory](https://junglewise.ai/threats/cve-2026-43869-apache-thrift-improper-certificate-validation-in)
- [Apache Thrift out-of-bounds read in C++ JSON implementation](https://junglewise.ai/threats/cve-2026-41607-apache-thrift-out-of-bounds-read-in-c-json-implementation)
- [Apache Thrift uncontrolled recursion in c_glib dispatch](https://junglewise.ai/threats/cve-2026-41606-apache-thrift-uncontrolled-recursion-in-c-glib-dispatch)
