Security Advisory

CVE-2025-25296: Label Studio Cross-Site Scripting via upload-example Endpoint

XSS in Label Studio's /projects/upload-example endpoint allows arbitrary HTML or JavaScript injection through crafted label_config query data.

Overview

The /projects/upload-example endpoint renders a labeling config passed in the label_config query parameter. It accepts a GET request and renders inline task data from the config as HTML without sanitizing it.

An attacker embeds script in the task data, URL-encodes the config, and sends the link to a victim. The script runs when the page loads. Label Studio ships a Content Security Policy, but only in report-only mode, so it does not block execution. Label Studio 1.16.0 fixes the issue.

Affected products

  • Label Studio before 1.16.0

Disclosure timeline

13 Feb 2025
HumanSignal releases Label Studio 1.16.0; /projects/upload-example no longer accepts GET
14 Feb 2025
GitHub advisory and CVE-2025-25296 published