Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to version 1.6.9, a JWK Header Injection vulnerability in authlib's JWS implementation allows an unauthenticated attacker to forge arbitrary JWT tokens that pass signature verification. When key=None is passed to any JWS deserialization function, the library extracts and uses the cryptographic key embedded in the attacker-controlled JWT jwk header field. An attacker can sign a token with their own private key, embed the matching public key in the header, and have the server accept the forged token as cryptographically valid — bypassing authentication and authorization entirely. This issue has been patched in version 1.6.9.
Security readout for executives and security teams
Plain-English summary
CVE-2026-27962 lets an unauthenticated attacker bypass JWT signature verification in vulnerable Authlib versions. If an application relies on this path for authentication or authorization, forged tokens could be accepted as valid. The issue is critical because it can directly undermine identity controls, but the supplied sources do not show confirmed active exploitation.
Executive priority
Treat this as urgent for any internet-facing or identity-critical service using Authlib. A successful attack could bypass login and authorization checks without credentials. Patch validation should be prioritized before routine maintenance, with business focus on systems protecting customer, employee, or administrative access.
Technical view
Authlib before 1.6.9 has a JWS JWK header injection flaw. When JWS deserialization is called with key=None, Authlib may use a key supplied in the attacker-controlled JWT jwk header, allowing arbitrary tokens to verify successfully. This maps to CWE-347 and has CVSS 9.1.
Likely exposure
Exposure is most likely in Python applications using Authlib versions earlier than 1.6.9 for JWT/JWS verification, especially OAuth or OpenID Connect services, and specifically where JWS deserialization functions are called with key=None.
Exploitation context
The source bundle states the flaw is remotely reachable, unauthenticated, low complexity, and requires no user interaction. KEV is false, and the provided sources do not establish active exploitation in the wild.
Researcher notes
The key condition is not only package version, but whether vulnerable JWS deserialization paths are reachable with key=None. The supplied evidence names the patch release and commit, but does not provide confirmed exploit telemetry. Red Hat references indicate downstream tracking and errata should be checked separately.
Mitigation direction
Upgrade Authlib to version 1.6.9 or later.
Identify downstream Red Hat packages and apply relevant RHSA updates.
Avoid verification flows that allow attacker-controlled keys to be trusted implicitly.
Review vendor advisories for environment-specific remediation guidance.
Prioritize services where JWTs protect administrative or sensitive data access.
Validation and detection
Inventory deployed Authlib versions across applications and containers.
Search code for JWS deserialization calls using key=None.
Confirm production builds resolve Authlib to 1.6.9 or later.
Add regression tests rejecting JWTs with untrusted jwk headers.
Review authentication logs for anomalous token acceptance patterns.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-347: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
The CVE wording references authentication or credential exposure, so valid-account and credential-access review may help. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
2CVSS vectors
5Timeline events
2ADP providers
11Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: pocAutomatable: yesTechnical Impact: total
CVSS vector scores
2 official scores
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-347 · source CWE mapping
Improper Verification of Cryptographic Signature
Improper Verification of Cryptographic Signature represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.