CVE-2026-28414 json
Gradio has Absolute Path Traversal on Windows with Python 3.13+
published 2026-02-27 8 mo ago modified 2026-06-17 4 mo ago also EUVD-2026-9082 , GHSA-39mp-8hj3-5c49 , PYSEC-2026-64
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 3.1%
- EPSS 3.1% chance of exploitation in 30 days, percentile 87%
- public exploits
- 0
- none known, plus a Nuclei check
Summary
Gradio is an open-source Python package designed for quick prototyping. Prior to version 6.7, Gradio apps running on Window with Python 3.13+ are vulnerable to an absolute path traversal issue that enables unauthenticated attackers to read arbitrary files from the file system. Python 3.13+ changed the definition of `os.path.isabs` so that root-relative paths like `/windows/win.ini` on Windows are no longer considered absolute paths, resulting in a vulnerability in Gradio's logic for joining paths safely. This can be exploited by unauthenticated attackers to read arbitrary files from the Gradio server, even when Gradio is set up with authentication. Version 6.7 fixes the issue.
Patch / fix
- pypi gradio 6.7.0
- gradio-app gradio 6.7
- gradio_project gradio 6.7
Vendor 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-28414 updated cvss 7.5
gradio: Gradio: Information disclosure via absolute path traversal
-
Red Hat All currently supported Red Hat productsnot affected: vulnerable code not present
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
- 8 mo ago
Exploit prediction
3.06% chance of exploitation in the next 30 days, higher than 87% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- Nuclei template Gradio - Absolute Path Traversal nuclei detection template
- github.com https://github.com/gradio-app/gradio/security/advisories/GHSA-39mp-8hj3-5c49 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
| OSV | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | gradio | <6.7.0 |
6.7.0 |
Affected products
- gradio-app gradio
Classification
References
-
github.com
/gradio-app/gradio/commit/6011b00d0154b85532fa901dd73cf8fa7d86fd04
web
-
github.com
/gradio-app/gradio/security/advisories/GHSA-39mp-8hj3-5c49
web, exploit, vendor-advisory, evidence
-
nvd.nist.gov
/vuln/detail/CVE-2026-28414
advisory
-
github.com
/gradio-app/gradio
package
-
github.com
/pypa/advisory-database/tree/main/vulns/gradio/PYSEC-2026-64.yaml
web
Sources
- CVE List CVE-2026-28414
- GitHub Advisory GHSA-39mp-8hj3-5c49
- NVD CVE-2026-28414
- OSV PYSEC-2026-64
Fencer Vulns 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.