CVE-2026-49264: oauthlib unsafe JSONP callback injection in RevocationEndpoint

CVE-2026-49264 · Severity: medium · CVSS 6.1 · Published 2026-10-13

oauthlib is a Python OAuth 2.0 library used by authorization servers and clients. When JSONP support is explicitly enabled, the revocation endpoint does not validate the callback parameter and reflects it directly into JavaScript responses, allowing an attacker to inject arbitrary JavaScript code. This could lead to account takeover or credential theft if a legitimate OAuth client loads the revocation endpoint as JSONP and an attacker controls the callback parameter.

Technologies: OAuthlib, oauthlib (PyPI). Vendors: OAuthlib, PyPI.

Quick answers

Is CVE-2026-49264 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-49264 being exploited in the wild.
How severe is CVE-2026-49264?
Medium severity, with a CVSS score of 6.1, published 13 October 2026.
Which products and versions are affected?
OAuthlib 0.6.1 through 3.3.1; oauthlib (PyPI) >= 0.6.1, <= 3.3.1, ECOSYSTEM:introduced=0.6.1,fixed=4.0.0.
Is there a fix for CVE-2026-49264?
Yes. oauthlib (PyPI): upgrade to 4.0.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-49264 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-49264?
Check whether you run OAuthlib or oauthlib (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • oauthlib (PyPI): upgrade to 4.0.0 or later
    pip install "oauthlib>=4.0.0"

Technical details

The RevocationEndpoint in oauthlib/oauth2/rfc6749/endpoints/revocation.py concatenates the user-supplied callback parameter directly into response bodies without validation when enable_jsonp=True is set. An attacker can craft payloads like callback=alert(document.cookie)// to inject arbitrary JavaScript that executes in the context of pages that load the endpoint as JSONP. The vulnerability is triggered when enable_jsonp is explicitly enabled (defaults to False) and an attacker can control the callback parameter value via HTTP request parameters.

Affected products

  • oauthlib oauthlib 0.6.1 through 3.3.1

Identifiers

  • CVE-2026-49264
  • GHSA-hj66-6f7g-4r5v
  • PYSEC-2026-4113

Timeline

  • 2026-09-29: disclosed
  • 2026-09-29: advisory: GHSA-hj66-6f7g-4r5v

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.