Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-114615— Authlib incomplete algorithm-confusion fix permits HMAC forgery with prefixed public keys

Quick assessment

Affected
authlib authlib
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Authlib 是一个用于构建 OAuth 和 OpenID Connect 服务器的 Python 库。在 1.3.1 至 1.9.0 版本中, 方法仅在字节的第 0 位检查非对称密钥的标识符,而 Authlib 的 PEM 加载器却允许前导空白字符、注释或字节顺序标记(BOM)。在已启用文档中描述的混合算法注册表、且已使用包含此类前缀的 PEM 或证书字节配置验证的部署环境中,任何知晓相同公钥字节的未认证攻击者均可将其用作 HMAC 密钥,从而伪造包含任意身份或授权声明的 HS256 令牌。此问题构成了对 CV

CVSS 7.4 · High
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-114615

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Authlib incomplete algorithm-confusion fix permits HMAC forgery with prefixed public keys
Source: CVE Program / CVE List V5
Vulnerability Description
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.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
Source: CVE Program / CVE List V5
Vulnerability Type
不完整的黑名单
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
authlib authlib >= 1.3.1, < 1.9.0 -

II. Public POCs for CVE-2026-114615

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-114615

请登录查看更多情报信息。

Other References for CVE-2026-114615 (4)

Same Patch Batch · authlib · 2026-10-22 · 7 CVEs total

CVE-2026-114616 7.4 HIGH Authlib accepts an empty HMAC key, allowing JWS/JWT signature forgery (HS256/HS384/HS512)
CVE-2026-114618 6.8 MEDIUM Authlib: Default JWT bearer grant accepts assertions for the wrong audience
CVE-2026-114620 5.4 MEDIUM Authlib: Unvalidated request_uri fetch in JWT-secured authorization request (JAR) leading
CVE-2026-114619 4.6 MEDIUM Authlib: OpenID implicit grant checks raw scope instead of allowed scope before issuing ID
CVE-2026-114617 4.2 MEDIUM Authlib: ID token can disable its own nonce validation via the nonce_supported claim
CVE-2026-114614 2.6 LOW Authlib: is_secure_transport() loopback exemption can be bypassed with a userinfo componen

IV. Related Vulnerabilities

V. Comments for CVE-2026-114615

No comments yet


Leave a comment