CVE-2024-47870 Race condition in update_root_in_config may redirect user traffic in Gradio
A race condition in Gradio allows attackers to redirect user traffic to malicious servers, potentially intercepting sensitive data like credentials.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2024-47870?
CVE-2024-47870 is a high-severity vulnerability in Gradio Project Gradio, published on 10 Oct 2024. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
Gradio is an open-source Python package designed for quick prototyping. This vulnerability involves a **race condition** in the `update_root_in_config` function, allowing an attacker to modify the `root` URL used by the Gradio frontend to communicate with the backend. By exploiting this flaw, an attacker can redirect user traffic to a malicious server. This could lead to the interception of sensitive data such as authentication credentials or uploaded files. This impacts all users who connect to a Gradio server, especially those exposed to the internet, where malicious actors could exploit this race condition. Users are advised to upgrade to `gradio>=5` to address this issue. There are no known workarounds for this issue.
Weakness: CWE-362
Which versions are affected by CVE-2024-47870?
3 open source packages ship an affected version, including gradio. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
gradio PyPI | All versions | 5.0.0 |
gradio PyPI | All versions | 5.0.0 |
gradio PyPI | All versions | 5.0.0 |
Products include Gradio Project Gradio.
How do I fix CVE-2024-47870?
Upgrade gradio to 5.0.0 or later.
Is CVE-2024-47870 being exploited?
There is no known exploitation of CVE-2024-47870 in the wild and no public exploit code.
Other vulnerabilities in Gradio Project Gradio
- CVE-2024-39236 Withdrawn Advisory: Gradio was discovered to contain a code injection vulnerability via the component /gradio/component_meta.py
- CVE-2023-6572 Command Injection in gradio-app/gradio
- CVE-2022-24770 Improper Neutralization of Formula Elements in a CSV File in Gradio Flagging
- CVE-2026-49119 Gradio < 6.16.0 Path Traversal via FileExplorer.preprocess()
- CVE-2025-23042 Gradio Blocked Path ACL Bypass Vulnerability
Sources
Also known as GHSA-xh2x-3mrm-fwqm, PYSEC-2024-218.