Vulnerability · Published Oct 10, 2024 · Assigned by GitHub_M

CVE-2024-47084CORS origin validation is not performed when the request has a cookie in Gradio

Medium 6.9

In plain English

A medium-severity security flaw in gradio from gradio-app. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.5% (higher than 45% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 4.0)6.9Medium
Exploit odds (30 days)0.5%top 55.1% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack toolingNoneno public tooling known

Official description

Gradio is an open-source Python package designed for quick prototyping. This vulnerability is related to **CORS origin validation**, where the Gradio server fails to validate the request origin when a cookie is present. This allows an attacker’s website to make unauthorized requests to a local Gradio server. Potentially, attackers can upload files, steal authentication tokens, and access user data if the victim visits a malicious website while logged into Gradio. This impacts users who have deployed Gradio locally and use basic authentication. Users are advised to upgrade to `gradio>4.44` to address this issue. As a workaround, users can manually enforce stricter CORS origin validation by modifying the `CustomCORSMiddleware` class in their local Gradio server code. Specifically, they can bypass the condition that skips CORS validation for requests containing cookies to prevent potential exploitation.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
PyPIgradio4.44.0GHSA-3c67-5hwx-f6wx
PyPIgradio4.44.0PYSEC-2024-196

Affected products (as reported)

VendorProductVersions
gradio-app gradio < 4.44

Weakness: CWE-285 · Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N

References