Read the docs

Authlib fix bypass lets attackers forge HS256 tokens with PEM keys

Priority HIGH 74CWE-184Published · Updated

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

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00213 11th percentileScored 2026-11-07
Public exploit Yes 1 exploit referenceTagged by NVD
Fix Partial authlib (authlib): 1.9.0authlib (PyPI): 1.9.0Red Hat: 2 advisoriesRed Hat: 2 fixed, 7 without a fix

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

VendorProductAffected versionsFixed inStatusSource
authlibauthlib1.3.1 to before 1.9.01.9.0Patch availableCNA
—authlib (PyPI)1.3.1 to before 1.9.01.9.0Patch availableGHSA-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

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:authlib:authlib:*:*:*:*:*:*:*:*1.3.1 to before 1.9.0Vulnerableauthlib
  • cpe:2.3:a:authlib:authlib:*:*:*:*:*:*:*:* Versions 1.3.1 to before 1.9.0 Vulnerable ·authlib

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 Critical
    satellite/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 Critical
    satellite/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 →

ProductStatusPlan or fix
Exploit IntelligenceAffectedNo fix yet
Lightspeed CoreAffectedNo fix yet
Migration Toolkit for Applications 8AffectedNo fix yet
OpenShift LightspeedAffectedNo fix planned: Will not fix
Red Hat Ansible Automation Platform 2AffectedNo fix yet
Red Hat OpenShift Virtualization 4AffectedNo fix yet
Red Hat Quay 3AffectedNo fix yet
Red Hat Satellite 6.18Fixed RHSA-2026:92667
Red Hat Satellite 6.19Fixed RHSA-2026:92666
Not affected: 1 product
  • Red Hat Enterprise Linux command line assistant

Timeline

  1. 2026-10-23 Threatist record created from CVE-2026-114615
  2. 2026-10-23 Affected versions changed · Red Hat
  3. 2026-10-23 CVSS score added · Red Hat
  4. 2026-10-23 Priority changed: MEDIUM → LOW
  5. 2026-10-27 Alias added: GHSA-7vr2-2fgp-9w7p
  6. 2026-10-29 CISA SSVC decision points changed
  7. 2026-10-29 Priority changed: LOW → HIGH
  8. 2026-10-29 CVSS score added · NVD
  9. 2026-10-30 Fix available: Red Hat Satellite 6.18, Red Hat Satellite 6.19 · Red Hat
  10. 2026-10-31 Fix available: RHSA-2026:92666 · Red Hat
  11. 2026-10-31 Fix available: RHSA-2026:92667 · Red Hat
  12. 2026-11-02 Affected versions changed · Red Hat
  13. 2026-11-04 Affected versions changed · Red Hat

References

  • 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
See all 18 →

Sources