High severity · published Oct 28, 2026
CVE-2026-118669
OAuthLib: Token grants can use attacker-supplied client_id for authorization after authenticating a different client
New
8.4
CVSS
–
EPSS
No
On KEV
Description
OAuthLib is an implementation of the OAuth request-signing logic for Python 3.6+. Prior to 4.0.0, the client_credentials and Resource Owner Password Credentials token grant handlers can authenticate request.client as one confidential client while retaining an attacker-supplied request.client_id for validate_grant_type and validate_scopes. A lower-privilege authenticated client can therefore cause grant and scope authorization to use another client's identity when an application validator relies on the documented client_id argument, potentially issuing tokens with unauthorized grants or scopes. Validators that authorize exclusively from request.client may not be affected. This issue is fixed in version 4.0.0.
Exploitation
Is it being used?
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
OA
oauthlib · oauthlib
< 4.0.0 · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-118669
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-118669
github.com
https://github.com/oauthlib/oauthlib/commit/c951a1d09f99f14e3240973fa83c4f4287d4753d
github.com
https://github.com/oauthlib/oauthlib/pull/920
github.com
https://github.com/oauthlib/oauthlib/releases/tag/v4.0.0
github.com
https://github.com/oauthlib/oauthlib/security/advisories/GHSA-7984-qgvg-3j9c
More from oauthlib
6.8
CVE-2026-49265
OAuthLib: Timing Attack Vulnerability in PKCE code_verifier Comparison
6.1
CVE-2026-49264
OAuthLib: Unsafe JSONP callback injection in RevocationEndpoint allows arbitrary JavaScript response generation
