CVE-2024-1561

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

State
Published
Severity
7.5 High
Published
Apr 16, 2024
Updated
Feb 13, 2025
Reserved
Feb 15, 2024

Read the record on cve.org

Description

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.

Scores

CVSSScoreVectorSource
3.07.5 HighCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N@huntr_ai

Weaknesses

  • CWE-29 Path Traversal: '\..\filename'

Affected Products

ProductVersions
gradio-app/gradiogradio-app
  • before 4.13.0Affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.