Metasploit, quando la miglior difesa è l'attacco

(di Alessandro Fiori)
01/07/19

In questi ultimi anni si sente sempre più spesso parlare di “attacchi cyber”, “cyber warfare” e più in generale di sicurezza informatica.
Questo perché, in un mondo che cambia costantemente, non si evolvono solo le strategie e il metodo per affrontare la minaccia, cambia la minaccia stessa e il campo di battaglia.

Stiamo vivendo un periodo di transizione (a dire la verità quasi ultimato) dove ogni cosa è connessa e di conseguenza esposta ad eventuali minacce informatiche.

Oggi vi presento uno strumento, una vera e propria “arma cibernetica”, tanto versatile quanto potente e per questo presente in moltissimi scenari sia di attacco che di difesa: Metasploit.

Metasploit è un Framework Open Source, ovvero una serie di strumenti racchiusi in un'unica “cassetta degli attrezzi”, creato da H D Moore nel 2003. Nel 2009 il progetto viene acquisito dall’azienda americana Rapid7 la quale crea, dalla base del Framework, due piattaforme dedicate alla sicurezza informatica: Metasploit Express (oggi divenuta Metasploit Community) e Metasploit Pro.

Metasploit è sin da subito molto popolare nelle community dedicate ai professionisti o appassionati di sicurezza informatica, in quanto non solo è completamente Open Source (ovvero a codice aperto, chiunque può modificarlo e/o integrarlo con propri strumenti), ma la sua efficacia e versatilità lo ha fatto diventare ben presto il principale alleato di molti “penetration testers”, ovvero di professionisti che analizzano un’organizzazione, un sistema o una rete, per trovarne le vulnerabilità e sanarle.

Ovviamente una tale arma può essere utilizzata anche per effettuare un attacco reale, ma attenzione:

  • Attaccare una rete o un sistema senza autorizzazione è un atto illegale, quindi se ne sconsiglia l’utilizzo in tale ottica.
  • Metasploit può essere usato legalmente se, e solo se, si possiede un’autorizzazione da parte del proprietario del sistema, appositamente rilasciata per eseguire un audit dei sistemi con tale strumento.

Questo Framework è composto da molteplici componenti, detti moduli, i quali vengono scelti dall’operatore per portare a segno un attacco di successo, a seconda del tipo di macchina remota e di situazione.
L’obiettivo di un attacco di successo è ottenere l’accesso alla macchina remota, ai file, ai programmi in esecuzione ed ai dati in essa contenuti, senza che il bersaglio si accorga di nulla.

La potenza e versatilità di Metasploit è data proprio dalla presenza di numerosi moduli, per qualunque sistema operativo, router, smartphone e sistema IOT presente sul mercato.

Come già detto, attaccare un sistema senza autorizzazione è illegale, inoltre attaccare un sistema “critico” può portare conseguenze gravi. Come direbbero alcuni: “don’t try this at home!”

Ma perché è possibile tutto ciò e perché le aziende produttrici di software, sistemi e dispositivi hardware non applicano dei controlli serrati su ciò che fanno? Per rispondere a questa domanda dobbiamo fare un passo indietro...

Il nostro mondo è pieno di oggetti elettronici. Per permettere ad un oggetto elettronico di eseguire delle operazioni complesse, come un televisore, un router o uno smartphone, è necessario che del software controlli il “ferro”.
Questo software è scritto da esseri umani che, in quanto tali, commettono errori involontari, questi errori involontari sono chiamati “bug”.
Alcune “lacune” nella progettazione o realizzazione del software possono essere lasciate volontariamente come, ad esempio, le “backdoor” ovvero delle vere e proprie “porte di servizio”, che alcuni sviluppatori lasciano volutamente nel codice del software per ottenere un accesso amministrativo nel caso possa servire, nei casi più gravi di malfunzionamento, o altre operazioni particolari.
Molte di queste backdoor non sono documentate, non viene avvisato l’utente della loro esistenza, e molte volte la password di accesso a questa “porta sul retro” è nulla o debole.
Dal momento che tale “porta” è accessibile dall’esterno, un malintenzionato potrebbe sfruttarla a suo vantaggio (potete solo immaginare quali danni può causare questo comportamento).

In ogni caso, i “bug” del software vengono sfruttati da altri esseri umani, che creano gli “exploit” per poter sfruttare questi bug, andando a colpire il software vulnerabile per poter ottenere un comportamento non desiderato.
Tramite gli exploit, un aggressore attacca il software vulnerabile e, una volta ottenuto l’accesso al sistema, carica un “payload”, ovvero generalmente un piccolo software che permette all’aggressore di poter comunicare con la macchina remota e lanciare comandi complessi.
Una volta che l’aggressore riesce a lanciare comandi complessi, ottiene l’accesso alla macchina e può effettuare diverse operazioni, più o meno pericolose, a suo vantaggio.
Metasploit permette di semplificare tutto il processo, mettendo a disposizione exploit, payload e sistemi di “evasione” per evitare Firewall, Antivirus e altri sistemi anti-intrusione.

Come detto in precedenza, la violazione di sistema informatico è un reato (repetita iuvant).

Qui di seguito, un esempio di attacco ad un sistema Windows.

In questo periodo stiamo assistendo ad ondate di attacchi di phishing (mail o comunicazioni che sembrano vere, ma che in realtà sono create ad arte per far immettere alla vittima i propri dati, o aprire un allegato infetto).

