CVE-2026-114620 json
Authlib: Unvalidated request_uri fetch in JWT-secured authorization request (JAR) leading to SSRF
published 18d ago modified 10d ago also EUVD-2026-108522 , GHSA-x4rv-c3wx-4cr8 , PYSEC-2026-4360
- cvss
- 5.4
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 32%
- public exploits
- 0
- none known
Summary
Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to 1.9.0, Authlib's RFC 9101 JWTAuthenticationRequest passes the unauthenticated, client-controlled request_uri parameter to the abstract get_request_object() hook before applying a destination or registration policy; the hook itself performs no network request, while the documentation demonstrates an unrestricted HTTP fetch. In deployments whose integrator implements that hook as an unrestricted outbound fetch, a remote attacker who knows a valid public client identifier can make the authorization server request internal, link-local, or otherwise unintended URLs and can distinguish fetch outcomes through different error responses and timing. Deployments whose custom hook already applies a secure allowlist, destination controls, and retrieval limits are not affected. The JWTAuthenticationRequest implementation in authlib/oauth2/rfc9101/authorization_server.py forwards request_uri to get_request_object() before an application-approved retrieval policy accepts the destination. This issue is fixed in version 1.9.0.
Patch / fix
- pypi authlib 1.9.0
- authlib authlib 1.9.0
- python-authlib Debian 14 1.9.1-1
debian advisories DEBIAN-CVE-2026-114620
- github.com/authlib/authlib@6563f6f commit
- github.com/authlib/authlib@891e3f1 commit
- github.com/authlib/authlib#949 pull request
- github.com/authlib/authlib/releases/tag/v1.9.0 release
Is CVE-2026-114620 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-114620 updated cvss 4.8
authlib: Authlib: Server-Side Request Forgery via unvalidated request URI
-
Red Hat Exploit Intelligence exploit-intelligence/vulnerability-analysis-rhel9affected: no fix planned “Out of support scope”
-
Red Hat Lightspeed Core lightspeed-core/lightspeed-stack-rhel9 Red Hat Migration Toolkit for Applications 8 mta/mta-solution-server-rhel9 Red Hat OpenShift Lightspeed openshift-lightspeed/lightspeed-agentic-sandbox-rhel9 Red Hat Ansible Automation Platform 2 ansible-automation-platform-26/lightspeed-chatbot-rhel9, ansible-automation-platform-27/lightspeed-chatbot-rhel9 Red Hat Enterprise Linux command line assistant rhel-cla/rhel-knowledge-bridge-rhel10 Red Hat OpenShift Virtualization 4 container-native-virtualization/ocp-virt-validation-checkup-rhel9affected: no fix available “Fix deferred”
-
Red Hat Quay 3 quay/quay-rhel8, quay/quay-rhel9affected: no fix planned “Out of support scope”
-
Red Hat Satellite 6 satellite/foreman-mcp-server-rhel9affected: no fix available “Fix deferred”
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- 10d ago
Exploit prediction
0.39% chance of exploitation in the next 30 days, higher than 32% of all scored CVEs (FIRST EPSS, 2026-11-09).
Exploits and checks
- github.com https://github.com/authlib/authlib/security/advisories/GHSA-x4rv-c3wx-4cr8 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N |
| GitHub | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N |
| OSV | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | authlib | >=1.6.0, <1.9.0 |
1.9.0 |
Affected products
- authlib authlib
Classification
- Weakness
-
- CWE-918 Server-Side Request Forgery
References
-
github.com
/authlib/authlib/pull/949
web, patch
-
github.com
/authlib/authlib/commit/6563f6f7a8c2f71d2f85ee7511d72a4fbae3acc0
web, patch
-
github.com
/authlib/authlib/commit/891e3f10ae5989176211f8be35dcc7cd40aa92c6
web, patch
-
github.com
/authlib/authlib/security/advisories/GHSA-x4rv-c3wx-4cr8
exploit, web, vendor-advisory, evidence
-
github.com
/authlib/authlib/releases/tag/v1.9.0
web, release-notes, advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-114620
advisory
-
github.com
/authlib/authlib
package
Sources
- CVE List CVE-2026-114620
- GitHub Advisory GHSA-x4rv-c3wx-4cr8
- NVD CVE-2026-114620
- OSV PYSEC-2026-4360
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.