Skip to main content
← All vulnerabilities
CVE-2026-118669EUVD-2026-112488GHSA-7984-QGVG-3J9C

OAuthLib: Token grants can use attacker-supplied client_id for authorization after authenticating a different client

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 4.0.0
None on Exploit-DB, Metasploit or GitHub

Summary

OAuthLib, a Python library for OAuth request handling, is affected in the client_credentials and Resource Owner Password Credentials token grant flows. An authenticated client could exploit a mismatch between its identity and a supplied client ID so that an application issues tokens with grants or scopes belonging to a different client.

Summarized by anthropic/claude-haiku-5.5. Verify details against the original sources.

Read the original 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.

Timeline

  1. CVE published
  2. First seen by cve.now

Affected versions

  • oauthlib oauthlib

    fixed in 4.0.0

References 4

GitHub · oauthlib/oauthlib