CVE-2023-47117 json
Object Relational Mapper Leak Vulnerability in Filtering Task in Label Studio
published 2023-11-13 2 y ago modified 2026-09-10 1 mo ago also GHSA-6hjj-gq77-j4qw , PYSEC-2023-275 , EUVD-2023-0108
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 4.1%
- EPSS 4.1% chance of exploitation in 30 days, percentile 90%
- public exploits
- 0
- none known, plus a Nuclei check
Summary
Label Studio is an open source data labeling tool. In all current versions of Label Studio prior to 1.9.2post0, the application allows users to insecurely set filters for filtering tasks. An attacker can construct a filter chain to filter tasks based on sensitive fields for all user accounts on the platform by exploiting Django's Object Relational Mapper (ORM). Since the results of query can be manipulated by the ORM filter, an attacker can leak these sensitive fields character by character. In addition, Label Studio had a hard coded secret key that an attacker can use to forge a session token of any user by exploiting this ORM Leak vulnerability to leak account password hashes. This vulnerability has been addressed in commit `f931d9d129` which is included in the 1.9.2post0 release. Users are advised to upgrade. There are no known workarounds for this vulnerability.
Patch / fix
- pypi label-studio 1.9.2, 1.9.2.post0
- humansignal label_studio 1.9.2
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 22 mo ago
Exploit prediction
4.06% chance of exploitation in the next 30 days, higher than 90% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- Nuclei template Label Studio - Sensitive Information Exposure nuclei detection template
- github.com https://github.com/HumanSignal/label-studio/security/advisories/GHSA-6hjj-gq77-j4qw referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
| NVD | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
| OSV | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | label-studio | <1.9.2.post0 <1.9.2 |
1.9.2.post0 1.9.2 |
Affected products
- HumanSignal label-studio
Classification
- Weakness
-
- CWE-200 Exposure of Sensitive Information to an Unauthorized Actor
References
-
github.com
/HumanSignal/label-studio/commit/f931d9d129002f54a495995774ce7384174cef5c
web, patch
-
github.com
/HumanSignal/label-studio/security/advisories/GHSA-6hjj-gq77-j4qw
web, exploit, mitigation, vendor-advisory, advisory
-
nvd.nist.gov
/vuln/detail/CVE-2023-47117
advisory
-
github.com
/HumanSignal/label-studio
package
-
github.com
/pypa/advisory-database/tree/main/vulns/label-studio/PYSEC-2023-275.yaml
web
Sources
- CVE List CVE-2023-47117
- GitHub Advisory GHSA-6hjj-gq77-j4qw
- NVD CVE-2023-47117
- OSV PYSEC-2023-275
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.