CVE-2026-22033
High · 8.1Label Studio is vulnerable to full account takeover by chaining Stored XSS + IDOR in User Profile via custom_hotkeys field
CVSS
8.1
EPSS
0.3%
Published
Jan 12, 2026
CISA due date
—
The record
A persistent stored cross-site scripting (XSS) vulnerability exists in the custom_hotkeys functionality of the application. An authenticated attacker (or one who can trick a user/administrator into updating their custom_hotkeys) can inject JavaScript code that executes in other users’ browsers when those users load any page using the `templates/base.html` template. Because the application exposes an API token endpoint (`/api/current-user/token`) to the browser and lacks robust CSRF protection on some API endpoints, the injected script may fetch the victim’s API token or call token reset endpoints — enabling full account takeover and unauthorized API access. This vulnerability is of critical severity due to the broad impact, minimal requirements for exploitation (authenticated user), and the ability to escalate privileges to full account compromise.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| PyPI | label-studio | 0 | No fix |
| Chainguard | label-studio | 0 | 1.22.0-r2 |
Related vulnerabilities
- GHSA-2mq9-hm29-8qch Label Studio is vulnerable to full account takeover by chaining Stored XSS + IDOR in User… Same vulnerability
- CVE-2026-25645 Requests is a HTTP library. Also affects label-studio
- CVE-2026-4539 A security flaw has been discovered in pygments up to 2.19.2. Also affects label-studio
- CVE-2026-33230 NLTK (Natural Language Toolkit) is a suite of open source Python modules, data sets, and… Also affects label-studio
- CVE-2026-33231 NLTK (Natural Language Toolkit) is a suite of open source Python modules, data sets, and… Also affects label-studio
- CVE-2026-30922 pyasn1 is a generic ASN.1 library for Python. Also affects label-studio
- CVE-2026-32597 PyJWT is a JSON Web Token implementation in Python. Also affects label-studio
- CVE-2026-32274 Black is the uncompromising Python code formatter. Also affects label-studio