CVE-2024-4941

High

Description

A local file inclusion vulnerability exists in the JSON component of gradio-app/gradio version 4.25. The vulnerability arises from improper input validation in the `postprocess()` function within `gradio/components/json_component.py`, where a user-controlled string is parsed as JSON. If the parsed JSON object contains a `path` key, the specified file is moved to a temporary directory, making it possible to retrieve it later via the `/file=..` endpoint. This issue is due to the `processing_utils.move_files_to_cache()` function traversing any object passed to it, looking for a dictionary with a `path` key, and then copying the specified file to a temporary directory. The vulnerability can be exploited by an attacker to read files on the remote system, posing a significant security risk.

SeverityHigh
CVSS7.5
Exploit probability—
ProductGradio
PublishedJun 6, 2024
First seenJun 6, 2024

How to fix

Update
  • gradio_project gradio4.31.4 or later
  • gradio4.31.3, 4.31.4 or later

Affected products

ProductAffected versionsFixed in
gradio_project gradiov < 4.31.44.31.4
gradioPyPIv < 4.31.3, v < 4.31.44.31.3, 4.31.4

Check your version

Choose the product and enter the version you run to see whether it falls in the affected range.

In the Intelligence 360 plan

Attack Surface Management

See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.

CVE-2024-4941 · Gradio · Dark Radar