CVE-2026-28498
Authlib: Fail-Open Cryptographic Verification in OIDC Hash Binding
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.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- High
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
8.2
Authlib: Fail-Open Cryptographic Verification in OIDC Hash Binding
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.
- Record
CVE-2026-28498- CVSS 4.0
- 8.2 High
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N - CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-354, CWE-573, CWE-325
- Updated
- 2026-11-02
EUVDEUVD-2026-12482
8.2
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.
- Record
EUVD-2026-12482- CVSS 4.0
- 8.2 High
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-m344-f55w-2m6j
8.2
Authlib: Fail-Open Cryptographic Verification in OIDC Hash Binding
1. Executive Summary
A critical 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.
2. Technical Details & Root Cause
The vulnerability resides within the _verify_hash(signature, s, alg) function in authlib/oidc/core/claims.py:
def _verify_hash(signature, s, alg):
hash_value = create_half_hash(s, alg)
if not hash_value: # ← VULNERABILITY: create_half_hash returns None for unknown algorithms
return True # ← BYPASS: The verification silently passes
return hmac.compare_digest(hash_value, to_bytes(signature))
When an unsupported algorithm string (e.g., "XX999") is processed by the helper function create_half_hash in authlib/oidc/core/util.py, the internal getattr(hashlib, hash_type, None) call fails, and the function correctly returns None.
However, instead of triggering a Fail-Closed cryptographic state (raising an exception or returning False), the _verify_hash function misinterprets the None return value and explicitly returns True.
Because developers rely on the standard .validate() method provided by Authlib's IDToken class—which internally calls this flawed function—there is no mechanism for the implementing developer to prevent this bypass. It is a strict library-level liability.
3. Attack Scenario
This vulnerability exposes applications utilizing Hybrid or Implicit OIDC flows to Token Substitution Attacks.
- An attacker initiates an OIDC flow and receives a legitimately signed ID Token, but wishes to substitute the bound Access Token (
access_token) or Authorization Code (code) with a malicious or mismatched one. - The attacker re-crafts the JWT header of the ID Token, setting the
algparameter to an arbitrary, unsupported value (e.g.,{"alg": "CUSTOM_ALG"}). - The server uses Authlib to validate the incoming token. The JWT signature validation might pass (or be previously cached/bypassed depending on state), progressing to the claims validation phase.
- Authlib attempts to validate the
at_hashorc_hashclaims. - Because
"CUSTOM_ALG"is unsupported byhashlib,create_half_hashreturnsNone. - Authlib's
_verify_hashreceivesNoneand silently returnsTrue. - Result: The application accepts the substituted/malicious Access Token or Authorization Code without any cryptographic verification of the binding hash.
4. Specification & Standards Violations
This explicit fail-open behavior violates multiple foundational RFCs and Core Specifications. A secure cryptographic library MUST fail and reject material when encountering unsupported cryptographic parameters.
OpenID Connect Core 1.0
- § 3.2.2.9 (Access Token Validation): "If the ID Token contains an
at_hashClaim, the Client MUST verify that the hash value of the Access Token matches the value of theat_hashClaim." Silencing the validation check natively contradicts this absolute requirement. - § 3.3.2.11 (Authorization Code Validation): Identically mandates the verification of the
c_hashClaim.
IETF JSON Web Token (JWT) Best Current Practices (BCP)
- RFC 8725 § 3.1.1: "Libraries MUST NOT trust the signature without verifying it according to the algorithm... if…
- Record
GHSA-m344-f55w-2m6j- CVSS 4.0
- 8.2 High
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-354, CWE-573
- Updated
- 2026-11-02
NVD
8.2
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.
- Record
CVE-2026-28498- CVSS 4.0
- 8.2 High
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N - CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-354, CWE-573, CWE-325
- Updated
- 2026-11-02
OSV
8.2
Authlib: Fail-Open Cryptographic Verification in OIDC Hash Binding
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.
- Record
CVE-2026-28498- CVSS 4.0
- 8.2 High
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-354, CWE-573
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-28498
7.5
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.
- Record
DEBIAN-CVE-2026-28498- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N - Updated
- 2026-11-02
Show 7 moreShow less
OSVGHSA-m344-f55w-2m6j
8.2
Authlib: Fail-Open Cryptographic Verification in OIDC Hash Binding
1. Executive Summary
A critical 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.
2. Technical Details & Root Cause
The vulnerability resides within the _verify_hash(signature, s, alg) function in authlib/oidc/core/claims.py:
def _verify_hash(signature, s, alg):
hash_value = create_half_hash(s, alg)
if not hash_value: # ← VULNERABILITY: create_half_hash returns None for unknown algorithms
return True # ← BYPASS: The verification silently passes
return hmac.compare_digest(hash_value, to_bytes(signature))
When an unsupported algorithm string (e.g., "XX999") is processed by the helper function create_half_hash in authlib/oidc/core/util.py, the internal getattr(hashlib, hash_type, None) call fails, and the function correctly returns None.
However, instead of triggering a Fail-Closed cryptographic state (raising an exception or returning False), the _verify_hash function misinterprets the None return value and explicitly returns True.
Because developers rely on the standard .validate() method provided by Authlib's IDToken class—which internally calls this flawed function—there is no mechanism for the implementing developer to prevent this bypass. It is a strict library-level liability.
3. Attack Scenario
This vulnerability exposes applications utilizing Hybrid or Implicit OIDC flows to Token Substitution Attacks.
- An attacker initiates an OIDC flow and receives a legitimately signed ID Token, but wishes to substitute the bound Access Token (
access_token) or Authorization Code (code) with a malicious or mismatched one. - The attacker re-crafts the JWT header of the ID Token, setting the
algparameter to an arbitrary, unsupported value (e.g.,{"alg": "CUSTOM_ALG"}). - The server uses Authlib to validate the incoming token. The JWT signature validation might pass (or be previously cached/bypassed depending on state), progressing to the claims validation phase.
- Authlib attempts to validate the
at_hashorc_hashclaims. - Because
"CUSTOM_ALG"is unsupported byhashlib,create_half_hashreturnsNone. - Authlib's
_verify_hashreceivesNoneand silently returnsTrue. - Result: The application accepts the substituted/malicious Access Token or Authorization Code without any cryptographic verification of the binding hash.
4. Specification & Standards Violations
This explicit fail-open behavior violates multiple foundational RFCs and Core Specifications. A secure cryptographic library MUST fail and reject material when encountering unsupported cryptographic parameters.
OpenID Connect Core 1.0
- § 3.2.2.9 (Access Token Validation): "If the ID Token contains an
at_hashClaim, the Client MUST verify that the hash value of the Access Token matches the value of theat_hashClaim." Silencing the validation check natively contradicts this absolute requirement. - § 3.3.2.11 (Authorization Code Validation): Identically mandates the verification of the
c_hashClaim.
IETF JSON Web Token (JWT) Best Current Practices (BCP)
- RFC 8725 § 3.1.1: "Libraries MUST NOT trust the signature without verifying it according to the algorithm... if…
- Record
GHSA-m344-f55w-2m6j- CVSS 4.0
- 8.2 High
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-354, CWE-573
- Updated
- 2026-11-02
OSVPYSEC-2026-2117
7.5
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.
- Record
PYSEC-2026-2117- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N - Updated
- 2026-11-02
OSVROOT-APP-PYPI-CVE-2026-28498
7.5
CVE-2026-28498 in Authlib - Patched by Root
Root has patched CVE-2026-28498 in the Authlib package for Root:PyPI. Multiple fixed versions available.
- Record
ROOT-APP-PYPI-CVE-2026-28498- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-28498
8.2
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.
- Record
UBUNTU-CVE-2026-28498- CVSS 4.0
- 8.2 High
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N - CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N - Updated
- 2026-11-02
OSVopenSUSE-SU-2026:20392-1 No score
Security update for python-Authlib
This update for python-Authlib fixes the following issues:
Changes in python-Authlib:
- CVE-2026-27962: JWS
deserialize_compact()allows for signature bypass by accepting user-controlled embedded JWK as verification key (bsc#1259738) - CVE-2026-28490: cryptographic padding oracle in JWE RSA1_5 key management algorithm (bsc#1259736)
- CVE-2026-28498: fail-open in behavior OIDC hash validation allows for bypass mandatory integrity protections (bsc#1259737)
- Record
openSUSE-SU-2026:20392-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:0975-1 No score
Security update for python-Authlib
This update for python-Authlib fixes the following issues:
- CVE-2026-27962: JWS
deserialize_compact()allows for signature bypass by accepting user-controlled embedded JWK as verification key (bsc#1259738). - CVE-2026-28490: cryptographic padding oracle in JWE RSA1_5 key management algorithm (bsc#1259736).
- CVE-2026-28498: fail-open in behavior OIDC hash validation allows for bypass mandatory integrity protections (bsc#1259737).
- Record
SUSE-SU-2026:0975-1- Updated
- 2026-11-02
OSVUSN-8557-1 No score
python-authlib vulnerabilities
Jay Neiva and Mauro Carrillo discovered that Authlib did not properly validate cryptographic keys embedded in JWT headers. An attacker could possibly use this issue to forge trusted tokens, resulting in authentication and authorization bypass. (CVE-2026-27962)
Jay Neiva and Mauro Carrillo discovered that Authlib incorrectly handled RSA1_5 encrypted tokens. An attacker could possibly use this issue to recover sensitive encrypted information, resulting in information disclosure. (CVE-2026-28490)
Jay Neiva and Mauro Carrillo discovered that Authlib did not properly reject unsupported cryptographic algorithms when validating OpenID Connect ID tokens. An attacker could possibly use this issue to bypass token integrity checks, resulting in authentication bypass. (CVE-2026-28498)
Johnny Deuss discovered that Authlib did not provide cross-site request forgery protection for the OAuth cache feature in its Starlette integration. An attacker could possibly use this issue to perform unauthorized OAuth actions, resulting in cross-site request forgery. This issue only affected Ubuntu 24.04 LTS and Ubuntu 26.04 LTS. (CVE-2026-41425)
- Record
USN-8557-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
authlibPyPI |
through 1.6.8 | 1.6.9 |
python-authlibDebian:12 |
before 1.2.0-1+deb12u2, plus listed versions 1.2.0-11.2.0-1+deb12u1 |
1.2.0-1+deb12u2 |
python-authlibDebian:13 |
All versions, plus listed versions 1.6.0-11.6.0-1+deb13u11.6.1-11.6.3-11.6.4-1 Show 8 moreShow less1.6.5-11.6.6-11.6.7-11.6.8-11.6.9-11.7.0-11.7.2-11.7.2-2 |
None known |
python-authlibDebian:14 |
before 1.6.9-1, plus listed versions 1.6.0-11.6.1-11.6.3-11.6.4-11.6.5-11.6.6-11.6.7-11.6.8-1 |
1.6.9-1 |
authlibPyPI |
before 1.6.9, plus listed versions 0.10.100.110.120.12.1 Show 45 moreShow less0.130.140.14.10.14.20.14.30.150.15.10.15.20.15.30.15.40.15.50.15.60.1rc00.20.2.10.30.40.4.10.50.5.10.60.70.80.91.0.01.0.0a11.0.0a21.0.0b11.0.0b21.0.0rc11.0.11.1.01.2.01.2.11.3.01.3.11.3.21.4.01.4.11.5.01.5.11.5.21.6.01.6.11.6.2 |
1.6.9 |
AuthlibRoot:PyPI |
before 0.15.5+aikido.9 | 0.15.5+aikido.91.6.3+aikido.61.6.6+aikido.51.6.0+aikido.51.6.1+aikido.61.6.5+aikido.61.6.6+aikido.61.6.6+aikido.71.6.6+aikido.8 |
rootio-AuthlibRoot:PyPI |
before 0.15.5+root.io.5 | 0.15.5+root.io.51.6.0+root.io.31.6.3+root.io.41.6.5+root.io.31.6.1+root.io.30.15.5+root.io.61.6.0+root.io.41.6.3+root.io.51.6.5+root.io.41.6.1+root.io.40.15.5+root.io.70.15.5+root.io.81.6.5+root.io.51.6.1+root.io.51.6.6+root.io.11.6.6+root.io.21.6.6+root.io.31.6.6+root.io.40.15.5+root.io.91.6.3+root.io.61.6.6+root.io.51.6.0+root.io.51.6.1+root.io.61.6.5+root.io.61.6.6+root.io.61.6.6+root.io.7 |
python-AuthlibSUSE:Linux Enterprise Module for Python 3 15 SP7 From an advisory covering 3 CVEs |
before 1.3.1-150600.3.17.1 | 1.3.1-150600.3.17.1 |
python-AuthlibSUSE:Linux Enterprise Server 15 SP6-LTSS From an advisory covering 3 CVEs |
before 1.3.1-150600.3.17.1 | 1.3.1-150600.3.17.1 |
python-AuthlibSUSE:Linux Enterprise Server for SAP Applications 15 SP6 From an advisory covering 3 CVEs |
before 1.3.1-150600.3.17.1 | 1.3.1-150600.3.17.1 |
Show 10 moreShow less
| Package | Affected | Fixed |
|---|---|---|
python-AuthlibopenSUSE:Leap 15.6 From an advisory covering 3 CVEs |
before 1.3.1-150600.3.17.1 | 1.3.1-150600.3.17.1 |
python-authlibUbuntu:Pro:22.04:LTS |
before 0.15.5-1ubuntu0.1~esm2, plus listed versions 0.15.4-10.15.5-10.15.5-1ubuntu0.1~esm1 |
0.15.5-1ubuntu0.1~esm2 |
python-authlibUbuntu:Pro:24.04:LTS |
before 1.3.0-1ubuntu0.1~esm2, plus listed versions 1.2.1-11.3.0-11.3.0-1ubuntu0.1~esm1 |
1.3.0-1ubuntu0.1~esm2 |
python-authlibUbuntu:25.10 |
All versions, plus listed versions 1.5.1-11.5.2-11.6.0-1 |
None known |
python-authlibUbuntu:26.10 |
All versions, plus listed versions 1.6.7-11.7.2-11.7.2-2 |
None known |
python-authlibUbuntu:Pro:26.04:LTS |
before 1.6.7-1ubuntu0.1~esm1, plus listed versions 1.6.0-11.6.5-11.6.6-11.6.7-1 |
1.6.7-1ubuntu0.1~esm1 |
python-authlibUbuntu:Pro:22.04:LTS From an advisory covering 4 CVEs |
before 0.15.5-1ubuntu0.1~esm2, plus listed versions 0.15.4-10.15.5-10.15.5-1ubuntu0.1~esm1 |
0.15.5-1ubuntu0.1~esm2 |
python-authlibUbuntu:Pro:24.04:LTS From an advisory covering 4 CVEs |
before 1.3.0-1ubuntu0.1~esm2, plus listed versions 1.2.1-11.3.0-11.3.0-1ubuntu0.1~esm1 |
1.3.0-1ubuntu0.1~esm2 |
python-authlibUbuntu:Pro:26.04:LTS From an advisory covering 4 CVEs |
before 1.6.7-1ubuntu0.1~esm1, plus listed versions 1.6.0-11.6.5-11.6.6-11.6.7-1 |
1.6.7-1ubuntu0.1~esm1 |
python-AuthlibopenSUSE:Leap 16.0 From an advisory covering 3 CVEs |
before 1.5.2-bp160.3.1 | 1.5.2-bp160.3.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-28498 is a high vulnerability (CVSS 8.2) in Authlib, published March 16, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.24%, the 15th percentile. Fixed in authlib 1.6.9.
References
github.com/authlib/authlib/security/advisories/GHSA-m344-f55w-2m6j
github.com/authlib/authlib/commit/b9bb2b25bf8b7e01512d847a95c1749646eaa72b
github.com/authlib/authlib/releases/tag/v1.6.9
access.redhat.com/security/cve/CVE-2026-28498
bugzilla.redhat.com/show_bug.cgi?id=2448182
security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-28498.json
Show 24 moreShow less
access.redhat.com/errata/RHSA-2026:6309
access.redhat.com/errata/RHSA-2026:6912
access.redhat.com/errata/RHSA-2026:6720
access.redhat.com/errata/RHSA-2026:6568
access.redhat.com/errata/RHSA-2026:6497
access.redhat.com/errata/RHSA-2026:6567
nvd.nist.gov/vuln/detail/CVE-2026-28498
github.com/advisories/GHSA-m344-f55w-2m6j
github.com/CVEProject/cvelistV5/tree/main/cves/2026/28xxx/CVE-2026-28498.json
security-tracker.debian.org/tracker/CVE-2026-28498
github.com/authlib/authlib
suse.com/support/update/announcement/2026/suse-su-20260975-1
bugzilla.suse.com/1259736
bugzilla.suse.com/1259737
bugzilla.suse.com/1259738
suse.com/security/cve/CVE-2026-27962
suse.com/security/cve/CVE-2026-28490
suse.com/security/cve/CVE-2026-28498
ubuntu.com/security/CVE-2026-28498
cve.org/CVERecord?id=CVE-2026-28498
ubuntu.com/security/notices/USN-8557-1
ubuntu.com/security/CVE-2026-27962
ubuntu.com/security/CVE-2026-28490
ubuntu.com/security/CVE-2026-41425
Left out here: 6 versions and the rest of 2 source descriptions. The JSON record has them.