Abbiamo voluto dedicare un ampio spazio all’argomento “Web Exploit”, un tema che ogni responsabile IT dovrebbe governare con consapevolezza; pertanto, pubblicheremo due articoli complementari.
» Parte 1: l’articolo presente
» Parte 2: “Rimanete sintonizzati.”
1. Vulnerabilità, exploit web, patch
Al fine di comprendere cosa sono gli exploit web e a cosa servono, è importante partire dal concetto di “vulnerabilità”, che, in un certo senso, è il fattore abilitante per l’exploit e ne consente l’utilizzo. Pertanto, vulnerabilità ed exploit sono strettamente correlati: affinché un exploit web agisca, deve esserci una o più vulnerabilità.
Le vulnerabilità (chiamate anche “bug”) sono i difetti riscontrati all’interno del software: ogni software è – per definizione – imperfetto, proprio perché creato da esseri umani. Per dare un’idea della scala: il sistema operativo Microsoft Windows contiene più di 50 milioni di righe di codice, l’insieme di tutti i servizi Google, fino a 40 volte tanto quanto Google (2 miliardi di righe).
È inevitabile che all’interno di un software così complesso si nascondano alcuni difetti, più o meno gravi. Questi “difetti” nella sicurezza di un programma sono, in realtà, chiamati vulnerabilità e possono essere sfruttati per portare un attacco al sistema informatico. Praticamente ogni attacco utilizza vulnerabilità (che si tratti del sistema informatico o del fattore umano) per entrare nel sistema.
Per comprendere l’importanza che una vulnerabilità può avere – o potrebbe non avere – dobbiamo valutare quanto sia effettivamente sfruttabile. In altre parole, una vulnerabilità pone un rischio solo se la minaccia è in grado di sfruttarla al fine di eseguire un attacco.
In realtà, non tutte le vulnerabilità possono essere sfruttate per la distribuzione di malware. Alcune potrebbero non essere sfruttabili perché i sistemi di sicurezza impediscono a qualcuno di utilizzarle, o il loro sfruttamento potrebbe essere troppo costoso rispetto ai risultati che si otterrebbero.
Una vulnerabilità non ancora scoperta o che è nota solo a pochi, ma sconosciuta agli sviluppatori di software (che quindi hanno “zero giorni” per ripararla), è chiamata “Vulnerabilità Zero-Day.” Queste sono le più temute perché se un aggressore – e solo lui – la conosce, avrebbe un’arma in mano capace di fare gravi danni. Gli exploit Zero-Day sfruttano proprio questi difetti.
Quando la vulnerabilità diventa nota, viene chiamata “n-day”, e, a questo punto, di solito viene riparata da un aggiornamento del software. Tale aggiornamento di sicurezza è chiamato “patch“. Quando la patch viene messa a disposizione (dal produttore del software), la vulnerabilità può essere resa innocua, ma solo se la patch viene installata, e questo – come vedremo – potrebbe non accadere, lasciando ancora il sistema vulnerabile.
Le vulnerabilità note sono classificate come “Common Vulnerabilities and Exposures“, abbreviate come CVE (“vulnerabilità e esposizioni comuni”). La Mitre Corporation“, un’agenzia finanziata dai Federally Funded Research and Development Centers (FFRDCs) del Dipartimento della Sicurezza Interna degli Stati Uniti, mantiene questa classificazione aggiornata.
Ogni vulnerabilità è catalogata nel suddetto sito MITRE con la classificazione definita come: CVE – anno – numero sequenziale.
Ad esempio: CVE-2019-0708 è la famosa vulnerabilità che interessa il Windows Remote Desktop Protocol (RDP) che può essere sfruttata da un attacco Remote Code Execution (RCE) dall’exploit web Bluekeep, che discuteremo in seguito.
Le vulnerabilità sono classificate in base al livello (punteggio) di gravità.
Uno dei più utilizzati è il Common Vulnerability Scoring System (CVSS). Si tratta di un metodo per identificare le caratteristiche principali di una vulnerabilità e produrre un punteggio numerico che rifletta la sua gravità. Il punteggio numerico può quindi essere tradotto in una rappresentazione qualitativa (come bassa, media, alta o critica) al fine di aiutare le organizzazioni a valutare e prioritizzare adeguatamente i loro processi di gestione delle vulnerabilità.
CVSS è ormai uno standard pubblico utilizzato da organizzazioni di tutto il mondo. Il suo utilizzo da parte delle agenzie statunitensi è stato raccomandato dal National Institute of Standards and Technology (NIST) in “NIST Special Publication (SP) 800-51, Use of the CVE Vulnerability Naming Scheme”, inizialmente pubblicato nel 2002.
Qui di seguito, abbiamo riprodotto la tabella CVSS v3.0 Ratings“, tratta dal sito NVD del NIST, dove si può vedere che il livello di gravità di una vulnerabilità può variare da un punteggio di 0,0 fino a 10,0 per le più critiche.

