{"id":"CVE-2026-107275","summary":"@fastify/jwt vulnerable to missing token expiration when temporal options cannot be parsed","details":"@fastify/jwt is a JSON Web Token plugin for the Fastify web framework. In versions before 10.2.3, a time span passed to expiresIn, notBefore, or maxAge that the plugin's parser cannot read, such as a compound span, a month unit, an ISO 8601 duration, a decimal comma, or a value with surrounding whitespace, is silently dropped instead of refused. On the signing path this produces a token with no expiration claim that never expires, and on the verification path a configured maxAge stops being enforced, so a token that should be rejected for age is accepted. The issue is fixed in @fastify/jwt 10.2.3, and users should upgrade to 10.2.3 or later. As a workaround, pass these options as a number of seconds, or verify that any time-span string parses to a finite value before relying on it.","aliases":["GHSA-9x4w-r9p5-5h7m"],"modified":"2026-10-12T02:31:13.632707275Z","published":"2026-10-08T11:05:40.492Z","database_specific":{"cna_assigner":"openjs","cwe_ids":["CWE-390","CWE-613","CWE-754"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/107xxx/CVE-2026-107275.json"},"references":[{"type":"ADVISORY","url":"https://cna.openjsf.org/security-advisories.html"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/107xxx/CVE-2026-107275.json"},{"type":"ADVISORY","url":"https://github.com/fastify/fastify-jwt/security/advisories/GHSA-9x4w-r9p5-5h7m"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-107275"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/fastify/fastify-jwt","events":[{"introduced":"0"},{"fixed":"bc12d10114bbd2dfd06a44dce0738d0f71171923"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"10.2.3"}],"source":["AFFECTED_FIELD","DESCRIPTION"]}}],"versions":["v10.2.2","v10.2.1","v10.2.0","v10.1.0","v10.0.0","v9.1.0","v9.0.4","v9.0.3","v9.0.2","v9.0.1","v9.0.0","v8.0.1","8.0.1","v8.0.0","v7.2.4","v7.2.3","v7.2.2","v7.2.1","v7.2.0","v7.1.0","v7.0.0","v6.7.1","v6.7.0","v6.6.0","v6.3.1","v6.5.0","v6.4.0","v6.3.3","v6.3.2","v6.3.0","v6.2.1","v6.2.0","v6.1.0","v6.0.0","v5.0.1","v5.0.0","v4.1.3","v4.1.2","v4.1.1","v4.1.0","v4.0.1","v4.0.0","v3.2.1","v3.2.0","v3.1.0","v3.0.1","v3.0.0","v2.5.0","v2.4.0","v2.3.0","v2.2.0","v2.1.3","v2.1.2","v2.1.1","v2.1.0","v1.3.1","v2.0.0","v1.3.0","v1.2.1","v1.2.0","v1.1.0","v1.0.0","v0.10.0","v0.9.6","v0.9.5","v0.9.4","v0.9.3","v0.9.2","v0.9.1","v0.9.0","v0.8.1","v0.8.0","v0.7.0","v0.6.0","v0.5.0","v0.4.0","v0.3.0","v0.2.1","v0.2.0","v0.1.1","v0.1.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-107275.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N"}]}