GHSA-26jh-r8g2-6fpr Gradio's dropdown component pre-process step does not limit the values to those in the dropdown list
Attackers can bypass dropdown input restrictions in Gradio applications by sending arbitrary values, potentially leading to further security issues.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is GHSA-26jh-r8g2-6fpr?
GHSA-26jh-r8g2-6fpr is a vulnerability in gradio, published on 10 Oct 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Impact
What kind of vulnerability is it? Who is impacted?
This vulnerability is a data validation issue in the Gradio Dropdown component's pre-processing step. Even if the allow_custom_value parameter is set to False, attackers can bypass this restriction by sending custom requests with arbitrary values, effectively breaking the developer’s intended input constraints. While this alone is not a severe vulnerability, it can lead to more critical security issues, particularly when paired with other vulnerabilities like file downloads from the user's machine.
Patches
Yes, this issue is addressed in gradio>=5.0. Please upgrade to the latest version to resolve the problem.
Workarounds
Is there a way for users to fix or remediate the vulnerability without upgrading?
To mitigate the issue without upgrading, developers can add manual validation in their prediction function to check the received values against the allowed dropdown values before processing them.
Which versions are affected by GHSA-26jh-r8g2-6fpr?
2 open source packages ship an affected version, including gradio.
| Package | Affected | Fixed in |
|---|---|---|
gradio PyPI | All versions | 5.0.0 |
gradio PyPI | All versions | 5.0.0 |
How do I fix GHSA-26jh-r8g2-6fpr?
Upgrade gradio to 5.0.0 or later.
Is GHSA-26jh-r8g2-6fpr being exploited?
There is no known exploitation of GHSA-26jh-r8g2-6fpr in the wild and no public exploit code.