CVE-2024-26152
Vulnerability from cvelistv5
Published
2024-02-22 21:52
Modified
2024-08-14 15:32
Severity ?
EPSS score ?
Summary
Label Studio vulnerable to Cross-site Scripting if `<Choices>` or `<Labels>` are used in labeling config
References
Impacted products
▼ | Vendor | Product |
---|---|---|
HumanSignal | label-studio |
{ "containers": { "adp": [ { "providerMetadata": { "dateUpdated": "2024-08-01T23:59:32.696Z", "orgId": "af854a3a-2127-422b-91ae-364da2661108", "shortName": "CVE" }, "references": [ { "name": "https://github.com/HumanSignal/label-studio/security/advisories/GHSA-6xv9-957j-qfhg", "tags": [ "x_refsource_CONFIRM", "x_transferred" ], "url": "https://github.com/HumanSignal/label-studio/security/advisories/GHSA-6xv9-957j-qfhg" }, { "name": "https://github.com/HumanSignal/label-studio/pull/5232", "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://github.com/HumanSignal/label-studio/pull/5232" }, { "name": "https://github.com/HumanSignal/label-studio/commit/5df9ae3828b98652e9fa290a19f4deedf51ef6c8", "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://github.com/HumanSignal/label-studio/commit/5df9ae3828b98652e9fa290a19f4deedf51ef6c8" }, { "name": "https://github.com/HumanSignal/label-studio/releases/tag/1.11.0", "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://github.com/HumanSignal/label-studio/releases/tag/1.11.0" } ], "title": "CVE Program Container" }, { "affected": [ { "cpes": [ "cpe:2.3:a:humansignal:label_studio:*:*:*:*:*:*:*:*" ], "defaultStatus": "unknown", "product": "label_studio", "vendor": "humansignal", "versions": [ { "lessThan": "1.11.0", "status": "affected", "version": "0", "versionType": "custom" } ] } ], "metrics": [ { "other": { "content": { "id": "CVE-2024-26152", "options": [ { "Exploitation": "poc" }, { "Automatable": "no" }, { "Technical Impact": "partial" } ], "role": "CISA Coordinator", "timestamp": "2024-02-23T14:32:49.819252Z", "version": "2.0.3" }, "type": "ssvc" } } ], "providerMetadata": { "dateUpdated": "2024-08-14T15:32:05.054Z", "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "shortName": "CISA-ADP" }, "title": "CISA ADP Vulnrichment" } ], "cna": { "affected": [ { "product": "label-studio", "vendor": "HumanSignal", "versions": [ { "status": "affected", "version": "\u003c 1.11.0" } ] } ], "descriptions": [ { "lang": "en", "value": "### Summary\nOn all Label Studio versions prior to 1.11.0, data imported via file upload feature is not properly sanitized prior to being rendered within a [`Choices`](https://labelstud.io/tags/choices) or [`Labels`](https://labelstud.io/tags/labels) tag, resulting in an XSS vulnerability.\n\n### Details\nNeed permission to use the \"data import\" function. This was reproduced on Label Studio 1.10.1.\n\n### PoC\n\n1. Create a project.\n![Create a project](https://github.com/HumanSignal/label-studio/assets/3943358/9b1536ad-feac-4238-a1bd-ca9b1b798673)\n\n2. Upload a file containing the payload using the \"Upload Files\" function.\n![2 Upload a file containing the payload using the Upload Files function](https://github.com/HumanSignal/label-studio/assets/3943358/26bb7af1-1cd2-408f-9adf-61e31a5b7328)\n![3 complete](https://github.com/HumanSignal/label-studio/assets/3943358/f2f62774-1fa6-4456-9e6f-8fa1ca0a2d2e)\n\nThe following are the contents of the files used in the PoC\n```\n{\n \"data\": {\n \"prompt\": \"labelstudio universe image\",\n \"images\": [\n {\n \"value\": \"id123#0\",\n \"style\": \"margin: 5px\",\n \"html\": \"\u003cimg width=\u0027400\u0027 src=\u0027https://labelstud.io/_astro/images-tab.64279c16_ZaBSvC.avif\u0027 onload=alert(document.cookie)\u003e\"\n }\n ]\n }\n}\n```\n\n3. Select the text-to-image generation labeling template of Ranking and scoring\n![3 Select the text-to-image generation labelling template for Ranking and scoring](https://github.com/HumanSignal/label-studio/assets/3943358/f227f49c-a718-4738-bc2a-807da4f97155)\n![5 save](https://github.com/HumanSignal/label-studio/assets/3943358/9b529f8a-8e99-4bb0-bdf6-bb7a95c9b75d)\n\n4. Select a task\n![4 Select a task](https://github.com/HumanSignal/label-studio/assets/3943358/71856b7a-2b1f-44ea-99ab-fc48bc20caa7)\n\n5. Check that the script is running\n![5 Check that the script is running](https://github.com/HumanSignal/label-studio/assets/3943358/e396ae7b-a591-4db7-afe9-5bab30b48cb9)\n\n### Impact\nMalicious scripts can be injected into the code, and when linked with vulnerabilities such as CSRF, it can cause even greater damage. In particular, It can become a source of further attacks, especially when linked to social engineering.\n" } ], "metrics": [ { "cvssV3_1": { "attackComplexity": "LOW", "attackVector": "NETWORK", "availabilityImpact": "NONE", "baseScore": 4.7, "baseSeverity": "MEDIUM", "confidentialityImpact": "LOW", "integrityImpact": "NONE", "privilegesRequired": "NONE", "scope": "CHANGED", "userInteraction": "REQUIRED", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:N/A:N", "version": "3.1" } } ], "problemTypes": [ { "descriptions": [ { "cweId": "CWE-79", "description": "CWE-79: Improper Neutralization of Input During Web Page Generation (\u0027Cross-site Scripting\u0027)", "lang": "en", "type": "CWE" } ] } ], "providerMetadata": { "dateUpdated": "2024-02-22T21:52:26.193Z", "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "shortName": "GitHub_M" }, "references": [ { "name": "https://github.com/HumanSignal/label-studio/security/advisories/GHSA-6xv9-957j-qfhg", "tags": [ "x_refsource_CONFIRM" ], "url": "https://github.com/HumanSignal/label-studio/security/advisories/GHSA-6xv9-957j-qfhg" }, { "name": "https://github.com/HumanSignal/label-studio/pull/5232", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/HumanSignal/label-studio/pull/5232" }, { "name": "https://github.com/HumanSignal/label-studio/commit/5df9ae3828b98652e9fa290a19f4deedf51ef6c8", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/HumanSignal/label-studio/commit/5df9ae3828b98652e9fa290a19f4deedf51ef6c8" }, { "name": "https://github.com/HumanSignal/label-studio/releases/tag/1.11.0", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/HumanSignal/label-studio/releases/tag/1.11.0" } ], "source": { "advisory": "GHSA-6xv9-957j-qfhg", "discovery": "UNKNOWN" }, "title": "Label Studio vulnerable to Cross-site Scripting if `\u003cChoices\u003e` or `\u003cLabels\u003e` are used in labeling config " } }, "cveMetadata": { "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "assignerShortName": "GitHub_M", "cveId": "CVE-2024-26152", "datePublished": "2024-02-22T21:52:26.193Z", "dateReserved": "2024-02-14T17:40:03.690Z", "dateUpdated": "2024-08-14T15:32:05.054Z", "state": "PUBLISHED" }, "dataType": "CVE_RECORD", "dataVersion": "5.1", "meta": { "nvd": "{\"cve\":{\"id\":\"CVE-2024-26152\",\"sourceIdentifier\":\"security-advisories@github.com\",\"published\":\"2024-02-22T22:15:47.310\",\"lastModified\":\"2024-02-23T02:42:54.547\",\"vulnStatus\":\"Awaiting Analysis\",\"descriptions\":[{\"lang\":\"en\",\"value\":\"### Summary\\nOn all Label Studio versions prior to 1.11.0, data imported via file upload feature is not properly sanitized prior to being rendered within a [`Choices`](https://labelstud.io/tags/choices) or [`Labels`](https://labelstud.io/tags/labels) tag, resulting in an XSS vulnerability.\\n\\n### Details\\nNeed permission to use the \\\"data import\\\" function. This was reproduced on Label Studio 1.10.1.\\n\\n### PoC\\n\\n1. Create a project.\\n![Create a project](https://github.com/HumanSignal/label-studio/assets/3943358/9b1536ad-feac-4238-a1bd-ca9b1b798673)\\n\\n2. Upload a file containing the payload using the \\\"Upload Files\\\" function.\\n![2 Upload a file containing the payload using the Upload Files function](https://github.com/HumanSignal/label-studio/assets/3943358/26bb7af1-1cd2-408f-9adf-61e31a5b7328)\\n![3 complete](https://github.com/HumanSignal/label-studio/assets/3943358/f2f62774-1fa6-4456-9e6f-8fa1ca0a2d2e)\\n\\nThe following are the contents of the files used in the PoC\\n```\\n{\\n \\\"data\\\": {\\n \\\"prompt\\\": \\\"labelstudio universe image\\\",\\n \\\"images\\\": [\\n {\\n \\\"value\\\": \\\"id123#0\\\",\\n \\\"style\\\": \\\"margin: 5px\\\",\\n \\\"html\\\": \\\"\u003cimg width=\u0027400\u0027 src=\u0027https://labelstud.io/_astro/images-tab.64279c16_ZaBSvC.avif\u0027 onload=alert(document.cookie)\u003e\\\"\\n }\\n ]\\n }\\n}\\n```\\n\\n3. Select the text-to-image generation labeling template of Ranking and scoring\\n![3 Select the text-to-image generation labelling template for Ranking and scoring](https://github.com/HumanSignal/label-studio/assets/3943358/f227f49c-a718-4738-bc2a-807da4f97155)\\n![5 save](https://github.com/HumanSignal/label-studio/assets/3943358/9b529f8a-8e99-4bb0-bdf6-bb7a95c9b75d)\\n\\n4. Select a task\\n![4 Select a task](https://github.com/HumanSignal/label-studio/assets/3943358/71856b7a-2b1f-44ea-99ab-fc48bc20caa7)\\n\\n5. Check that the script is running\\n![5 Check that the script is running](https://github.com/HumanSignal/label-studio/assets/3943358/e396ae7b-a591-4db7-afe9-5bab30b48cb9)\\n\\n### Impact\\nMalicious scripts can be injected into the code, and when linked with vulnerabilities such as CSRF, it can cause even greater damage. In particular, It can become a source of further attacks, especially when linked to social engineering.\\n\"},{\"lang\":\"es\",\"value\":\"### Resumen En todas las versiones de Label Studio anteriores a la 1.11.0, los datos importados mediante la funci\u00f3n de carga de archivos no se desinfectan adecuadamente antes de procesarse dentro de [`Choices`](https://labelstud.io/tags/choices) o [`Labels`](https://labelstud.io/tags/labels), lo que genera una vulnerabilidad XSS. ### Detalles Necesita permiso para utilizar la funci\u00f3n \\\"importaci\u00f3n de datos\\\". Esto fue reproducido en Label Studio 1.10.1. ### PoC 1. Cree un proyecto. ![Crear un proyecto](https://github.com/HumanSignal/label-studio/assets/3943358/9b1536ad-feac-4238-a1bd-ca9b1b798673) 2. Cargue un archivo que contenga la carga \u00fatil usando la funci\u00f3n \\\"Cargar archivos\\\" . ![2 Cargue un archivo que contenga la carga \u00fatil usando la funci\u00f3n Cargar archivos](https://github.com/HumanSignal/label-studio/assets/3943358/26bb7af1-1cd2-408f-9adf-61e31a5b7328) ![3 completo]( https://github.com/HumanSignal/label-studio/assets/3943358/f2f62774-1fa6-4456-9e6f-8fa1ca0a2d2e) Los siguientes son los contenidos de los archivos utilizados en el PoC ``` { \\\"data\\\": { \\\" Prompt\\\": \\\"imagen del universo de labelstudio\\\", \\\"images\\\": [ { \\\"value\\\": \\\"id123#0\\\", \\\"style\\\": \\\"margin: 5px\\\", \\\"html\\\": \\\"\\\" } ] } } ``` 3. Seleccione la plantilla de etiquetado de generaci\u00f3n de texto a imagen de Clasificaci\u00f3n y puntuaci\u00f3n![3 Seleccione la plantilla de etiquetado de generaci\u00f3n de texto a imagen para Clasificaci\u00f3n y puntuaci\u00f3n](https://github.com/HumanSignal/label-studio/assets/3943358/f227f49c-a718-4738-bc2a-807da4f97155)![ 5 guardar](https://github.com/HumanSignal/label-studio/assets/3943358/9b529f8a-8e99-4bb0-bdf6-bb7a95c9b75d) 4. \u00a1Seleccione una tarea! [4 Seleccione una tarea](https://github.com/HumanSignal/label-studio/assets/3943358/71856b7a-2b1f-44ea-99ab-fc48bc20caa7) 5. \u00a1Compruebe que el script se est\u00e9 ejecutando! [5 Compruebe que el script se est\u00e9 ejecutando](https://github.com/ HumanSignal/label-studio/assets/3943358/e396ae7b-a591-4db7-afe9-5bab30b48cb9) ### Impacto Se pueden inyectar scripts maliciosos en el c\u00f3digo y, cuando se vinculan con vulnerabilidades como CSRF, pueden causar un da\u00f1o a\u00fan mayor. En particular, puede convertirse en una fuente de nuevos ataques, especialmente cuando se vincula a la ingenier\u00eda social.\"}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"security-advisories@github.com\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:N/A:N\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"REQUIRED\",\"scope\":\"CHANGED\",\"confidentialityImpact\":\"LOW\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"NONE\",\"baseScore\":4.7,\"baseSeverity\":\"MEDIUM\"},\"exploitabilityScore\":2.8,\"impactScore\":1.4}]},\"weaknesses\":[{\"source\":\"security-advisories@github.com\",\"type\":\"Secondary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-79\"}]}],\"references\":[{\"url\":\"https://github.com/HumanSignal/label-studio/commit/5df9ae3828b98652e9fa290a19f4deedf51ef6c8\",\"source\":\"security-advisories@github.com\"},{\"url\":\"https://github.com/HumanSignal/label-studio/pull/5232\",\"source\":\"security-advisories@github.com\"},{\"url\":\"https://github.com/HumanSignal/label-studio/releases/tag/1.11.0\",\"source\":\"security-advisories@github.com\"},{\"url\":\"https://github.com/HumanSignal/label-studio/security/advisories/GHSA-6xv9-957j-qfhg\",\"source\":\"security-advisories@github.com\"}]}}" } }
Loading...
Loading...
Sightings
Author | Source | Type | Date |
---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.