NATS: Pre-auth remote server crash via WebSocket frame length overflow in wsRead
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 2.11.14, 2.12.5
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: poc
- Automatable: yes
- Technical impact: partial
Summary
NATS-Server is a High-Performance server for NATS.io, a cloud and edge native messaging system. Starting in version 2.2.0 and prior to versions 2.11.14 and 2.12.5, a missing sanity check on a WebSockets frame could trigger a server panic in the nats-server. This happens before authentication, and so is exposed to anyone who can connect to the websockets port. Versions 2.11.14 and 2.12.5 contains a fix. A workaround is available. The vulnerability only affects deployments which use WebSockets and which expose the network port to untrusted end-points. If one is able to do so, a defense in depth of restricting either of these will mitigate the attack.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: poc · Automatable: yes · Technical impact: partial
- Record last updated
Affected versions
- nats-io nats-server
From 2.2.0 · fixed in 2.11.14; From 2.12.0 · fixed in 2.12.5
- github.com/nats-io/nats-server/v2Go
From 2.2.0 · fixed in 2.11.14
- github.com/nats-io/nats-server/v2Go
From 2.12.0 · fixed in 2.12.5
- github.com/nats-io/nats-serverGo
All versions
- github.com/nats-io/nats-server/v2Go
From 2.2.0 · fixed in 2.11.14; From 2.12.0 · fixed in 2.12.5