{"id":"EUVD-2026-95344","revision":"cb0f7262120b422eb8ed1843dc9f854c","records":[{"revision":"cb0f7262120b422eb8ed1843dc9f854c","observedAt":"2026-11-05T05:06:57.511+00:00","statement":{"source":"euvd","id":"EUVD-2026-95344","aliases":["CVE-2026-107720","GHSA-8wpc-h4q6-8fxv"],"title":"fast-jwt provides fast JSON Web Token (JWT) implementation. Prior to 6.3.1, fast-jwt createVerifier accepts an unsigned JWT when key is an empty string or null and algorithms is a non-empty allowlist. Falsy synchronous keys bypass prepareKe…","description":"fast-jwt provides fast JSON Web Token (JWT) implementation. Prior to 6.3.1, fast-jwt createVerifier accepts an unsigned JWT when key is an empty string or null and algorithms is a non-empty allowlist. Falsy synchronous keys bypass prepareKeyOrSecret, allowedAlgorithms remains active, hasKey is false, and the empty signature avoids the verifySignature gate. An attacker can therefore submit a token containing arbitrary claims without possessing a signing key, resulting in authentication or authorization bypass. Claim validators still run, and non-empty keys, an empty key without algorithms, and the async key resolver path do not have this behavior. This issue is fixed in version 6.3.1.","state":0,"publishedAt":null,"modifiedAt":null,"affected":[],"metrics":[{"system":"EUVD CVSS 3.1","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N","score":7.4,"severity":null}],"references":["https://github.com/nearform/fast-jwt/security/advisories/GHSA-8wpc-h4q6-8fxv","https://github.com/nearform/fast-jwt/pull/649","https://github.com/nearform/fast-jwt/commit/e22a151e83bf6d5e54e281216982d204d5665534","https://github.com/nearform/fast-jwt/releases/tag/v6.3.1"],"sourceUrl":"https://euvd.enisa.europa.eu/vulnerability/EUVD-2026-95344","license":"ENISA EUVD · source terms and attribution apply","enrichment":{"sourceStatus":null,"weaknesses":[],"productCriteria":[],"sourceDates":{"datePublished":"Oct 8, 2026, 9:44:06 PM","dateUpdated":"Oct 9, 2026, 2:32:14 PM"},"relatedAdvisories":[],"note":"EUVD source date text has no stated timezone and is retained without inventing a UTC instant. Related bulletin membership is not an alias, common cause or applicability claim. A missing vector with a zero score is treated as unrated. Complete vendor/product and underlying source evidence remains in the original JSON."},"key":"euvd:EUVD-2026-95344","identifiers":["EUVD-2026-95344","CVE-2026-107720","GHSA-8wpc-h4q6-8fxv"]},"retained":false,"historicalAffected":[]}],"coverage":[]}