Authlib fix bypass lets attackers forge HS256 tokens with PEM keys
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · High · None
- Fix status
- Partial Red Hat: 2 fixed, 7 without a fix
Attack profile from CVSS 3.1 · NVD. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-347.
Summary
Authlib from 1.3.1 before 1.9.0 is affected. OctKey.import_key() checks key markers only at the first byte, so PEM or certificate bytes with leading whitespace, comments or a byte-order mark pass as HMAC secrets (CWE-184). In deployments using the mixed algorithm registry with such prefixed public keys, an unauthenticated attacker who knows those bytes can forge HS256 tokens with arbitrary identity or authorization claims. It bypasses an earlier fix, and a public exploit is linked in the references.
Written with Claude Haiku 5.5 from the sources below · 2026-11-04
Description from the CNA
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| authlib | authlib | 1.3.1 to before 1.9.0 | 1.9.0 | Patch available | CNA |
| — | authlib (PyPI) | 1.3.1 to before 1.9.0 | 1.9.0 | Patch available | GHSA-7vr2-2fgp-9w7p |
- authlib Vendorauthlib Affected 1.3.1 to before 1.9.0 Fixed in 1.9.0 Patch available CNA
- authlib (PyPI) Vendor— Affected 1.3.1 to before 1.9.0 Fixed in 1.9.0 Patch available GHSA-7vr2-2fgp-9w7p
Remediation
Upgrade Authlib to version 1.9.0. Red Hat fixes Red Hat Satellite 6.18 and 6.19 through RHSA-2026:92667 and RHSA-2026:92666. Red Hat gives the plan none available for Exploit Intelligence, Lightspeed Core, Migration Toolkit for Applications 8, Red Hat Ansible Automation Platform 2, Red Hat OpenShift Virtualization 4 and Red Hat Quay 3, and no fix planned for OpenShift Lightspeed.
Written with Claude Haiku 5.5 from the sources below · 2026-11-04
- Fix · CNA authlib (authlib) Fixed in 1.9.0
- Fix · GHSA-7vr2-2fgp-9w7p authlib (PyPI) Fixed in 1.9.0 Advisory →
Red Hat 2 advisories
- RHSA-2026:92667 Released 2026-10-29 · Red Hat rating Criticalsatellite/foreman-mcp-server-rhel9 container image available as a Technology Preview
- Red Hat Satellite 6.18 registry.redhat.io/satellite/foreman-mcp-server-rhel9
- RHSA-2026:92666 Released 2026-10-29 · Red Hat rating Criticalsatellite/foreman-mcp-server-rhel9 container image available as a Technology Preview
- Red Hat Satellite 6.19 registry.redhat.io/satellite/foreman-mcp-server-rhel9
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Exploit Intelligence | Affected | No fix yet |
| Lightspeed Core | Affected | No fix yet |
| Migration Toolkit for Applications 8 | Affected | No fix yet |
| OpenShift Lightspeed | Affected | No fix planned: Will not fix |
| Red Hat Ansible Automation Platform 2 | Affected | No fix yet |
| Red Hat OpenShift Virtualization 4 | Affected | No fix yet |
| Red Hat Quay 3 | Affected | No fix yet |
| Red Hat Satellite 6.18 | Fixed | RHSA-2026:92667 |
| Red Hat Satellite 6.19 | Fixed | RHSA-2026:92666 |
Not affected: 1 product
- Red Hat Enterprise Linux command line assistant
Timeline
- 2026-10-23 Threatist record created from CVE-2026-114615
- 2026-10-23 Affected versions changed · Red Hat
- 2026-10-23 CVSS score added · Red Hat
- 2026-10-23 Priority changed: MEDIUM → LOW
- 2026-10-27 Alias added: GHSA-7vr2-2fgp-9w7p
- 2026-10-29 CISA SSVC decision points changed
- 2026-10-29 Priority changed: LOW → HIGH
- 2026-10-29 CVSS score added · NVD
- 2026-10-30 Fix available: Red Hat Satellite 6.18, Red Hat Satellite 6.19 · Red Hat
- 2026-10-31 Fix available: RHSA-2026:92666 · Red Hat
- 2026-10-31 Fix available: RHSA-2026:92667 · Red Hat
- 2026-11-02 Affected versions changed · Red Hat
- 2026-11-04 Affected versions changed · Red Hat
References
Patch 2
More Authlib vulnerabilities
- TI-2026-22305 Authlib JWS JWK Header Injection: Signature Verification Bypass CVSS 3.1CRITICAL 9.1
- TI-2025-36973 Authlib: JWS/JWT accepts unknown crit headers (RFC violation → possible authz bypass) CVSS 3.1HIGH 7.5
- TI-2024-25068 lepture Authlib before 1.3.1 has algorithm confusion with asymmetric public keys. CVSS 3.1HIGH 7.5
- TI-2025-41738 Authlib: 1-click Account Takeover CVSS 3.1HIGH 8.8
- TI-2026-22761 Authlib: Fail-Open Cryptographic Verification in OIDC Hash Binding CVSS 4.0HIGH 8.2
- TI-2026-22754 Authlib Vulnerable to JWE RSA1_5 Bleichenbacher Padding Oracle CVSS 4.0HIGH 8.3
Sources
- CVE-2026-114615 · CVE Program
- CVE-2026-114615 · NVD
- FIRST EPSS
- GHSA-7vr2-2fgp-9w7p · GitHub Advisory Database · CC BY 4.0
- CVE-2026-114615 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences