Come funziona l’XSS (cross-site scripting)
Con il termine cross-site scripting si indica un attacco informatico che ha come obiettivo quello di modificare una pagina web mentre viene visualizzata nel browser dell’utente, “iniettando” degli script dannosi che poi infettano il dispositivo dell’utente. In questo tipo di attacco, quindi, il sito web è perfettamente sicuro sul lato server, mentre presenta dei problemi sul lato client. Questa sua particolare caratteristica rende il cross-site scripting molto pericoloso, perché difficile da individuare.
Quando un browser invia una richiesta di visualizzazione di un sito a un server, il server invia le informazioni necessarie al browser; queste informazioni vengono poi periodicamente aggiornate. Quando viene eseguito un attacco XSS, la comunicazione tra server e client viene intercettata da un hacker, il quale inserisce uno script dannoso tra le informazioni inviate per la visualizzazione del sito web. Il browser viene sostanzialmente ingannato a ritenere sicura la fonte di questo malware, e procede quindi alla sua esecuzione. Una volta eseguito, a seconda del tipo di malware, si possono verificare furti di dati, di informazioni personali, ecc.
Quali sono i tipi di attacchi XSS
Gli attacchi di cross-site scripting vengono solitamente suddivisi in tre gruppi.
XSS riflesso
Chiamato anche attacco XSS non resistente, è il tipo di attacco XSS più diffuso. Questo attacco agisce quando un utente invia una richiesta a un server di contenuti: invece di ricevere la risposta legittima dal server, l’utente riceve una risposta riflessa contenente lo script dannoso, che può mostrarsi ad esempio come un semplice messaggio di errore. L’utente a questo punto viene portato a cliccare su un link o un pulsante, che avvia l’esecuzione dello script e il dispositivo dell’utente viene così infettato.
XSS Persistente
Chiamato anche attacco XSS costante, si tratta di un attacco che colpisce prima di tutto il server di contenuti, da cui poi il malware viene inviato all’utente. Questo tipo di attacco avviene quando un sito non è sufficientemente sicuro e un hacker riesce a salvare il suo script dannoso direttamente sul server. Questo script viene quindi inviato all’utente, che lo riterrà sicuro per via della sua provenienza conosciuta.
XSS basato su DOM
Chiamato anche attacco XSS locale, è un attacco che agisce direttamente sul client, quindi sul computer dell’utente. In questo caso, il server web non viene coinvolto in alcun modo, ma l’utente viene reindirizzato, tramite un URL fasullo, a un sito malevolo contenente uno script dannoso. Questo tipo di attacco, per avere effetto, necessita di un’azione da parte dell’utente, il quale deve attivamente cliccare su un link malevolo.
Come proteggersi dagli attacchi XSS
Proteggersi dagli attacchi informatici è di per sé un’operazione non semplicissima e proteggersi dal cross-site scripting è ancora più complicato. Poiché nella maggior parte dei casi la vulnerabilità si trova sul server remoto e non sul client, l’utente non ha possibilità di difendersi all’origine. Per proteggere i propri dispositivi e i propri dati, quindi, è necessario ricorrere a soluzioni diverse.
- Controllare gli URL: quando si riceve un link per raggiungere un sito, verificare sempre che si tratti del sito reale e non di una copia malevola. Gli URL manipolati dagli hacker sono spesso molto simili a quelli reali e differiscono magari anche solo per una lettera: bisogna quindi fare molta attenzione.
- Controllare il codice dei siti: quando si visita un sito, è possibile visualizzare il codice che lo costituisce. Chi ha qualche conoscenza al riguardo può essere in grado di riconoscere se sono presenti script dannosi, ed evitare così di infettare il proprio computer.
- Aggiornare il browser: la maggior parte dei browser più usati dispongono di apposite funzionalità che permettono di riconoscere gli script dannosi e di impedirne l’esecuzione. È però fondamentale che i browser siano sempre aggiornati all’ultima versione.
- Disattivare il supporto agli script: molti siti utilizzano particolari linguaggi (come JavaScript) che permettono di inserire script direttamente all’interno delle pagine web, ad esempio per visualizzare contenuti interattivi. È però possibile disattivare l’esecuzione di tutti gli script, quindi anche di quelli malevoli: in questo modo la navigazione risulta meno piacevole, ma più sicura.
- Usare una VPN online: la funzionalità Threat Protection Pro di NordVPN offre una protezione pensata apposta per difendersi dagli attacchi cross-site scripting. Grazie a un elenco sempre aggiornato dei siti malevoli, i potenziali rischi vengono segnalati prima che l’utente possa accidentalmente eseguire script dannosi.
Proteggiti adeguatamente. Cifra il tuo traffico e rimani al sicuro.