CVE-2024-57522 - Vulnerabilità XSS Memorizzata in Users.php - SourceCodester Packers and Movers Management System 1.0
Descrizione
Questo repository contiene una Proof of Concept (PoC) per una vulnerabilità Cross-Site Scripting (XSS) Memorizzata in Packers and Movers Management System 1.0 di SourceCodester. La vulnerabilità è presente nell'endpoint Users.php, dove un attaccante può iniettare uno script dannoso nel campo username o name durante la creazione dell'utente. Lo script viene poi memorizzato nel database ed eseguito quando un amministratore visualizza la pagina dell'elenco utenti, causando potenziali azioni dannose.
Dettagli della Vulnerabilità
- CVE-2024-57522
- Prodotto interessato: Packers and Movers Management System 1.0
- Componente interessato: endpoint Users.php
- Tipo di attacco: Remoto
- Impatto: Esecuzione di script dannosi, dirottamento della sessione, phishing, reindirizzamenti dannosi
- Implicazioni per la sicurezza: L'attaccante può iniettare ed eseguire codice JavaScript arbitrario nel contesto del browser di un amministratore. Lo script iniettato rimane persistente, consentendo dirottamento della sessione, phishing e altre attività dannose quando un amministratore visualizza la pagina dell'elenco utenti.
Prova di Concetto (PoC)
Questo repository include un video PoC, CVE-2024-57522.mkv, che dimostra come un attaccante possa sfruttare la vulnerabilità XSS. Il PoC mostra come un attaccante possa creare un nuovo utente amministratore con un payload nel campo name (ad es., <script>alert(1);</script>). Quando l'amministratore visita la pagina dell'elenco utenti, lo script dannoso viene eseguito, mostrando un alert con il messaggio "1."
Vettori di Attacco
- L'attaccante realizza un exploit CSRF per creare un utente amministratore con uno script dannoso iniettato nel campo name. Utilizzando CVE-2024-57523
- Lo script dannoso viene memorizzato nel database ed eseguito quando un amministratore visita la pagina dell'elenco utenti.
Raccomandazioni di Mitigazione
Per mitigare questa vulnerabilità, si raccomandano le seguenti misure di sicurezza:
- Protezione CSRF: Implementare token CSRF in tutti i moduli che eseguono azioni di modifica dello stato, come la creazione di utenti, per prevenire richieste non autorizzate.
- Validazione e Sanificazione degli Input: Sanificare e sottoporre a escaping adeguatamente gli input degli utenti, soprattutto per campi come username o name, per prevenire l'iniezione di script dannosi.
- Content Security Policy (CSP): Implementare una CSP per ridurre il potenziale impatto delle vulnerabilità XSS limitando le fonti da cui gli script possono essere caricati.
- Escaping dei Contenuti Generati dagli Utenti: Assicurarsi che i contenuti generati dagli utenti siano validati e sottoposti a escaping prima di essere renderizzati nel browser per prevenire l'esecuzione di script.
Versioni Interessate
- Packers and Movers Management System 1.0
Scopritore
- Madhav Shah - Ricercatore di Sicurezza
Riferimenti