Description
NATS nats-server before 2.9.23 and 2.10.x before 2.10.2 has an authentication bypass. An implicit $G user in an authorization block can sometimes be used for unauthenticated access, even when the intention of the configuration was for each user to have an account. The earliest affected version is 2.2.0.
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | nats-server | 2.10.3-1 | — |
| Debian 13 | nats-server | 2.10.3-1 | — |
| Debian 12 | nats-server | No fix yet | — |
Azure Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Azure Linux 3 | telegraf | 1.29.4-1 | — |
| Azure Linux 2 (CBL-Mariner) | telegraf | 1.28.5-1 | — |
Wolfi
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Wolfi rolling | nats | 0.1.1-r5 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Go | github.com/nats-io/nats-server/v2 | >= 2.2.0, < 2.9.23 | 2.9.23 | GHSA-fr2g-9hjm-wr23 |
| Go | github.com/nats-io/nats-server/v2 | >= 2.10.0, < 2.10.2 | 2.10.2 | GHSA-fr2g-9hjm-wr23 |
| Go | github.com/nats-io/nats-server/v2 | >= 2.2.0, < 2.9.23 · >= 2.10.0, < 2.10.2 | 2.9.23, 2.10.2 | GO-2023-2133 |