{"id":"CVE-2026-107720","summary":"fast-jwt: createVerifier accepts unsigned JWTs when key is '' or null and algorithms is explicitly set","details":"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.","aliases":["GHSA-8wpc-h4q6-8fxv"],"modified":"2026-10-09T10:46:05.480520104Z","published":"2026-10-08T21:44:06.843Z","database_specific":{"cwe_ids":["CWE-20","CWE-347"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/107xxx/CVE-2026-107720.json","cna_assigner":"GitHub_M"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/107xxx/CVE-2026-107720.json"},{"type":"FIX","url":"https://github.com/nearform/fast-jwt/commit/e22a151e83bf6d5e54e281216982d204d5665534"},{"type":"FIX","url":"https://github.com/nearform/fast-jwt/pull/649"},{"type":"WEB","url":"https://github.com/nearform/fast-jwt/releases/tag/v6.3.1"},{"type":"ADVISORY","url":"https://github.com/nearform/fast-jwt/security/advisories/GHSA-8wpc-h4q6-8fxv"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-107720"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/nearform/fast-jwt","events":[{"introduced":"0"},{"fixed":"865c52262f39234a9b97524eb7f4821cf6d921ad"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"6.3.1"}],"source":"AFFECTED_FIELD"}}],"versions":["v6.3.0","v6.2.4","v6.2.3","v6.2.2","v6.2.1","v6.2.0","v6.1.0","v2.0.0","v1.7.2","v1.7.1","v1.7.0","v1.6.1","v1.6.0","v1.5.4","v1.5.3","v1.5.2","v1.5.1","v1.5.0","v1.4.1","v1.4.0","v1.3.2","v1.3.0","v1.2.0","v1.1.3","v1.1.2","v1.1.1","v1.1.0","v1.0.0","v0.5.1","v0.5.0","v0.4.2","v0.4.1","v0.4.0","v0.3.1","v0.3.0","v0.2.0","v0.1.1","v0.1.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-107720.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N"}]}