# CVE-2022-29946: NATS Server and Streaming Server fails to enforce negative user permissions, may allow denied subjects

Source: https://junglewise.ai/threats/cve-2022-29946-nats-server-and-streaming-server-fails-to-enforce-negative-user  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2024-07-12  
License: CC BY 4.0 with a link back

CVE-2022-29946 · Severity: low · CVSS 3.1 · Published 2024-07-12

NATS Server and Streaming Server fails to enforce negative user permissions, may allow denied subjects in github.com/nats-io/nats-server

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), [github.com/nats-io/nats-streaming-server (Go)](https://junglewise.ai/threats/technologies/github-com-nats-io-nats-streaming-server). Vendors: [Go](https://junglewise.ai/threats/vendors/go).

## Quick answers

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

**How severe is CVE-2022-29946?** Low severity, with a CVSS score of 3.1, published 12 July 2024.

**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=0,fixed=2.8.2; github.com/nats-io/nats-streaming-server (Go) SEMVER:introduced=0,fixed=0.24.6.

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

**Am I affected by CVE-2022-29946?** Check whether you run github.com/nats-io/nats-server (Go), github.com/nats-io/nats-server/v2 (Go) or github.com/nats-io/nats-streaming-server (Go) 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.8.2 or later

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

- github.com/nats-io/nats-streaming-server (Go): upgrade to 0.24.6 or later

  ```sh
  go get github.com/nats-io/nats-streaming-server@v0.24.6
  ```


## Affected products

- github.com/nats-io/nats-server (Go) SEMVER:introduced=0
- github.com/nats-io/nats-server/v2 (Go) SEMVER:introduced=0,fixed=2.8.2
- github.com/nats-io/nats-streaming-server (Go) SEMVER:introduced=0,fixed=0.24.6

## Identifiers

- CVE-2022-29946
- GHSA-2h2x-8hh2-mfq8
- GO-2024-2980

## Related threats

- [GO-2026-4833 - NATS is vulnerable to MQTT hijacking via Client ID in github.com/nats-io/nats-server](https://junglewise.ai/threats/cve-2026-33215-nats-is-vulnerable-to-mqtt-hijacking-via-client-id)
- [NATS Server: Incomplete Stripping of Nats-Request-Info Header Allows Identity Spoofing](https://junglewise.ai/threats/cve-2026-33223-nats-server-incomplete-stripping-of-nats-request-info-header)
- [GO-2026-4830 - NATS: Leafnode connections allow spoofing of Nats-Request-Info identity headers in github.com/nats-io/nats-server](https://junglewise.ai/threats/cve-2026-33246-nats-leafnode-connections-allow-spoofing-of-nats-request-info)
- [GO-2026-4832 - NATS JetStream has an authorization bypass through its Management API in github.com/nats-io/nats-server](https://junglewise.ai/threats/cve-2026-33222-nats-jetstream-has-an-authorization-bypass-through-its-management)
- [NATS has mTLS verify_and_map authentication bypass via incorrect Subject DN matching](https://junglewise.ai/threats/cve-2026-33248-nats-has-mtls-verify-and-map-authentication-bypass-via-incorrect)
