{"id":"PYSEC-2026-4355","details":"Authlib is a Python library which builds OAuth and OpenID Connect servers. From 1.3.1 until 1.9.0, OctKey.import_key() checks asymmetric-key markers only at byte zero while Authlib's PEM loaders accept leading whitespace, comments, or a byte-order mark. In deployments that use the documented mixed algorithm registry and already configure verification with PEM or certificate bytes containing such a prefix, an unauthenticated attacker who knows those same public-key bytes can use them as an HMAC secret and forge HS256 tokens with arbitrary identity or authorization claims. This is a bypass of the remediation for CVE-2024-37568. The module-level jwt object reaches OctKey.import_key() in authlib/jose/rfc7518/oct_key.py, where POSSIBLE_UNSAFE_KEYS fails to identify prefixed asymmetric key material. This issue is fixed in version 1.9.0.","aliases":["CVE-2026-114615","GHSA-7vr2-2fgp-9w7p"],"modified":"2026-10-30T10:00:02.219088436Z","published":"2026-10-22T22:18:04.257Z","references":[{"type":"ADVISORY","url":"https://github.com/authlib/authlib/releases/tag/v1.9.0"},{"type":"FIX","url":"https://github.com/authlib/authlib/commit/e3bd41cb29dcfee434453b135ffb487884baeedf"},{"type":"FIX","url":"https://github.com/authlib/authlib/pull/945"},{"type":"EVIDENCE","url":"https://github.com/authlib/authlib/security/advisories/GHSA-7vr2-2fgp-9w7p"}],"affected":[{"package":{"name":"authlib","ecosystem":"PyPI","purl":"pkg:pypi/authlib"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.3.1"},{"fixed":"1.9.0"}]}],"versions":["1.3.1","1.3.2","1.4.0","1.4.1","1.5.0","1.5.1","1.5.2","1.6.0","1.6.1","1.6.10","1.6.11","1.6.12","1.6.2","1.6.3","1.6.4","1.6.5","1.6.6","1.6.7","1.6.8","1.6.9","1.7.0","1.7.1","1.7.2","1.8.0"],"ecosystem_specific":{},"database_specific":{"source":"https://github.com/pypa/advisory-database/blob/main/vulns/authlib/PYSEC-2026-4355.yaml"}}],"schema_version":"1.9.2","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N"}]}