
CVE catalog
CVE-2026-49265
python-oauthlib: CVE-2026-49265
- Severity
- Medium · CVSS 6.8
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N - Published
- Source
- [NVD] · [CVE record]
- EPSS
- 0.24% · Oct 25, 2026
OAuthLib is an implementation of the OAuth request-signing logic for Python 3.6+. From 3.0.0 until 4.0.0, OAuthLib's PKCE checks in oauthlib/oauth2/rfc6749/grant_types/authorization_code.py compare attacker-supplied code_verifier values with stored challenges using ordinary string equality in code_challenge_method_plain and code_challenge_method_s256. Because the comparison can return after a length difference or the first mismatching character, repeated token endpoint measurements can reveal common-prefix timing information that could potentially allow recovery of the code_verifier, unauthorized access-token acquisition, and account takeover. Practical exploitation requires an intercepted, single-use authorization code and enough measurements to overcome real-world network noise; the local timing benchmark does not establish practical remote account takeover, so the weakness remains a defense-in-depth concern. This issue is fixed in version 4.0.0.
Vulnerable and fixed packages
Distribution-reported package versions and fixes. These do not depend on matching against the OpenFactory package catalog.
| Distribution | Package | Release | Version | Status |
|---|---|---|---|---|
| Debian | python-oauthlib | sid | 3.3.1-2 | vulnerable |
| Debian | python-oauthlib | forky | 3.3.1-2 | vulnerable |
| Debian | python-oauthlib | trixie | 3.2.2-3 | vulnerable |
| Debian | python-oauthlib | bookworm | 3.2.2-1 | vulnerable |
| PyPI | oauthlib | Not reported | 4.0.0 | fixed |
| PyPI | oauthlib | Not reported | 4.0.0 | fixed |
Fixed-version evidence
| Distribution | Package | Type | Release | Fixed version | Urgency | Origin | Bugs |
|---|---|---|---|---|---|---|---|
| Debian | python-oauthlib | source | sid | (unfixed) | not yet assigned | Not reported | [1150908] |
| Debian | python-oauthlib | source | forky | (unfixed) | not yet assigned | Not reported | [1150908] |
| Debian | python-oauthlib | source | trixie | (unfixed) | not yet assigned | Not reported | [1150908] |
| Debian | python-oauthlib | source | bookworm | (unfixed) | not yet assigned | Not reported | [1150908] |
| PyPI | oauthlib | PyPI | Not reported | 4.0.0 | Not reported | PYSEC-2026-4114 | Not reported |
| PyPI | oauthlib | PyPI | Not reported | 4.0.0 | Not reported | GHSA-XPV3-W29H-X7CV | Not reported |
OpenFactory catalog packages
[Debian 12 (Bookworm)]
- [python3-oauthlib]Affected
Source package: [python-oauthlib]
Details (2)
3.2.2-1· all · bookwormAffected
dsa · python-oauthlib · debian · bookworm; dsa · python-oauthlib · debian · 12
3.2.2-1· all · bookwormAffected
dsa · python-oauthlib · debian · bookworm; dsa · python-oauthlib · debian · 12
[Debian 13 (Trixie)]
- [python3-oauthlib]Affected
Source package: [python-oauthlib]
Details (2)
3.2.2-3· all · trixieAffected
dsa · python-oauthlib · debian · 13
3.2.2-3· all · trixieAffected
dsa · python-oauthlib · debian · 13
Observed:
References
- [https://ftp.suse.com/pub/projects/security/csaf/suse-su-2026_24139-1.json]
- [https://github.com/advisories/GHSA-xpv3-w29h-x7cv]
- [https://nvd.nist.gov/vuln/detail/CVE-2026-49265]
- [https://osv.dev/vulnerability/DEBIAN-CVE-2026-49265]
- [https://security-tracker.debian.org/tracker/CVE-2026-49265]
- [https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-49265.json]
[Debian Security Tracker] · [FIRST EPSS] · [GitHub Advisory Database] · [National Vulnerability Database (NVD)] · [OSV Package Vulnerability Database] · [Red Hat security advisories and VEX] · [SUSE security advisories and VEX]