CVE-2024-1561CWE-29

Arbitrary Local File Read via Component Method Invocation in gradio-app/gradio

High · published April 16, 2024

CVSS v3.0
7.5
EPSS
9%
Percentile
95.4
In the wild
Unconfirmed
What it is

An issue was discovered in gradio-app/gradio, where the `/component_server` endpoint improperly allows the invocation of any method on a `Component` class with attacker-controlled arguments. Specifically, by exploiting the `move_resource_to_block_cache()` method of the `Block` class, an attacker can copy any file on the filesystem to a temporary directory and subsequently retrieve it. This vulnerability enables unauthorized local file read access, posing a significant risk especially when the application is exposed to the internet via `launch(share=True)`, thereby allowing remote attackers to read files on the host machine. Furthermore, gradio apps hosted on `huggingface.co` are also affected, potentially leading to the exposure of sensitive information such as API keys and credentials stored in environment variables.

The record
Technical detail
CVSS v3.0
7.5 · HIGH
Vector
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
CVSS v4.0
Not supplied
EPSS
0.09314 · 95.4th percentile
Weakness
CWE-29 · Path Traversal: '\..\filename'
Published
2024-04-16T00:00Z
EPSS history
Timeline
  • 16 APR 00:00Z
    Arbitrary Local File Read via Component Method Invocation in gradio-app/gradio
    cvelistv5