Un comodo Calcolatore Common Vulnerability Scoring System per calcolare il punteggio è disponibile anche sullo stesso sito.
Un Exploit è un codice (programma) creato per sfruttare una vulnerabilità al fine di eseguire un attacco a un sistema informatico: lo “sfruttamento” informatico è precisamente lo sfruttamento di una vulnerabilità.
Se l’exploit è creato per una vulnerabilità zero-day, stiamo parlando di exploit zero-day. Questi sono ovviamente i più temuti perché non c’è ancora alcuna patch che abbia chiuso quella vulnerabilità.
Solo l’aggressore ha scoperto quella vulnerabilità, e solo lui sa come sfruttarla. Per rispondere all’attacco, lo sviluppatore del software deve creare e rilasciare una patch, che sarà in grado di proteggere solo coloro che la installano, ovviamente solo dopo il suo rilascio e dopo che la vulnerabilità è diventata nota.
È proprio per questo che le vulnerabilità zero-day possono avere un enorme valore commerciale: le più preziose sono quotate fino a 2,5-3 milioni di dollari. Possiamo vederlo sul sito web della società Zerodium“, fondata da Chaouky Bekrar, che in precedenza aveva creato Vupen e che quota una vulnerabilità zero-click per Android fino a 2,5 milioni di dollari.
Ci sono molte aziende che – più o meno trasparentemente – commerciano queste vulnerabilità.
Queste includono Crowdfense, un’azienda con sede a Dubai guidata dall’italiano Andrea Zapparoli Manzoni (membro di Clusit), che ha lanciato il suo primo “Bug Bounty Program” nell’aprile 2018, stanziando un budget di 10 milioni di dollari per l’acquisto di vulnerabilità zero-day. Nel 2019, il programma è stato ampliato con ulteriori 15 milioni di dollari.
Il prezzo riconosciuto per ogni singola segnalazione di vulnerabilità varia da 100.000 a 3 milioni di dollari americani. Il programma è rivolto ai ricercatori di software e ha principalmente forze di polizia, intelligence e governi come clienti. Lo scopo dichiarato di Crowdfense è rendere trasparente e legale il mercato dell’acquisto e della vendita di vulnerabilità e exploit.
>> FlashStart ti protegge da una vasta gamma di minacce e blocca l’accesso a siti dannosi ? Richiedi un preventivo o tprovalo ora
2. Kit di exploit
Il mercato dei web exploit è diventato industrializzato e sempre più articolato. Kit di exploit sono emersi: si tratta di strumenti software che consentono di automatizzare lo sfruttamento di una vulnerabilità ed eseguire codice dannoso.
Grazie alla loro natura altamente automatizzata, i kit di exploit sono diventati uno dei metodi più popolari per distribuire malware di massa o strumenti di accesso remoto (RAT) da parte di gruppi criminali, riducendo la barriera di ingresso per gli attaccanti.
I creatori dei kit di exploit offrono questi programmi sul Web e, soprattutto, sul Darkweb, insieme a un’interfaccia di gestione e un insieme di vulnerabilità attaccabili, insieme a un insieme di caratteristiche che rendono gli attacchi informatici semplici ed efficaci e, nella maggior parte dei casi, anche automatizzati.
Quindi, oggi diventare un criminale informatico è facile, anche se non si hanno grandi competenze tecniche: si possono “noleggiare” kit di exploit dalle piattaforme che li gestiscono: questo è il Cybercrime-as-a-service fenomeno.
Tra i kit di exploit storici e più famosi possiamo menzionare: Angler, Neutrino, Nuclear. Questi sono ormai superati, ma avevano una storia importante negli anni precedenti e sono stati spesso utilizzati per trasmettere ransomware.
Molti kit di exploit web sono costruiti per sfruttare vulnerabilità in programmi specifici: il molto mirato Adobe Flash Player, un plug-in del browser, ampiamente utilizzato fino a pochi anni fa e noto per essere una “miniera” di vulnerabilità, che sono state sfruttate, ad esempio, da Neutrino (e non solo!). Fortunatamente, dalla fine del 2020, Adobe stesso l’ha abbandonato.
Ora che Flash non è più in uso e i browser moderni supportano gli aggiornamenti automatici (il browser più popolare Chrome riceve in media un aggiornamento a settimana!), i kit di exploit sono complessivamente meno efficaci.
Nonostante il fatto che le misure di sicurezza siano migliorate, soprattutto per quanto riguarda la navigazione Web, alcuni kit di exploit Web continuano ad essere strumenti utilizzati per la criminalità informatica.
Diamo un’occhiata a un esempio di un exploit in azione in un attacco soprannominato “drive-by-download” (o “attraverso”):
» L’exploit inizia da un sito web compromesso. La pagina compromessa reindirizzerà il traffico web a un’altra pagina. All’interno della pagina di destinazione è presente un codice (iniettato dall’attaccante che ha compromesso il sito) che profila il dispositivo della vittima per eventuali applicazioni vulnerabili basate su browser. Se il dispositivo è completamente aggiornato e protetto, l’exploit si ferma. Se, tuttavia, ci sono vulnerabilità, il sito web compromesso reindirizza silenziosamente il traffico di rete verso l’exploit.» L’exploit utilizza un’applicazione vulnerabile per eseguire segretamente malware su un host. Le applicazioni più mirate sono Adobe Flash Player, Java Runtime Environment, Microsoft Silverlight. Può anche utilizzare il browser web: l’exploit web viene inviato come codice all’interno del traffico web.» Se l’exploit ha successo, invia un payload per infettare l’host. Il payload può essere un downloader di file che recupera altro malware o il malware stesso. Nei kit di exploit più sofisticati, il payload viene inviato attraverso la rete come binario crittografato che, una volta arrivato sull’host della vittima, viene decriptato ed eseguito. Il payload più comune oggi è il ransomware, ma ce ne sono molti altri, inclusi malware botnet, infostealers e Trojan bancari.» In conclusione, l’exploit web è lo strumento incaricato di essere il vettore dell’attacco effettivo (payload).
3. Web exploit: alcuni casi famosi e dove trovarli
Riviamo la storia di alcuni famosi web exploit. Inizieremo con alcuni casi storici e ora inattivi.
Neutrino è stato uno dei kit di exploit più popolari, a partire dal 2016. Ha sfruttato principalmente vulnerabilità Flash note come CVE-2016-4117 e CVE-2016-1019. È stato utilizzato come vettore per diffondere alcuni tipi popolari di ransomware come Crypwall, Cerber e Locky.
Angler, oltre alle croniche vulnerabilità Flash, ha sfruttato quelle in Microsoft Silverlight, come CVE-2016-1034. Questo è stato anche utilizzato come vettore per diffondere determinati tipi di ransomware.
Esaminiamo ora alcuni dei più recenti e famosi web exploit responsabili di attacchi storici.
>> Con FlashStart puoi bloccare contenuti indesiderati o inappropriati: richiedi un preventivo o tprovalo ora
In pochi giorni, il ransomware WannaCry ha colpito in 150 paesi in tutto il mondo, con più di 300.000 attacchi rilevati. Uno dei paesi più colpiti è stato il Regno Unito, dove WannaCry ha bloccato almeno venticinque ospedali e messo in crisi il National Health Service (NHS).
La particolarità di WannaCry, rispetto ad altri ransomware, era precisamente l’uso dell’exploit EternalBlue, che sfruttava una vulnerabilità in SMBv1 (un protocollo di condivisione file di rete, Server Message Block, utilizzato dai sistemi Microsoft Windows).
La vulnerabilità classificata come CVE-2017-0144 (MS17-010 secondo Microsoft) era stata già chiusa da Microsoft il 14 marzo 2017.
Tuttavia, i sistemi Windows XP e Windows Server 2003 non erano più protetti (fine del supporto a partire dall’8 aprile 2014) e quindi, senza patch, sono stati facilmente violati da EternalBlue.
L’affare WannaCry ha un ulteriore colpo di scena: sembra che EternalBlue sia stato creato dall’NSA (l’Agenzia per la Sicurezza Nazionale degli Stati Uniti).
Tuttavia, l’NSA ha fatto rubare l’exploit da un gruppo di hacker chiamato The Shadow Brokers (TSB), che lo ha diffuso nel Darkweb, rendendolo disponibile agli attaccanti che lo hanno utilizzato. In questo caso, l’attacco è stato compiuto dal gruppo di hacker sponsorizzato dallo stato della Corea del Nord noto con il nome Lazarus.
WannaCry e EternalBlue avrebbero dovuto farci comprendere l’importanza degli aggiornamenti di sicurezza. Invece, – sembra incredibile – oggi, sei anni dopo, ci sono sistemi che hanno ancora installato Windows XP e Windows Server 2003 e sono, quindi, facilmente attaccabili da questo exploit che è ancora attivo e in uso.
Un altro exploit web popolare è Bluekeep: sfrutta una vulnerabilità di esecuzione di codice remoto (RCE) identificata come CVE-2019-0708 che colpisce i Servizi Desktop Remoto di Windows e può consentire agli hacker criminali di accedere a una macchina vulnerabile anche senza autenticazione.
Permette di aprire una falla in una LAN in modo che il malware possa diffondersi a tutti i PC collegati.
I sistemi operativi vulnerabili a Bluekeep sono: Windows Server 2003, Windows XP, Windows Vista, Windows 7, Windows Server 2008, e Windows Server 2008 R2, tutti sistemi già dichiarati fine vita da Microsoft e non più aggiornabili.
Gli exploit web e i kit exploit oggi sono facilmente disponibili – a pagamento e, a volte, anche gratuitamente – nei forum del dark web, ma non solo lì.
Molti di loro sono ormai nel dominio pubblico, e chiunque può scaricarli da siti web ben noti. Uno dei più popolari è https://www.exploit-db.com/ dove puoi trovare anche EternalBlue e Bluekeep pronti per il download… e molti altri!
La parte 2 dell’articolo in uscita a breve….
4. L’autore
Giorgio Sbaraglia, un ingegnere, fornisce consulenza e formazione in sicurezza informatica e privacy.
Insegna corsi su questi argomenti per molte principali società di formazione italiane, incluse ABIFormazione e 24Ore Business School.
È il coordinatore scientifico del programma master “Cybersecurity e Data Protection” presso 24Ore Business School.
È membro del Comitato Scientifico di CLUSIT (Associazione Italiana per la Sicurezza Informatica) e un “Innovation Manager” certificato da RINA.
Ricopre posizioni di DPO (Data Protection Officer) presso varie aziende e associazioni professionali.
È autore dei libri:
» “GDPR kit di sopravvivenza” (Editore goWare),
» “Cybersecurity kit di sopravvivenza. Il web è un luogo pericoloso. Dobbiamo difenderci!” (2a edizione 2022, Editore goWare),
» “iPhone. Come usarlo al meglio. Scopriamo insieme tutte le funzioni e le app migliori” (Editore goWare).
È collaboratore di CYBERSECURITY360 , la pubblicazione specializzata del gruppo Cybersecurity.
Scrive anche per ICT Security Magazine, per AGENDA DIGITALE, e per la rivista CLASS.
Puoi attivare la protezione FlashStart® Cloud su qualsiasi tipo di Router e Firewall per proteggere dispositivi desktop e mobili e dispositivi IoT su reti locali.

