CVE-2025-67730 – Cross-Site Scripting (XSS) Memorizzato
Panoramica
CVE ID: CVE-2025-67730
Tipo di vulnerabilità: Cross-Site Scripting (XSS) Memorizzato
Gravità: Media–Alta (dipende dal contesto)
Questa vulnerabilità permetteva a utenti autenticati di iniettare HTML e JavaScript dannosi nei campi descrizione dei moduli di Lavoro, Corso e Batch. Il payload iniettato veniva eseguito automaticamente nel browser di qualsiasi utente che successivamente visualizzasse il Lavoro, Corso o Batch interessato.
Componenti Affetti
- Campo descrizione Lavoro
- Campo descrizione Corso
- Campo descrizione Batch
Impatto
- Esecuzione di JavaScript arbitrario nei browser delle vittime
- Hijacking di sessione
- Furto di credenziali
- Compromissione dell'account (a seconda del livello di privilegi)
- Manipolazione del DOM e phishing
Poiché il payload è memorizzato, l'attacco persiste e colpisce ogni utente che visualizza il contenuto compromesso.
Scenario di Attacco
- L'attaccante accede con un account utente valido.
- L'attaccante crea o modifica un Lavoro, Corso o Batch.
- JavaScript dannoso viene inserito nel campo descrizione.
- Il payload viene salvato nel database.
- Qualsiasi utente che apre la pagina interessata attiva il payload.
Prova di Concetto (PoC)
">
Passaggi per riprodurre:
- Accedi come qualsiasi utente autenticato.
- Naviga alla pagina di creazione o modifica di Lavoro / Corso / Batch.
- Incolla il payload nel campo descrizione.
- Salva il modulo.
- Apri il Lavoro / Corso / Batch creato.
- Il JavaScript viene eseguito nel browser.
Causa Principale
- Sanitizzazione HTML lato server assente o insufficiente
- Rendering non sicuro dell'input fornito dall'utente
- Mancanza di codifica dell'output nei template
Correzione / Mitigazione
Patch Ufficiale
- Corretto nella versione:
2.42.0
Miglioramenti di Sicurezza Implementati
- Sanitizzazione HTML adeguata in input
- Codifica sicura dell'output prima del rendering
- Restrizione di tag e attributi eseguibili
Best Practice Raccomandate
- Sanitizzare sempre l'input utente lato server
- Applicare la codifica dell'output in base al contesto (HTML, JS, URL)
- Utilizzare un sanitizzatore HTML affidabile (es. DOMPurify)
- Implementare una Content Security Policy (CSP)
Cronologia
- Segnalato da: Dharan Raghunathan
- Stato: Risolto
- Rilascio della patch: Versione 2.42.0
Riconoscimento
Questo problema è stato divulgato responsabilmente da Dharan Raghunathan.
Riferimenti
Disclaimer
Questo documento è destinato esclusivamente a scopi educativi e difensivi.