CVE-2025-30204
golang-jwt is a Go implementation of JSON Web Tokens. Starting in version 3.2.0 and prior to versions 5.2.2 and 4.5.2, the function parse.ParseUnverified splits (via a call to strings.Split) its argument (which is untrusted data) on periods. As a result, in the face of a malicious request whose Authorization header consists of Bearer followed by many period characters, a call to that function incurs allocations to the tune of O(n) bytes (where n stands for the length of the function's argument), with a constant factor of about 16. This issue is fixed in 5.2.2 and 4.5.2.
Scoring
- Severity
- HIGH
- CVSS base score
- 7.5
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- EPSS probability
- 0.72%
- CWE
- CWE-405
- Published
- 2025-03-21
- Last modified
- 2026-03-12
Affected products
- golang-jwt jwt
- golang-jwt jwt
Weakness type
Related vulnerabilities
- CVE-2026-87011 — Open WebUI: Unauthenticated requests can stall the server via uncached OIDC fetches in back-channel logout
- CVE-2026-86432 — commonmark 2.0.0 before 2.8.4 Denial of Service via XML
- CVE-2026-82309 — Robots::Validate versions from 0.3.2 before 0.3.11 for Perl allow unbounded outbound DNS queries per validation via a forward-confirmation loop that does not bound the names it queries
- CVE-2026-84310 — pypdf: Possible long runtimes/large memory usage when retrieving outlines
- CVE-2026-54874 — Excessive Memory Use Buffering DTLS Records for a Future Epoch
- CVE-2026-23934 — Frontend DoS via the validate.api.exists action
- CVE-2026-23930 — Frontend DoS via the popup.testtriggerexpr action
- CVE-2026-72914 — Mastodon: Exhausting data by an unauthenticated request to the admin retention API