Read the docs
TI-2024-31532 Aliases CVE-2024-47164GHSA-77xq-6g77-h274

The `is_in_or_equal` function may be bypassed in Gradio

Priority LOW 13CWE-22Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
None
Attack complexity
High
Attack requirements
Present
Impact type
Information disclosure
Confidentiality · integrity · availability
Low · None · None
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub. Impact type from CWE-22 and the CVSS impact.

Summary

Gradio is an open-source Python package designed for quick prototyping. This vulnerability relates to the **bypass of directory traversal checks** within the `is_in_or_equal` function. This function, intended to check if a file resides within a given directory, can be bypassed with certain payloads that manipulate file paths using `..` (parent directory) sequences. Attackers could potentially access restricted files if they are able to exploit this flaw, although the difficulty is high. This primarily impacts users relying on Gradio’s blocklist or directory access validation, particularly when handling file uploads. Users are advised to upgrade to `gradio>=5.0` to address this issue. As a workaround, users can manually sanitize and normalize file paths in their Gradio deployment before passing them to the `is_in_or_equal` function. Ensuring that all file paths are properly resolved and absolute can help mitigate the bypass vulnerabilities caused by the improper handling of `..` sequences or malformed paths.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00705 53rd percentileScored 2026-11-07
Fix Fixed gradio (gradio-app): 5.0gradio (PyPI): 5.0.0

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
gradio-appgradiobefore 5.05.0Patch availableCNA
—gradio (PyPI)before 5.0.05.0.0Patch availableGHSA-77xq-6g77-h274
  • gradio Vendorgradio-app Affected before 5.0 Fixed in 5.0 Patch available CNA
  • gradio (PyPI) Vendor— Affected before 5.0.0 Fixed in 5.0.0 Patch available GHSA-77xq-6g77-h274

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:gradio_project:gradio:*:*:*:*:*:python:*:*before 5.0.0Vulnerablegradio-app
  • cpe:2.3:a:gradio_project:gradio:*:*:*:*:*:python:*:* Versions before 5.0.0 Vulnerable ·gradio-app

Remediation

  • Fix · CNA gradio (gradio-app) Fixed in 5.0
  • Fix · GHSA-77xq-6g77-h274 gradio (PyPI) Fixed in 5.0.0 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2024-47164
  2. 2026-10-03 Alias added: GHSA-77xq-6g77-h274

References

  • TI-2024-26222 Gradio v4.36.1 was discovered to contain a code injection vulnerability via the component… CVSS 3.1CRITICAL 9.8
  • TI-2024-01607 Local File Inclusion in gradio-app/gradio CVSS 3.1HIGH 7.5
  • TI-2024-00889 LFI in Gradio CVSS 3.1CRITICAL 9.4
  • TI-2025-16852 Gradio Blocked Path ACL Bypass Vulnerability CVSS 4.0HIGH 8.7
  • TI-2026-22690 Gradio has SSRF via Malicious `proxy_url` Injection in `gr.load()` Config Processing CVSS 3.1HIGH 8.6
  • TI-2024-09866 Path Traversal in gradio-app/gradio CVSS 3.0HIGH 8.2
See all 49 →

Sources