Security Resilience

CVE-2024-1540

RCE in Gradio Project Gradio ≤ 2024-02-09

Published
27 March 2024
Modified
17 June 2026
Patch / advisory
CVSS Score v3.1 8.2
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N
EPSS Score 0.020 80th percentile
Risk Priority 65 floored blend · peak EPSS

CVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.

Summary

CVE-2024-1540 is a high-severity Command Injection (CWE-77) vulnerability in Gradio Project Gradio. Its CVSS base score is 8.2 (High).

Operationally, ranked in the top 20% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

This vulnerability is AI-related — categorised as Machine Learning Libraries; in the Supply Chain and Deployment risk domain.

The strongest mitigations our analysis identified map to SA-11 (Developer Testing and Evaluation) and SI-10 (Information Input Validation) — see the control section below for these in your framework.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

A command injection vulnerability exists in the deploy+test-visual.yml workflow of the gradio-app/gradio repository, due to improper neutralization of special elements used in a command. This vulnerability allows attackers to execute unauthorized commands, potentially leading to unauthorized modification of the base…

more

repository or secrets exfiltration. The issue arises from the unsafe handling of GitHub context information within a `run` operation, where expressions inside `${{ }}` are evaluated and substituted before script execution. Remediation involves setting untrusted input values to intermediate environment variables to prevent direct influence on script generation.

CWE(s)

AI Security AnalysisAI

AI Category
Machine Learning Libraries
Risk Domain
Supply Chain and Deployment
OWASP Top 10 for LLMs 2025
None mapped
Classification Reason
Gradio is an open-source Python library for building web-based interfaces for machine learning models, commonly used for demos and inference serving, making it a machine learning library affected in its repository workflows.

Related Threats

CVEs Like This One

CVE-2023-6572Same product: Gradio Project Gradio
CVE-2024-1728Same product: Gradio Project Gradio
CVE-2024-4940Same product: Gradio Project Gradio
CVE-2024-4253Same product: Gradio Project Gradio
CVE-2024-4941Same product: Gradio Project Gradio
CVE-2024-39236Same product: Gradio Project Gradio
CVE-2024-10648Same product: Gradio Project Gradio
CVE-2024-2206Same product: Gradio Project Gradio
CVE-2023-25823Same product: Gradio Project Gradio
CVE-2024-8021Same product: Gradio Project Gradio

Affected Assets

gradio project
gradio
≤ 2024-02-09

Mitigating Controls

Mitigating Controls (NIST 800-53 r5) AI

Developer testing and evaluation can discover command-construction flaws before deployment.

Input validation directly stops construction of commands from untrusted data containing special elements.

Secure engineering principles include proper neutralization and safe command construction practices.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

blocks

A.8.25 mandates secure SDLC practices including secure coding guidelines, security requirements, checkpoints, testing (scans/penetration), and developer training that reduce command injection defects, but leaves a minority slice (e.g. incomplete implementation of those practices, outsourced development without full assurance, or post-SDLC changes) where the weakness can still arise and be exploitable.

blocks

Application security requirements explicitly call for controls against injection flaws including command injection.

blocks

A.8.27 mandates security-by-design principles (e.g. distrust external input, secure session control, data validation/sanitization, least privilege) and design reviews that can stop command injection from being introduced, but this is only a minority slice of CWE-77 because the weakness can still arise in code that bypasses those principles, in non-reviewed components, or in runtime injection vectors the architecture review does not reach.

prevents

Secure coding standards require proper escaping and parameterization of commands, directly eliminating CWE-77.

finds

Security testing in development catches command-injection vulnerabilities before release.

Hardening callouts derived

DISA STIG baselines are authored against specific weaknesses. Where this CVE cites a broad weakness class, the mapping is not asserted at that abstraction (owner ruling, 2026-09-25: grade only at Base and below), so no rule is shown here rather than a rule shown against the wrong grain.

  • No fine-grained STIG row for CWE-77, a class-level weakness, and none of its children carries one either.

References