Miggo Logo

CVE-2025-30215:
NATS Server may fail to authorize certain Jetstream admin APIs

9.6

CVSS Score
3.1

Basic Information

EPSS Score
0.12184%
Published
4/15/2025
Updated
4/24/2025
KEV Status
No
Technology
TechnologyGo

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:H/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
github.com/nats-io/nats-server/v2go>= 2.11.0-RC.1, < 2.11.12.11.1
github.com/nats-io/nats-server/v2go>= 2.2.0, < 2.10.272.10.27

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability description outlines that specific JetStream admin APIs lacked proper authorization checks. The provided commit 3e7e4645a24e829a36b4210f2d7c34dea7f7a424 directly addresses these issues by adding authorization logic to four specific functions within server/jetstream_api.go. These functions correspond to the vulnerable API endpoints mentioned in the advisory ($JS.API.ACCOUNT.PURGE.*, $JS.API.SERVER.REMOVE, $JS.API.ACCOUNT.STREAM.MOVE.*.*, and $JS.API.ACCOUNT.STREAM.CANCEL_MOVE.*.*). The patch evidence clearly shows the addition of account verification checks (e.g., if acc != s.SystemAccount()) within these functions. Therefore, these functions were the ones processing the requests without sufficient authorization prior to the patch, making them the vulnerable functions.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

## **visory T** m*n***m*nt o* J*tStr**m *ss*ts **pp*ns wit* m*ss***s in t** `$JS.` su*j**t n*m*sp*** in t** syst*m ***ount; t*is is p*rti*lly *xpos** into r**ul*r ***ounts to *llow ***ount *ol**rs to m*n*** t**ir *ss*ts. Som* o* t** JS *PI r*qu*sts

Reasoning

T** vuln*r**ility **s*ription outlin*s t**t sp**i*i* J*tStr**m **min *PIs l**k** prop*r *ut*oriz*tion ****ks. T** provi*** *ommit `****************************************` *ir**tly ***r*ss*s t**s* issu*s *y ***in* *ut*oriz*tion lo*i* to *our sp**i*i