Skip to content
Fencer Vulns
high 7.7

CVE-2021-43831 json

Files on the host computer can be accessed from the Gradio interface

published 2021-12-15 4 y ago modified 2026-07-08 4 mo ago also GHSA-rhq2-3vr9-6mcr , PYSEC-2021-873 , EUVD-2021-0095

cvss
7.7
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
3.9%
EPSS 3.9% chance of exploitation in 30 days, percentile 90%
public exploits
0
none known, plus a Nuclei check

Summary

Gradio is an open source framework for building interactive machine learning models and demos. In versions prior to 2.5.0 there is a vulnerability that affects anyone who creates and publicly shares Gradio interfaces. File paths are not restricted and users who receive a Gradio link can access any files on the host computer if they know the file names or file paths. This is limited only by the host operating system. Paths are opened in read only mode. The problem has been patched in gradio 2.5.0.

Patch / fix

  • pypi gradio 2.5.0
  • gradio_project gradio 2.5.0

Exploit prediction

3.85% chance of exploitation in the next 30 days, higher than 90% of all scored CVEs (FIRST EPSS, 2026-11-08).

Exploits and checks

  • Nuclei template Gradio < 2.5.0 - Arbitrary File Read nuclei detection template
  • github.com https://github.com/gradio-app/gradio/security/advisories/GHSA-rhq2-3vr9-6mcr referenced PoC, tagged "exploit" by a source, unverified

CVSS scores

assigned by version score vector
CNA 3.1 7.7 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
NVD 3.1 7.7 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
NVD 2.0 3.5 AV:N/AC:M/Au:S/C:P/I:N/A:N
GitHub 3.1 8.3 CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L

Affected packages

ecosystem package affected fixed in
pypi gradio
<2.5.0
2.5.0

Affected products

  • gradio-app gradio

Classification

Weakness
  • CWE-22 Improper Limitation of a Pathname to a Restricted Directory

References

Sources

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.