CVE-2026-28498
Received Received - Intake
OpenID Connect Token Validation Bypass in Authlib Python Library

Publication date: 2026-03-16

Last updated on: 2026-03-17

Assigner: GitHub, Inc.

Description
Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to version 1.6.9, a library-level vulnerability was identified in the Authlib Python library concerning the validation of OpenID Connect (OIDC) ID Tokens. Specifically, the internal hash verification logic (_verify_hash) responsible for validating the at_hash (Access Token Hash) and c_hash (Authorization Code Hash) claims exhibits a fail-open behavior when encountering an unsupported or unknown cryptographic algorithm. This flaw allows an attacker to bypass mandatory integrity protections by supplying a forged ID Token with a deliberately unrecognized alg header parameter. The library intercepts the unsupported state and silently returns True (validation passed), inherently violating fundamental cryptographic design principles and direct OIDC specifications. This issue has been patched in version 1.6.9.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-03-16
Last Modified
2026-03-17
Generated
2026-06-16
AI Q&A
2026-03-16
EPSS Evaluated
2026-06-15
NVD
EUVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
authlib authlib to 1.6.9 (exc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-573 The product does not follow or incorrectly follows the specifications as required by the implementation language, environment, framework, protocol, or platform.
CWE-354 The product does not validate or incorrectly validates the integrity check values or "checksums" of a message. This may prevent it from detecting if the data has been modified or corrupted in transmission.
Attack-Flow Graph
AI Quick Actions
Instant insights powered by AI
Executive Summary

This vulnerability exists in the Authlib Python library, which is used to build OAuth and OpenID Connect servers. Before version 1.6.9, the library's internal hash verification logic (_verify_hash) for validating the at_hash (Access Token Hash) and c_hash (Authorization Code Hash) claims had a flaw. When the library encountered an unsupported or unknown cryptographic algorithm in the ID Token's alg header parameter, it would incorrectly treat the validation as successful (fail-open behavior). This means an attacker could supply a forged ID Token with a deliberately unrecognized algorithm, bypassing mandatory integrity protections and violating cryptographic and OpenID Connect specifications. The issue was fixed in version 1.6.9.

Impact Analysis

This vulnerability can allow an attacker to bypass the integrity checks of OpenID Connect ID Tokens by using a forged token with an unsupported cryptographic algorithm. As a result, the attacker could gain unauthorized access or impersonate users by exploiting the fail-open validation logic, potentially compromising authentication and authorization processes in applications relying on the vulnerable Authlib versions.

Compliance Impact

I don't know

Detection Guidance

I don't know

Mitigation Strategies

To mitigate this vulnerability, upgrade the Authlib Python library to version 1.6.9 or later, where the issue with the _verify_hash function has been patched.

Chat Assistant
Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-28498. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70
EPSS Chart