CVE-2026-33216
Information Disclosure in NATS-Server MQTT Passwords via Monitoring
Publication date: 2026-03-25
Last updated on: 2026-03-26
Assigner: GitHub, Inc.
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| linuxfoundation | nats-server | From 2.12.0 (inc) to 2.12.6 (exc) |
| linuxfoundation | nats-server | to 2.11.15 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-256 | The product stores a password in plaintext within resources such as memory or files. |
Attack-Flow Graph
AI Powered Q&A
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
This vulnerability exposes MQTT passwords in plaintext through monitoring endpoints, allowing unauthorized network attackers to obtain sensitive password information without privileges or user interaction.
Exposure of sensitive authentication credentials such as passwords can lead to violations of data protection regulations like GDPR and HIPAA, which require the protection of personal and sensitive data against unauthorized access.
Organizations using affected versions of nats-server may face compliance risks if monitoring endpoints are not adequately secured, as this could result in unauthorized disclosure of sensitive information.
Mitigation involves applying patches (versions 2.11.15 and 2.12.6 or later) and securing monitoring endpoints to prevent exposure to untrusted networks or the Internet, thereby reducing compliance risks.
Can you explain this vulnerability to me?
CVE-2026-33216 is a high-severity vulnerability in the NATS-Server's MQTT client interface affecting versions prior to 2.11.15 and 2.12.6. The issue occurs when MQTT deployments use usercodes and passwords: the MQTT passwords are incorrectly treated as non-authenticating identity statements (JWTs) and are exposed in plaintext through monitoring endpoints. This means that sensitive password information can be accessed by unauthorized network attackers without requiring any privileges or user interaction.
How can this vulnerability impact me? :
This vulnerability can lead to the exposure of MQTT client passwords in plaintext via monitoring endpoints. Unauthorized attackers on the network can obtain these sensitive passwords without needing any privileges or user interaction. This compromises the confidentiality of credentials, potentially allowing attackers to impersonate legitimate users or gain unauthorized access to the messaging system. The vulnerability does not impact integrity or availability but has a high confidentiality impact.
How can this vulnerability be detected on my network or system? Can you suggest some commands?
This vulnerability involves MQTT passwords being exposed in plaintext via monitoring endpoints of the nats-server MQTT client interface. To detect this vulnerability on your network or system, you should monitor and inspect the data exposed by the monitoring endpoints for any plaintext MQTT passwords.
Specifically, you can check the monitoring endpoints of your nats-server instances for any exposed JWT fields that contain MQTT passwords. Since the passwords are mistakenly classified as JWTs and exposed, querying these endpoints and searching for password-like strings or JWT tokens that actually contain passwords can help identify the vulnerability.
While no explicit commands are provided in the resources, a general approach would be to use tools like curl or wget to fetch the monitoring endpoint data and then grep or search for suspicious password strings or JWT tokens. For example:
- curl http://<nats-server-monitoring-endpoint>/varz | grep -i password
- curl http://<nats-server-monitoring-endpoint>/connz | grep -i jwt
If you find MQTT passwords exposed in these outputs, your system is vulnerable.
What immediate steps should I take to mitigate this vulnerability?
To mitigate this vulnerability immediately, you should ensure that the monitoring endpoints of your nats-server instances are properly secured and not exposed to the Internet or any untrusted networks.
Best practices include restricting access to monitoring endpoints via network controls such as firewalls, VPNs, or access control lists to trusted users only.
Additionally, upgrading your nats-server to a fixed version is strongly recommended. The vulnerability is fixed in versions 2.11.15 and 2.12.6.
- Upgrade nats-server to version 2.11.15 or later, or 2.12.6 or later.
- Restrict access to monitoring endpoints to trusted networks and users only.
- Avoid exposing monitoring endpoints to the Internet or untrusted networks.