Read the docs

Authlib OpenID implicit grant issues ID tokens without openid scope

Priority MEDIUM 54CWE-863Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
Required
Attack complexity
Low
Impact type
Security bypass
Confidentiality · integrity · availability
Low · Low · None
Fix status
Partial Red Hat: 9 without a fix

Attack profile from CVSS 3.1 · CNA. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-863.

Summary

Authlib before 1.9.0 checks the raw client-supplied scope instead of the filtered allowed scope in its OpenID implicit grant (CWE-863). A registered client that may request an ID token but not the openid scope can add openid, obtain user consent, and receive a signed ID token containing the user's subject and allowed profile claims. A public exploit is linked in the references.

Written with Claude Haiku 5.5 from the sources below · 2026-10-29

Description from the CNA

Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to 1.9.0, OpenIDImplicitGrant.validate_authorization_request() checks the client-controlled raw request.payload.scope for openid after the parent grant has filtered allowed scopes into request.scope. A registered client permitted an ID token response type but not the openid scope can add openid to the request, obtain user consent, and receive a signed ID token containing the user's subject and allowed profile claims. Authorization code flow and deployments that allow openid for every client permitted an ID token response are not affected. In authlib/oidc/core/grants/implicit.py, OpenIDImplicitGrant.validate_authorization_request() checks request.payload.scope instead of the filtered request.scope. 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.00162 5th percentileScored 2026-11-07
Public exploit Yes 1 exploit referenceTagged by NVD
Fix Partial authlib (authlib): 1.9.0authlib (PyPI): 1.9.0Red Hat: 9 without a fix

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
authlibauthlibbefore 1.9.01.9.0Patch availableCNA
—authlib (PyPI)before 1.9.01.9.0Patch availableGHSA-q686-2qmg-hqc7
  • authlib Vendorauthlib Affected before 1.9.0 Fixed in 1.9.0 Patch available CNA
  • authlib (PyPI) Vendor— Affected before 1.9.0 Fixed in 1.9.0 Patch available GHSA-q686-2qmg-hqc7

CPE configurations NVD · 1

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

Remediation

Upgrade the authlib package on PyPI to version 1.9.0. The sources list no fixed version for Lightspeed Core, Migration Toolkit for Applications 8, OpenShift Lightspeed, Red Hat Ansible Automation Platform 2, Red Hat Enterprise Linux command line assistant, Red Hat OpenShift Virtualization 4 and Red Hat Satellite 6 (none available), and for Exploit Intelligence and Red Hat Quay 3 (no fix planned).

Written with Claude Haiku 5.5 from the sources below · 2026-10-29

  • Fix · CNA authlib (authlib) Fixed in 1.9.0
  • Fix · GHSA-q686-2qmg-hqc7 authlib (PyPI) Fixed in 1.9.0 Advisory →

Vendor assessments

Red Hat

Red Hat rating: Moderate. Red Hat's page for this CVE →

ProductStatusPlan or fix
Exploit IntelligenceAffectedNo fix planned: Out of support scope
Lightspeed CoreAffectedNo fix yet: Fix deferred
Migration Toolkit for Applications 8AffectedNo fix yet: Fix deferred
OpenShift LightspeedAffectedNo fix yet: Fix deferred
Red Hat Ansible Automation Platform 2AffectedNo fix yet: Fix deferred
Red Hat Enterprise Linux command line assistantAffectedNo fix yet: Fix deferred
Red Hat OpenShift Virtualization 4AffectedNo fix yet: Fix deferred
Red Hat Quay 3AffectedNo fix planned: Out of support scope
Red Hat Satellite 6AffectedNo fix yet: Fix deferred

Timeline

  1. 2026-10-23 Threatist record created from CVE-2026-114619
  2. 2026-10-23 Affected versions changed · Red Hat
  3. 2026-10-23 CVSS score added · Red Hat
  4. 2026-10-27 Alias added: GHSA-q686-2qmg-hqc7
  5. 2026-10-29 CISA SSVC decision points changed
  6. 2026-10-29 Priority changed: LOW → MEDIUM

References

  • TI-2026-22305 Authlib JWS JWK Header Injection: Signature Verification Bypass CVSS 3.1CRITICAL 9.1
  • TI-2026-79518 Authlib fix bypass lets attackers forge HS256 tokens with PEM keys 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
See all 18 →

Sources