Prosegue il nostro viaggio riguardante le principali minacce che possono colpire i PC e più, in generale, tutti i dispositivi informatici.
Oggi, ci soffermiamo su una pericolosa tipologia di attacco definita XSS (Cross-Site Scripting).
Come funziona
Queste tipo di offensive sono dirette al codice (detto anche script) di una pagina web in esecuzione nel browser dell’utente e avvengono senza attaccare direttamente il server del sito web. Una volta colpito, il browser viene infettato con degli script dannosi che cercheranno di danneggiare il computer.
Difatti, i siti web memorizzano dati e inviano informazioni al browser in ogni momento ed in questo contesto gli attacchi XSS si verificano quando fonti non affidabili, sfruttando vulnerabilità presenti nei siti web inviano ai browser contenuti dannosi per gli utenti, con l’obiettivo di impadronirsi di dati o di danneggiare il PC.
Quando, ad esempio, un utente effettua una ricerca online, il sito web solitamente invia informazioni al browser sotto forma di risultati di ricerca. In un attacco XSS, queste informazioni possono contenere malware in grado di rubare dati. Considerato che quasi ogni sito web richiede la memorizzazione e l’invio di dati ai browser, l’attacco XSS rappresenta la vulnerabilità più comune in termini di protezione esistente oggi nei software.
Per fare un esempio maggiormente pratico, si potrebbe immaginare di andare in un cinema la cui biglietteria è mal gestita a tal punto che, acquistato il biglietto, ci viene fornito un foglietto contenente le nostre generalità. Successivamente qualsiasi altra persona potrebbe, al posto di pagare il biglietto, indicare il nostro nome e cognome fingendo di aver perso il biglietto e chiedendo di averne uno nuovo.
Paragoniamo ora questo caso pratico a quello in cui ci colleghiamo al sito di home banking o di qualsiasi altro servizio pubblico o privato al quale siamo già registrati e che normalmente utilizziamo per i nostri scopi privati. In questa situazione è facile immaginare quali potrebbero essere le conseguenze devastanti.
Tipi di attacchi
Ecco una breve lista e spiegazione dei diversi tipi di XSS, utile sia per i gestori di siti che per i visitatori.
-
Riflessi
In questo primo caso, richiamando un URL manipolato o inviando un modulo già pronto, lo script dannoso viene inviato al web server, che lo rimanda nuovamente al client senza verificarlo. Il codice malevolo non viene salvato sul server ed esiste solo temporaneamente nella produzione del sito attraverso il client danneggiato. In tal caso gli obiettivi più diffusi sono siti web dinamici o applicazioni e-mail.
Esempio: nell’XSS l’aggressore colloca il suo script in un link già pronto. In seguito, tenta di inoltrare il link (soprattutto via e-mail). Il codice dannoso contenuto viene attivato solo nel caso in cui l’utente apre il link ricevuto e a quel punto, gli si presenta per esempio una schermata di login simile a quella del suo online banking. Invece di mandare i dati al server della banca, lo script fa in modo che avvenga una deviazione nell’indirizzo che l’hacker ha precedentemente definito.
-
Persistenti
Con questo XSS, definito anche costante, gli script dannosi vengono salvati sul server e, ad ogni chiamata, consegnate tramite il client. A tale scopo queste applicazioni web vengono selezionate per l’attacco, salvano i dati utente lato server e in seguito li consegnano senza verifica o codificazione. Particolarmente soggetti a questo tipo di scripting sono i blog e i forum.
Esempio: in un forum gli interventi degli utenti vengono salvati in un database, spesso senza un sufficiente controllo. Questa è l’occasione giusta per gli hacker, che aggiungono ad un post normale uno script dannoso. Gli utenti ignari ricevono il relativo link del post per e-mail o arrivano in modo casuale alla voce corrispondente ed eseguono lo script aprendolo.
-
Basati su DOM
Questo tipo di attacco viene chiamato anche XSS locale. Con l’inserimento di un URL manipolato, il codice dannoso viene eseguito senza verifica attraverso una vulnerabilità in uno script del client. Contrariamente ad un XSS persistente e riflesso, il server web non prende parte a questo processo. Di conseguenza anche i siti statici, che supportano i relativi linguaggi di scripting, vengono danneggiati tramite queste varianti di scripting.
Esempio: lo scripting basato su DOM, come quello riflesso, presuppone che il link venga aperto dall’utente. Dopo l’apertura del link lo script legge sulla pagina web il valore dell’argomento dell’URL ed esegue poi lo script contenuto al suo interno. In questo modo possono essere per esempio rubati i cookie di sessione.
Riconoscere, rimuovere e difendersi da un Cross-Site Scripting
Purtroppo, ciascun browser non è in grado di riconoscere l’effettiva affidabilità di uno script, pertanto esegue in automatico qualsiasi tipo venga ricevuto. Ciò significa che anche gli script dannosi possono accedere a qualsiasi informazione sensibile memorizzata nel browser, oppure salvata sulla pagina web. Ciò rende gli attacchi XSS quasi impossibili da riconoscere.
Per questo, è responsabilità del proprietario del sito web identificare e rimuovere le vulnerabilità XSS, poiché è quello il posto in cui può nascondersi il codice dannoso, pronto a infettare gli ignari visitatori.
Di conseguenza, chiedere alle persone di proteggersi evitando i siti web sospetti non funziona, considerato che queste vulnerabilità interessano tutti i siti web, fidati e non fidati. Fortunatamente, esistono strumenti online scaricabili che consentono di analizzare i siti web alla ricerca di vulnerabilità agli attacchi XSS.
Al contempo, sempre dal punto di vista di ciascun utente, per proteggersi è necessario cercare di seguire questi consigli basilari.
- Installare un software antivirus di qualità nel proprio computer.
- Impostare l’aggiornamento automatico dei software.
- Scaricare uno strumento di analisi in grado di verificare la presenza di vulnerabilità nel codice di un sito web.
- Evitare i siti web di dubbia reputazione.
Anche in questo appuntamento abbiamo esaminato un altro pericolo che minaccia tutti gli utenti del web e del digitale.
Sei interessato ad altre notizie e novità riguardanti il mondo della sicurezza informatica e dell’ethical hacking? Continua a seguire il nostro blog e, per diventare un esperto, scopri il corso di Ethical Hacker & Security Manager erogato da Musa Formazione.
Al prossimo articolo!