Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach WebSocket listener port
-
DeliverySend MQTT-over-WebSocket upgrade to /mqtt
-
ExploitServer accepts MQTT kind with MQTT disabled
-
ExecutionTrigger uncaught exception in upgrade path
-
ImpactCrash nats-server process (DoS)
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Exception handling completeness
|
| Exploitation Conditions | Requires the NATS WebSocket listener to be enabled AND the MQTT subsystem to be disabled (opts.MQTT.Port == 0). The attacker connects to the WebSocket endpoint and issues an MQTT-over-WebSocket upgrade request against the MQTT WebSocket path (mqttWSPath, e.g. '/mqtt'); the server accepts the MQTT-kind upgrade with no MQTT server initialized, causing an uncaught exception. Limiting factors: WebSocket is not enabled by default in NATS, so vulnerable instances are only those explicitly configured with WebSocket on but MQTT off; if MQTT is enabled, the vulnerable code path is not reached. Exploitation is remote and unauthenticated (PR:N) once the WebSocket port is reachable, and impact is limited to availability (server crash), not data disclosure or code execution. |
| Impact | The signals converge on moderate, not urgent, priority. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H = 7.5) reflects a remote, unauthenticated, availability-only impact - a crash, not code execution or data theft. This is reinforced by CISA SSVC (Exploitation: none, Automatable: no, Technical Impact: partial) and a low EPSS of 0.53% (41st percentile), with no KEV listing and no public exploit identified. Two data conflicts should be noted explicitly: first, the 'Information Disclosure' tag contradicts the CVSS vector, which sets C:N/I:N and only A:H - the actual impact per the code fix is denial of service, so the Information Disclosure tag appears to be a mislabel and should be verified with the vendor advisory. Second, the PR:N/AC:L rating assumes the WebSocket listener is reachable, but WebSocket is not enabled by default in NATS, so real-world exposure is narrower than the raw 7.5 implies. Net: patch on a normal cycle; treat as elevated only where WebSocket is internet-exposed and MQTT is disabled. |
| Exploit ScenarioDerived | An attacker who can reach a NATS Server's WebSocket port on a deployment where MQTT is disabled opens a WebSocket handshake to the MQTT path and sends an MQTT-kind upgrade request. Because the server accepts the MQTT upgrade despite MQTT being unconfigured, it hits an uncaught exception and the nats-server process crashes, disrupting all messaging clients. No authentication or user interaction is required (AV:N/AC:L/PR:N/UI:N); no public exploit code has been identified, but the fixing commit and its test clearly illustrate the trigger. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv3 – Jul 09, 2026
Remote denial-of-service in NATS Server (nats-server) affects deployments with the WebSocket listener enabled but MQTT disabled; per the GHSA-p957-7v2w-g93g advisory and the fixing commit, an unauthenticated attacker can send an MQTT-over-WebSocket upgrade request to the WebSocket endpoint while MQTT is turned off, triggering an uncaught exception (CWE-248) that crashes the server (CVSS 7.5, availability-only impact). This is a Linux Foundation CNCF messaging component fixed in nats-server 2.12.12 and 2.14.3. No public exploit identified at time of analysis; not listed in CISA KEV, and EPSS is low at 0.53% (41st percentile), consistent with the SSVC assessment of exploitation 'none' and only partial technical impact.
Earlier versions of this analysis (2)
Denial of service in NATS Server (nats-io/nats-server) lets remote unauthenticated attackers crash the broker by sending an MQTT-over-WebSocket upgrade request to a server that has WebSocket enabled but MQTT disabled, triggering an uncaught exception (CWE-248). It affects versions below 2.12.12 and the 2.14.x line from 2.14.0-RC.1 up to 2.14.3, with a vendor patch available and no public exploit identified at time of analysis. Note the input tags label this 'Information Disclosure', but the CVSS vector (C:N/I:N/A:H) and the source-code fix both indicate an availability/DoS impact, not disclosure.
CVE-2026-58208 is reported against Ubuntu with no description, CVSS score, CWE classification, or exploit intelligence available at time of analysis. The sole intelligence source is a vendor-level Ubuntu report, which provides no technical detail about the nature, impact, or affected components of this vulnerability. Security teams cannot assess risk, exploitability, or remediation priority without further disclosure from the Ubuntu security team.
RemediationAI
Vendor-released patch: upgrade to nats-server 2.12.12 (for the 2.12.x line and earlier) or 2.14.3 (for the 2.14.x / 2.14.0-RC line), per GHSA-p957-7v2w-g93g and the release notes at https://github.com/nats-io/nats-server/releases/tag/v2.12.12 and https://github.com/nats-io/nats-server/releases/tag/v2.14.3; the fix is commit 73b3dd9a5ea0fa7bf08b702338676355b29b5fb4, which rejects MQTT-over-WebSocket upgrades when MQTT is not enabled. If immediate patching is not possible, the concrete compensating control is to restrict or disable the WebSocket listener, or place the WebSocket endpoint behind a reverse proxy / network ACL that blocks untrusted access to the MQTT WebSocket path - trade-off: this breaks legitimate browser/WebSocket clients that rely on that listener. Alternatively, if MQTT-over-WebSocket is actually needed, enabling MQTT (setting a valid MQTT port) removes the crash path but expands the protocol surface, so only do so intentionally. Do not expose the WebSocket port directly to the internet in the interim.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
NATS Server is a high-performance, open-source messaging system (a CNCF project maintained under the Linux Foundation / nats-io) supporting core NATS, JetStream, MQTT, and WebSocket transports. The flaw is in the WebSocket upgrade path (server/websocket.go, wsUpgrade). NATS multiplexes protocol 'kinds' (CLIENT, MQTT, etc.) over WebSocket paths, and the code previously accepted an MQTT-kind upgrade request even when the MQTT subsystem was not configured (opts.MQTT.Port == 0). Downstream handling of an MQTT connection that has no initialized MQTT server state leads to an uncaught exception/panic, the root-cause class described by CWE-248 (Uncaught Exception). The fix rejects such upgrades early with an HTTP 404 ('mqtt websocket endpoint not enabled'), as shown by the added guard and the new TestWSUpgradeMQTTOnlyWhenEnabled test. The affected CPE is cpe:2.3:a:linuxfoundation:nats-server across the vulnerable version ranges.
Know when Nats Server 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
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Remote unauthenticated request over an enabled WebSocket listener triggers a crash with no auth or interaction, so AV:N/AC:L/PR:N/UI:N; impact is availability-only (A:H), C:N/I:N.
Primary rating from NVD.
CVSS VectorNVD
Lifecycle Timeline
6DescriptionNVD
[Unknown description]
Executive ViewAI
NATS Server deployments with WebSocket enabled are vulnerable to remote denial-of-service attacks from unauthenticated users, affecting any organization using NATS for message-based infrastructure. No active exploitation has been reported, but the vulnerability requires immediate patching to prevent service disruption and maintain application communication capabilities.
Apply vendor patch.
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.
More in Nats Server
View allNATS Server 2.x before 2.2.0 and JWT library before 2.0.1 have Incorrect Access Control because Import Token bindings ar
The JWT library in NATS nats-server before 2.1.9 has Incorrect Access Control because of how expired credentials are han
This affects all versions of package github.com/nats-io/nats-server/server. Rated high severity (CVSS 7.5), this vulnera
NATS nats-server before 2.7.2 has Incorrect Access Control. Rated high severity (CVSS 8.8), this vulnerability is remote
Authentication bypass in NATS Server (nats-io/nats-server) lets an unauthenticated attacker on an adjacent network conne
Denial of service in NATS Server (nats-server) MQTT handler allows a remote, unauthenticated client to exhaust server me
Remote denial of service in the NATS Server (nats-io/nats-server) leafnode subsystem allows unauthenticated attackers to
An integer overflow in NATS Server before 2.0.2 allows a remote attacker to crash the server by sending a crafted reques
NATS.io is a high performance open source pub-sub distributed communication technology, built for the cloud, on-premise,
The JWT library in NATS nats-server before 2.1.9 allows a denial of service (a nil dereference in Go code). Rated high s
Protocol injection in NATS Server MQTT support allows an authenticated MQTT client to smuggle control characters (tab, n
NATS nats-server before 2.7.4 allows Directory Traversal (with write access) via an element in a ZIP archive for JetStre
EUVD-2026-42391
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB