CVE-2026-22033 json
Label Studio vulnerable to full account takeover by chaining Stored XSS + IDOR in User Profile via custom_hotkeys field
published 2026-01-12 9 mo ago modified 2026-09-10 1 mo ago also EUVD-2026-1921 , GHSA-2mq9-hm29-8qch , PYSEC-2026-1502
- cvss
- 5.4
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.3%
- EPSS 0.3% chance of exploitation in 30 days, percentile 20%
- public exploits
- 0
- none known
Summary
Label Studio is a multi-type data labeling and annotation tool. In 1.22.0 and earlier, 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.
Patch / fix
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- 9 mo ago
Exploit prediction
0.28% chance of exploitation in the next 30 days, higher than 20% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/HumanSignal/label-studio/security/advisories/GHSA-2mq9-hm29-8qch referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 8.6 | CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N |
| CNA | 4.0 | 8.6 | CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
| NVD | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | label-studio | <=1.22.0 |
no fix listed |
Affected products
- HumanSignal label-studio
Classification
References
-
github.com
/HumanSignal/label-studio/pull/9084
web, issue-tracking
-
github.com
/HumanSignal/label-studio/commit/ea2462bf042bbf370b79445d02a205fbe547b505
web, patch
-
github.com
/HumanSignal/label-studio/security/advisories/GHSA-2mq9-hm29-8qch
web, exploit, vendor-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-22033
advisory
-
github.com
/HumanSignal/label-studio
package
-
github.com
/HumanSignal/label-studio/releases/tag/nightly
web
-
pypi.org
/project/label-studio
package
-
github.com
/advisories/GHSA-2mq9-hm29-8qch
advisory
Sources
- CVE List CVE-2026-22033
- GitHub Advisory GHSA-2mq9-hm29-8qch
- NVD CVE-2026-22033
- OSV PYSEC-2026-1502
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.