In questo scenario, l’aggressore ha un server dove è caricato Metasploit, il quale aspetta di ricevere una connessione da parte del suo “Meterpreter” (un particolare payload di Metasploit in grado di comunicare con il server dell’aggressore).
Di seguito, si riporta un esempio di server che attende la connessione da parte della vittima:

Di seguito si riporta un esempio della macchina vittima con il collegamento infetto:

Non si guardi l’esempio, tali collegamenti o file infetti possono arrivare via mail e posso nascondersi in file musicali, immagini, PDF o file Office.
Di seguito, si evidenzia la connessione stabilita con successo sulla macchina della vittima:
Si noti come ora è possibile inviare comandi al sistema operativo vittima.
Di seguito un esempio di comando inviato alla macchina remota:

Come detto in precedenza, questo è solo un esempio, in un ambiente isolato e con macchine preparate ad hoc.
Nonostante la simulazione, comunque, l’attacco è reale.

Si consiglia sempre, quindi, di essere sospettosi verso file o mail non riconosciute, verificandone la fonte, e di mantenere aggiornate le soluzioni antivirus e firewall, e di eseguire sempre gli aggiornamenti al proprio sistema operativo per impedire situazioni spiacevoli.

Metasploit viene utilizzato sia da civili che da militari, sia per l’attacco che per la difesa di sistemi. Vengono eseguite delle simulazioni di attacchi reali su bersagli reali o simulati, per testare le difese e aumentarle/dimensionarle, in base alla criticità del sistema da difendere.

Metasploit è utilizzato frequentemente anche in operazioni militari, e non solo come semplice strumento di difesa.
Le Forze Armate e varie Agenzie governative di diverse nazioni nel mondo modificano il Framework stesso, grazie alla sua natura open source, e in alcuni casi rilasciano al grande pubblico le loro modifiche, di modo che tutti ne possano usufruire.

Per fare un esempio del ruolo di Metasploit (o Framework simili) in un vero scenario bellico, una Forza Armata può diminuire le perdite di vite umane proprie, attaccando infrastrutture critiche, danneggiando comunicazioni, linee elettriche e altre infrastrutture, paralizzando di fatto il nemico senza per forza ricorrere ad uno scontro ravvicinato.

Questo tipo di utilizzo ha attratto nel tempo tutte le Forze Armate, di fatto spostando l’interesse dei vari Paesi verso la protezione delle informazioni e dei sistemi. Le informazioni e l’utilizzo delle stesse sono sempre più fonte di ricchezza, in quanto se il dato e l’analisi dello stesso porta la conoscenza del mondo che ci circonda, l’aggregazione e l’approfondimento di questa conoscenza si traduce in un vantaggio strategico in ogni settore, dall’industria bellica, a quella farmaceutica, a quella economica.

Di fatto l’avvento di queste tecnologie e successivamente lo sviluppo di scenari differenti derivante dall’utilizzo delle stesse, ha generato un’evoluzione degli scenari operativi.

Dal momento che un attacco informatico può essere eseguito a migliaia di chilometri di distanza, senza armi facilmente individuabili, senza “giurisdizioni” o “bordi”, è sfumato quello che fino a pochi anni prima era il concetto di “confine”.

Ogni nazione, ogni comunità organizzata ha il proprio “confine”, dettato da limiti geografici o culturali che siano.Internet per sua natura non ha confini, e va oltre il concetto di “nazione” o “dominio”, e questo tipo di stravolgimento, anche se solo elettronico, ha in realtà innescato il processo di “sfumatura” dei confini esistenti. Questo vuol dire che concettualmente due popoli lontanissimi geograficamente, sono in realtà a pochi “centimetri di distanza” l’uno dall’altro grazie ad Internet.

Questo tipo di cambiamento ha portato molti benefici per le economie, ma anche nuovi rischi. Se in Europa stanno sorgendo consapevolezze sempre maggiori sui rischi e la necessità di agire proattivamente contro le minacce sempre crescenti e sempre in evoluzione, grazie ai vari CERT (acronimo di Computer Emergency Response Team, ovvero persone pronte ad intervenire in caso di emergenze di tipo informatico).
Ci sono realtà strutturate, ad esempio le varie Agenzie come NSA, che creano intere strutture e metodologie di attacco personalizzate (come il Quantum Attack, X-KeyScore e Tailored Access Operations).

Stiamo arrivando anche noi ad avere strutture simili, e molto stanno facendo il CERT-PA e CERT-Nazionale per garantire all’intero “Sistema Paese” di poter fronteggiare la nuova era (che è già iniziata). I nuovi scenari per il futuro stanno mutando velocemente, le persone prendono consapevolezza delle nuove realtà, e tali strumenti sono sempre più di dominio pubblico (e non tutti sono dei “good guys”).

Quello che ci serve, quindi, non è attendere imbelli le varie evoluzioni, ma agire tempestivamente senza farci prendere dal panico di fronte a nuove sfide, aumentando le competenze e formando il nuovo Capitale Umano (e magari riportare in Italia qualche cervello) che in tutti i settori ci aiutino a fronteggiare le nuove battaglie e i nuovi nemici.

Per approfondire:
https://it.wikipedia.org/wiki/Metasploit_Project
https://github.com/rapid7/metasploit-framework
https://en.wikipedia.org/wiki/Tailored_Access_Operations
https://www.securityweek.com/nsa-linked-hacking-tools-ported-metasploit
https://www.certnazionale.it/

Foto: U.S. Marine Corps / U.S. Air Force / autore / ministero della difesa