CVE-2024-10648: Gradio: path traversal enables arbitrary file deletion DoS
GHSA-pgfv-gvc5-prfg HIGH PoC AVAILABLE CISA: TRACK*Any Gradio instance (versions 4.0.0–5.0.0b2) exposed to a network is vulnerable to unauthenticated file-wiping attacks via crafted audio format parameters — no credentials needed, no user interaction required. The attack resets arbitrary server files to empty, causing immediate service disruption to any AI workload served through Gradio. Audit your ML demo environments, internal AI tools, and Hugging Face Spaces deployments immediately and upgrade or isolate.
Risk Assessment
High severity in context despite low EPSS (0.00245). The CVSS 8.2 score reflects a zero-barrier attack path: network-accessible, no auth, no interaction. While not yet actively exploited at scale, Gradio is ubiquitous in AI/ML environments — model demos, internal prototyping tools, and production-adjacent inference UIs. A single successful exploit can wipe config files, weights, or application code, halting AI services. Exposure risk is elevated because Gradio instances are frequently deployed internet-facing (Hugging Face Spaces, internal demos) with minimal hardening.
Affected Systems
Severity & Risk
Attack Surface
Recommended Action
5 steps-
PATCH
Upgrade to Gradio >5.0.0b2 immediately. No official patch version is confirmed in the advisory yet — monitor https://github.com/gradio-app/gradio/releases for the fix commit post-98cbcae.
-
ISOLATE
If patching is not immediately possible, restrict Gradio instances to authenticated internal networks only — remove all public exposure.
-
WORKAROUND
Implement a WAF rule blocking audio format parameters containing path traversal sequences (../, ..\, URL-encoded equivalents).
-
DETECT
Audit server logs for unusual format parameter values in audio processing requests; alert on file size drops to zero in monitored directories.
-
HARDEN
Run Gradio in a container with read-only filesystem mounts where possible, limiting blast radius of file deletion.
CISA SSVC Assessment
Source: CISA Vulnrichment (SSVC v2.0). Decision based on the CISA Coordinator decision tree.
Classification
Compliance Impact
This CVE is relevant to:
Frequently Asked Questions
What is CVE-2024-10648?
Any Gradio instance (versions 4.0.0–5.0.0b2) exposed to a network is vulnerable to unauthenticated file-wiping attacks via crafted audio format parameters — no credentials needed, no user interaction required. The attack resets arbitrary server files to empty, causing immediate service disruption to any AI workload served through Gradio. Audit your ML demo environments, internal AI tools, and Hugging Face Spaces deployments immediately and upgrade or isolate.
Is CVE-2024-10648 actively exploited?
Proof-of-concept exploit code is publicly available for CVE-2024-10648, increasing the risk of exploitation.
How to fix CVE-2024-10648?
1. PATCH: Upgrade to Gradio >5.0.0b2 immediately. No official patch version is confirmed in the advisory yet — monitor https://github.com/gradio-app/gradio/releases for the fix commit post-98cbcae. 2. ISOLATE: If patching is not immediately possible, restrict Gradio instances to authenticated internal networks only — remove all public exposure. 3. WORKAROUND: Implement a WAF rule blocking audio format parameters containing path traversal sequences (../, ..\, URL-encoded equivalents). 4. DETECT: Audit server logs for unusual format parameter values in audio processing requests; alert on file size drops to zero in monitored directories. 5. HARDEN: Run Gradio in a container with read-only filesystem mounts where possible, limiting blast radius of file deletion.
What systems are affected by CVE-2024-10648?
This vulnerability affects the following AI/ML architecture patterns: model serving, AI demo platforms, ML prototyping environments, inference APIs with Gradio frontend.
What is the CVSS score for CVE-2024-10648?
CVE-2024-10648 has a CVSS v3.1 base score of 8.2 (HIGH). The EPSS exploitation probability is 0.25%.
Technical Details
NVD Description
A path traversal vulnerability exists in the Gradio Audio component of gradio-app/gradio, as of version git 98cbcae. This vulnerability allows an attacker to control the format of the audio file, leading to arbitrary file content deletion. By manipulating the output format, an attacker can reset any file to an empty file, causing a denial of service (DOS) on the server.
Exploitation Scenario
Adversary identifies a public-facing Gradio instance running a speech-to-text or audio classification model (common in enterprise AI demos). Using the Gradio Audio component's format parameter, they craft a request that manipulates the output path via CWE-29 path traversal (e.g., injecting '..filename' sequences to escape the intended temp directory). The Gradio processing_utils.py handler at line 234 resolves the attacker-controlled path and resets the target file to empty. The adversary iterates over predictable paths: application config files, model weight files (*.pt, *.onnx), or database files — systematically disabling the AI service. No authentication token, API key, or insider access required.
Weaknesses (CWE)
CVSS Vector
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H References
Timeline
Related Vulnerabilities
CVE-2024-47167 9.8 Gradio: unauthenticated SSRF in /queue/join, internal pivot
Same package: gradio CVE-2023-25823 9.8 Gradio: hardcoded SSH key leaks via share=True demos
Same package: gradio CVE-2024-39236 9.8 Gradio: code injection via component metadata (CVSS 9.8)
Same package: gradio CVE-2024-0964 9.4 Gradio: unauthenticated LFI exposes full server filesystem
Same package: gradio CVE-2023-34239 9.1 Gradio: path traversal + SSRF exposes model files & infra
Same package: gradio
AI Threat Alert