Nella galassia degli attacchi informatici, exploit occupa uno spazio rilevante ed è fonte di preoccupazione per la cybersecurity. Ecco cos’è e in che modi si presenta


Di solito, exploit è un termine usato in maniera positiva, per definire un’impresa speciale, una conquista in campo sportivo ma non solo. Nel settore IT, invece è motivo di preoccupazione in tema di cybersecurity, in quanto è un problema dilagante, come evidenziano le cifre pubblicate sul rapporto Clusit 2023: nel mondo sono stati individuati quasi 3 miliardi di exploit. Il Clusit definisce con questo termine il codice con cui è possibile sfruttare una vulnerabilità di un sistema.

Un pezzo di software, un blocco di dati o una sequenza di comandi che sfrutta un bug o una vulnerabilità in un’applicazione o in un sistema per provocare un comportamento imprevisto: tutto questo è definibile come exploit, che – come vedremo – si presenta in diversi tipi e modalità e può essere riconosciuto e affrontato.

Cos’è un exploit

Il termine Exploit deriva dal verbo inglese to exploit, che significa “usare qualcosa a proprio vantaggio”. Nel caso specifico, definisce un codice scritto allo scopo esplicito di sfruttare difetti nel software, nei sistemi operativi o nelle vulnerabilità della sicurezza della rete. Mentre i ricercatori e gli sviluppatori spesso creano questi exploit come “prova di concetto” della minaccia, gli exploit sono più comunemente utilizzati dagli hacker malevoli per scopi dannosi.

In alcuni casi, un exploit può essere utilizzato come parte di un attacco multicomponente – specifica Trend Micro –. Invece di utilizzare un file dannoso, l’exploit potrebbe far cadere un altro malware, che può includere trojan backdoor e spyware che possono rubare le informazioni dell’utente dai sistemi infetti.

Gli aggressori possono utilizzare un exploit per infettare una rete con malware, spyware o ransomware, che possono esporre la rete e i suoi utenti a ulteriori attacchi.

Un exploit non deve essere confuso con malware, poiché quest’ultimo è il veicolo in cui viene distribuito l’exploit. Un exploit differisce anche da una vulnerabilità, che l’exploit utilizza per ottenere l’accesso al dispositivo di una vittima.

Tra le più note vulnerabilità di sicurezza basate sul Web ci sono: attacchi SQL injection, cross-site scripting, cross-site request forgery, broken authentication code o configurazioni errate della sicurezza.

C’è poi l’exploit kit, applicazioni software che consentono di automatizzare lo sfruttamento di una vulnerabilità ed eseguire un codice dannoso.

Le diverse tipologie

Gli exploit possono essere classificati in diversi modi, a seconda del funzionamento e del tipo di attacchi che sono in grado di eseguire. Possono essere caratterizzati dal risultato atteso dell’attacco, come denial of service, remote code execution, privilege escalation, consegna di malware o altro. Gli exploit informatici possono anche essere caratterizzati dal tipo di vulnerabilità utilizzata.

In ogni caso, esistono due tipi di exploit: locali e remoti. Gli exploit locali sono più sofisticati perché implicano un accesso preventivo al sistema, mentre gli exploit remoti manipolano il dispositivo senza prima richiedere l’accesso al sistema.

Gli exploit sono comunemente classificati in noti o sconosciuti (o zero-day).

Exploit noti

Con exploit noti si intende quelli già scoperti dagli esperti di sicurezza informatica. Indipendentemente dal fatto che sia dovuto a una vulnerabilità nel software, nel sistema operativo o persino nell’hardware, gli sviluppatori possono codificare le patch per tappare il buco. Queste patch vengono rilasciate agli utenti come aggiornamenti di sicurezza. Ecco perché è fondamentale mantenere aggiornati i dispositivi.

Sconosciuti (zero-day)

Gli exploit sconosciuti o exploit zero-day, al contrario, vengono creati da hacker malevoli non appena scoprono una vulnerabilità e utilizzano l’exploit per attaccare le vittime nello stesso giorno. Sono di gran lunga i più pericolosi, poiché si verificano quando il software contiene una vulnerabilità di sicurezza critica di cui il fornitore non è a conoscenza. La vulnerabilità diventa nota solo quando viene rilevato un cyber criminale che sfrutta la vulnerabilità, da qui il termine exploit zero day. Una volta che si verifica un tale exploit, i sistemi che eseguono il software rimangono vulnerabili a un attacco fino a quando il fornitore non rilascia una patch per correggere la vulnerabilità e la patch viene applicata al software.

Alcuni exploit hanno portato a attacchi informatici così massicci che sono diventati famigerati. Eccone alcuni dei più pericolosi.

EternalBlue

Uno degli exploit più famosi e dannosi in circolazione, EternalBlue è un exploit di Windows creato dalla National Security Agency (NSA) degli Stati Uniti e utilizzato nell’attacco ransomware WannaCry del maggio 2017 che si stima abbia colpito più di 300milain 150 paesi, provocando danni per miliardi di dollari.

EternalBlue sfrutta una vulnerabilità nell’implementazione Microsoft del protocollo Server Message Block (SMB). Sebbene Microsoft abbia scoperto la perdita e rilasciato un aggiornamento di sicurezza per correggere la vulnerabilità, molte persone e organizzazioni non sono riuscite ad applicare la patch in tempo.

Petya e NotPetya

Con questi due nomi si definiscono due varianti utilizzati nell’attacco del 2017 utilizzando EternalBlue. Gli esperti stimano che i ceppi di ransomware Petya abbiano causato danni per oltre 10 miliardi di dollari quando hanno attaccato banche e diverse società.

Blue Keep

BlueKeep è una vulnerabilità sfruttabile in Microsoft Remote Desktop Protocol (RDP) che può consentire agli aggressori di accedere al computer di una vittima in remoto. Microsoft ha lanciato l’allarme su BlueKeep a maggio 2019 e ha rilasciato una patch anche per sistemi operativi obsoleti come Windows XP. Quel passaggio insolito dimostra la potenziale gravità di BlueKeep: si tratta di un exploit wormable, il che significa che un singolo exploit può innescare una reazione a catena di exploit successivi autoreplicanti su altri sistemi vulnerabili.

Come difendersi da un exploit

Prima di affrontare l’argomento difesa, è bene comprendere come è possibile riconoscere un attacco exploit. Poiché sfruttano le falle di sicurezza nel software, non ci sono segni riconoscibili: un utente non ha modo di sapere di essere stato colpito fino a quando non è troppo tardi. Ecco perché è importante aggiornare sempre il software e installare le patch di sicurezza rilasciate dallo sviluppatore del software.

Prestazioni lente, frequenti arresti anomali o blocchi, impostazioni modificate inspiegabili, svariati pop-up o annunci dove non dovrebbero esserci, perdita di spazio di archiviazione sono sintomi di un’infezione.

Detto questo, come ci si difende da un exploit? Si è detto che, in presenza di un “zero day” c’è davvero poco da fare. Tuttavia è possibile creare le condizioni per elevare la cyber security in maniera tale da difendersi quanto più possibile. Uno dei più consigliabili è installare un anti virus, impiegare password ben costruite, aggiornare costantemente tutto il software, eseguire sempre il backup dei dati.

Altro consiglio è evitare versioni vulnerabili di plug-in, browser o lettori multimediali. È sempre bene ricordare che ogni minuto impiegato ad aggiornare il sistema operativo farà risparmiare ore di manutenzione del computer in caso di attacco.

Poiché gli exploit possono diffondersi tramite e-mail e pagine web compromesse, è bene stare all’erta e fare attenzione ad aprire file sospetti.