DOM XSS memorizzato
Ho trovato una vulnerabilità Stored DOM XSS durante il test dell'applicazione web. L'applicazione online dispone di un'area in cui gli utenti possono inserire dati da archiviare nel database e presentare nelle pagine successive, dove si trova la vulnerabilità.
Un utente malintenzionato può utilizzare questo difetto per eseguire codice arbitrario nel browser della vittima e potenzialmente rubare informazioni sensibili o compromettere completamente la macchina della vittima.
Quando un utente immette un input accuratamente costruito in un campo che appare nelle pagine successive del programma, la vulnerabilità viene attivata.
L'input non viene adeguatamente disinfettato prima di essere salvato nel database e mostrato sui siti successivi, consentendo a un utente malintenzionato di inserire codice HTML e JavaScript arbitrario.
Questo codice viene quindi eseguito dal browser della vittima quando accede al sito Web vulnerabile, consentendo all'attaccante di rubare dati sensibili o eseguire attività per conto della vittima.
Passi per riprodurre:
- Accedere all'applicazione Web come utente normale
- Passare alla sezione in cui i dati vengono immessi e archiviati nel database
- Inserisci il seguente payload in un campo di testo:
"><img src="x" onerror="alert(1)">
6. Verrà visualizzato il messaggio di avviso "1".
Verifica teorica:
Qui sto fornendo un laboratorio per esercitarsi in dom xss memorizzato.
Impatto:
Questa vulnerabilità può essere utilizzata da un utente malintenzionato per ottenere dati sensibili come password utente, token di sessione e dati privati.
Oltre a fare cose come trasferire denaro, effettuare acquisti non autorizzati o modificare le impostazioni dell'account per conto della vittima, possono usarlo per farlo. Poiché fornisce a un utente malintenzionato l'intero accesso all'account della vittima, questa vulnerabilità ha gravi conseguenze.
Raccomandazioni:
- Disinfetta tutto l'input dell'utente prima di memorizzarlo nel database o visualizzarlo su altre pagine dell'applicazione.
- Implementa le intestazioni CSP (Content Security Policy) per impedire l'esecuzione di script inline e limitare le fonti di script esterni.
- Eseguire regolari valutazioni della sicurezza dell'applicazione Web per identificare e affrontare eventuali altre vulnerabilità.

![Che cos'è un elenco collegato, comunque? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































