SB2026042850 - Multiple vulnerabilities in Gradio



SB2026042850 - Multiple vulnerabilities in Gradio

Published: April 28, 2026

Security Bulletin ID SB2026042850
Severity
High
Patch available
YES
Number of vulnerabilities 3
Exploitation vector Remote access
Highest impact Data manipulation

Breakdown by Severity

High 33% Low 67%
  • Low
  • Medium
  • High
  • Critical

Description

This security bulletin contains information about 3 secuirty vulnerabilities.


1) Information disclosure (CVE-ID: CVE-2026-27167)

The vulnerability allows a remote attacker to disclose sensitive information.

The vulnerability exists due to exposure of sensitive information in mocked OAuth routes in gradio/oauth.py when handling requests to the /login/huggingface and /login/callback endpoints. A remote attacker can trigger the mocked OAuth flow and decode the session cookie payload to disclose sensitive information.

Only applications running outside of Hugging Face Spaces that use OAuth components and have a Hugging Face token configured on the host are vulnerable.


2) Open redirect (CVE-ID: CVE-2026-28415)

The vulnerability allows a remote attacker to redirect users to an arbitrary external site.

The vulnerability exists due to url redirection to an untrusted site in the _redirect_to_target() function in Gradio's OAuth flow when handling a user-controlled _target_url query parameter. A remote attacker can send a specially crafted link to redirect users to an arbitrary external site.

User interaction is required, and the issue affects the /logout and /login/callback endpoints when OAuth is enabled.


3) Server-Side Request Forgery (SSRF) (CVE-ID: CVE-2026-28416)

The vulnerability allows a remote attacker to make arbitrary HTTP requests to internal services and disclose sensitive information.

The vulnerability exists due to server-side request forgery in gr.load() config processing and the proxy endpoint when loading an attacker-controlled Space configuration. A remote attacker can host a malicious Gradio Space with a crafted proxy_url and send requests through the built-in proxy route to make arbitrary HTTP requests to internal services and disclose sensitive information.

Exploitation requires the victim application to use gr.load() to load an external or untrusted Space.


Remediation

Install update from vendor's website.