Petya
# Petya

Petya è una famiglia di malware che ha colpito principalmente l'Europa negli anni 2016 e 2017. La prima iterazione di un malware Petya è stata individuata nel 2016. I malware Petya vengono identificati come trojan horse ed appartengono alla sottocategoria ransomware, con alcune differenze a seconda della versione, dell'obiettivo dei payloads malevoli e del loro funzionamento. Mentre altri ransomware cifrano ogni singolo file, Petya impedisce il normale avvio del sistema, sostituendo il Master Boot Record (MBR) e crittografando il Master File Table (MFT): questo rende inaccessibile qualsiasi area di memoria che contenga dei file. Il malware infine richiede all'utente un pagamento in bitcoin per riavere indietro i file crittografati. La variante del 2017 comunemente nota come NotPetya sfrutta un exploit di Windows chiamato EternalBlue, che garantisce una rapida diffusione del malware nei network informatici ed è la causa degli attacchi subiti dalle reti aziendali.

I malware della famiglia Petya agiscono solo su sistemi Windows e sono inefficaci su altri sistemi operativi come macOS e Linux.

Secondo la Casa Bianca, i costi causati da NotPetya superano i 10 miliardi di dollari USD.

## Diffusione

Il principale metodo di diffusione delle prime versioni del malware Petya è stato l'invio di e-mail fraudolente (Phishing). Le e-mail potevano contenere come allegato un file archivio di formato ZIP nel caso di Petya, oppure un link ad un cloud storage per la variante chiamata Petya-Mischa. All'interno dell'archivio o del cloud, si trovava il file di esecuzione malevolo, ingannevolmente presentato come un documento .pdf, ma con estensione .exe e accompagnato da un'immagine .jpeg. Una volta avviato il file di esecuzione, iniziava il processo di infezione. Nell'attacco del 2016, la e-mail ricordava una candidatura di lavoro e il testo era scritto in tedesco.

### NotPetya (ExPetr/Petna/Petwarp/GoldenEye)

La diffusione della versione nota come NotPetya, ExPetr, Petna, Petwarp o anche GoldenEye, è cominciata in Ucraina nel 2017. Si ritiene che il vettore di infezione principale sia stato un pacchetto di aggiornamenti corrotto di un software di contabilità chiamato M.E.Doc dell'azienda informatica Intellect Service. Sebbene tali accuse provenissero anche da marchi come Microsoft e Symantec, Intellect Service ha inizialmente negato qualsiasi tipo di coinvolgimento nella faccenda. Nel 2017, M.E.Doc era utilizzato dall'80% delle aziende ucraine e dai loro clienti. La polizia ha prontamente emanato avvisi chiedendo di cessare immediatamente l'utilizzo del software e di disconnettersi dalla rete.

Un altro vettore di infezione è stato un sito governativo compromesso della città di Bachmut.

La diffusione di NotPetya è stata rapida soprattutto in ambienti aziendali. Ciò è stato possibile poiché questa nuova versione del malware sfruttava l'exploit dei sistemi Windows chiamato EternalBlue, una vulnerabilità della funzione SMB. Microsoft aveva rilasciato il 14 marzo 2017 un aggiornamento che risolveva la falla, ma al tempo, molti degli utenti colpiti non avevano ancora aggiornato i loro dispositivi.

In una rete locale, se NotPetya riesce ad entrare in un nodo admin, è capace di rubare le credenziali di accesso e dati amministrativi tramite una versione modificata di Mimikatz incorporata nel malware. In tale situazione sono vulnerabili anche i dispositivi aggiornati, poiché NotPetya esegue l'accesso con le credenziali rubate, sfruttando PsExec e WMIC.

## Funzionamento

### Petya

Il codice di Petya è scritto in linguaggio C e C++ e sostituisce parte di codice della funzione WinMain, di norma del tutto lecita, per cercare di passare inosservato. Il procedimento di infezione di un sistema colpito avviene in tre fasi.

**Prima fase**

Una volta eseguito il file vengono richiesti i privilegi di amministratore. Se questi sono negati, l'avvio del payload malevolo è impossibile. Se sono concessi, il payload estrae un file temporaneo di tipo .dll caricandolo sulla RAM in modo che non rimanga salvato nel disco rigido del pc infettato. Il file .dll procede identificando lo standard del disco rigido (MBR o GPT) ed esegue il ramo di codice adeguato al tipo. Successivamente, cifra il settore 0 (responsabile delle operazioni di avvio del pc), implementando un nuovo loader di sistema, e alcuni settori successivi dell'hard disk con la stessa operazione di crittografia XOR.

**Seconda fase**

In questa fase, il malware salva le informazioni necessarie per la crittografia e, eventualmente, la decifrazione. Vengono create una stringa di 16 caratteri e due chiavi per la crittografia asimmetrica. La stringa viene sottoposta a due diversi livelli di crittografia, XOR e AES, per poi essere utilizzata nella crittografia del MFT come chiave di decifrazione. Vengono inoltre generati degli URL personalizzati per connettere l'utente alle pagine di pagamento. Il malware a questo punto causa un arresto immediato, oppure un crash (Blue screen), a seconda della configurazione del pc dell'utente, e procede con un riavvio di sistema.

**Terza fase**

Al riavvio, il nuovo loader prende il controllo mostrando una finta operazione Chkdsk di riparazione file su disco rigido. In realtà, in questo momento, il MFT viene cifrato con metodo Salsa20, utilizzando la stringa creata precedentemente come chiave. A fine operazione, il sistema viene riavviato nuovamente.

Al secondo riavvio, il malware presenta all'utente una schermata con un teschio disegnato in stile ASCII art, che alterna con lo sfondo, tramite un'animazione, i colori rosso e bianco. Se si preme un qualsiasi tasto, compare una nuova schermata. In questa schermata finale, è presente un paragrafo che descrive l'accaduto all'utente e sono elencate varie istruzioni per condurre quest'ultimo al pagamento per il recupero dei dati. I criminali sono in grado di fornire la chiave di decifrazione, ovvero la stringa creata precedentemente, tramite un codice personalizzato contenente le informazioni di sistema, visibile in questa schermata. L'utente dovrà inserire il codice nella pagina di pagamento. A pagamento effettuato, i criminali implementano il codice in un algoritmo che, insieme a una chiave in possesso solo di questi ultimi, fornisce la stringa per sbloccare i file dell'utente. Il pagamento va effettuato in bitcoin su pagine web nel network anonimo di Tor, pagine accessibili tramite i link URL personalizzati creati durante la seconda fase.

### Petya-Mischa

In questa versione, il file di esecuzione ha la possibilità di eseguire due ransomware distinti. Se i privilegi di amministratore vengono concessi, il funzionamento rimane il medesimo poiché il ransomware che viene eseguito è ancora la prima versione di Petya. Se l'utente non concede i privilegi, viene eseguito un nuovo ransomware chiamato Mischa. Mischa non ha bisogno di ottenere i privilegi di amministratore e procede come la maggior parte dei ransomware, crittografando ogni singolo file del sistema per infine chiedere un riscatto in bitcoin. A differenza però dei ransomware più generici, Mischa è capace di cifrare anche i file eseguibili, generando anche situazioni dove si è impossibilitati ad effettuare il pagamento.

### NotPetya (ExPetr/Petna/Petwarp/GoldenEye)

NotPetya agisce in parte come la versione originale. Una volta eseguito, NotPetya comincia un conto alla rovescia che in alcuni casi può arrivare fino a 60 minuti (in un prototipo scoperto nel marzo del 2017 arrivava a 90 minuti), sfruttando alcuni strumenti di Windows come schtasks.exe, at.exe e shutdown.exe. Nel frattempo, effettua un sondaggio nella rete locale a cui è collegato il sistema, cercando altri dispositivi connessi con le porte TCP 445 e 139 aperte. I dispositivi che rispettano i requisiti sono di conseguenza infettati. Al termine del conto alla rovescia, il sistema si riavvia seguendo lo stesso percorso della terza fase di Petya.

In questa versione, la schermata iniziale con il teschio è stata rimossa, ma la differenza più importante è che non prevede in alcun modo il recupero dei dati crittografati. Con Petya, i criminali sono capaci di fornire una chiave di decifrazione agli utenti tramite un codice personalizzato che gli utenti devono inserire in fase di pagamento. Il codice in questione, sebbene sia lo stesso presente in NotPetya, è generato in modo casuale e non fornisce quindi alcuna informazione rilevante ai criminali per la decifrazione. Il pagamento, inoltre, non avviene più su pagine web personalizzate per ogni utente, ma su un account univoco di un portafoglio bitcoin. Nella schermata finale è presente anche un indirizzo di posta elettronica con il quale era possibile comunicare le informazioni con i criminali. Poco dopo l'annuncio dell'attacco, l'indirizzo è stato chiuso dal provider tedesco Posteo su cui era registrato.

Nonostante un eventuale pagamento risulti inutile, NotPetya si presenta comunque come un ransomware, avvertendo l'utente dell'accaduto e chiedendo un riscatto in bitcoin per riottenere i file. Data l'impossibilità di recupero dei dati e l'estrema distruttività, non viene più identificato come ransomware ma come wiper.

È stato inoltre fatto notare più volte come NotPetya non possegga alcun tipo di Kill Switch, a differenza di WannaCry. Nonostante i due malware presentino similitudini nella programmazione, non esiste nessun ripiego di emergenza che permetta a NotPetya di disattivarsi.

La facile tracciabilità del pagamento e le differenze del payload hanno sollevato dubbi fra gli esperti riguardo alle motivazioni e all'esperienza dei programmatori dietro a questa versione.

## Soluzioni

Oltre al comunemente noto consiglio di non scaricare o eseguire file ottenuti da e-mail o siti web sospetti, i seguenti metodi di prevenzione sono risultati efficaci:

* Tenere aggiornato il sistema operativo Windows. Se si dispone di una rete locale di sistemi Windows, aggiornare ogni singolo dispositivo connesso.
* Installare e tenere aggiornato un software antivirus affidabile.
* Spegnere il sistema non appena la terza fase ha inizio. Questo previene che il sistema venga crittografato ma ne impedisce l'utilizzo se nessun'altra soluzione viene intrapresa.
* Effettuare periodici backup del sistema da utilizzare in caso di infezione.

È stato scoperto che NotPetya, una volta eseguito e prima di qualsiasi operazione, cerca di capire se è già presente sul pc su cui sta operando in base alla presenza di un determinato file. È quindi possibile creare un file di nome prefc, con la proprietà di sola lettura, da inserire nella cartella Windows nel disco rigido dove è installato il sistema operativo. Se NotPetya non appena eseguito rileva questo file, interrompe qualsiasi operazione di crittografia. Ciò tuttavia non ne previene la diffusione e il funzionamento in altri dispositivi connessi alla stessa rete locale.

Per un computer già infettato da Petya, è stato sviluppato un algoritmo che utilizzando le informazioni di un settore crittografato dal malware, è capace di generare la chiave giusta di decifrazione. L'algoritmo poi è stato implementato in un in una pagina web apposita che svolge l'operazione per l'utente. Per estrarre tali informazioni è necessario installare ed eseguire un software apposito su un computer non infetto collegato all'hard disk contenente il MBR crittografato. Una volta eseguita l'operazione ed ottenuta la chiave dal sito web, è necessario reinserire l'hard disk nel sistema originale per poi inserire la chiave nella schermata del malware.

## Impatto

Il 4 maggio 2016, l'azienda di sicurezza informatica Kaspersky ha pubblicato una mappa che mostra la distribuzione geografica della prima versione del malware Petya. Vengono riportati più di 600 utenti colpiti in tale data, con la Germania che da sola ne registra 579, dimostrando come il testo in tedesco della e-mail mirasse alla popolazione di lingua tedesca.

Sebbene i primi mesi del 2017 avessero visto protagonista in ambito di sicurezza informatica il ransomware WannaCry, molti utenti e aziende non avevano ancora aggiornato i loro dispositivi per risolvere la falla di Windows. Ciò ha permesso a NotPetya di risultare molto più prolifico delle versioni precedenti.

Il malware ha colpito internazionalmente, ma in modo particolare in Ucraina, dove sono state colpite molte organizzazioni come aziende energetiche, trasporti pubblici e metropolitane, aeroporti, siti governativi e numerose banche come la Banca Centrale. Il sistema di monitoraggio di radiazioni della centrale nucleare di Černobyl' è risultato compromesso, tanto da forzare gli impiegati a registrare i dati dell'impianto con contatori portatili. Altre nazioni europee come Inghilterra, Russia, Spagna, Francia e Danimarca hanno subito attacchi in alcune delle loro più importanti istituzioni. Mentre nel resto del mondo, le nazioni che hanno riportato più infezioni sono India e Stati Uniti.

Nel novembre 2017, la CIA ha dichiarato colpevoli un gruppo di hacker militari russi appartenenti al GRU. Il governo ucraino, l'amministrazione di Donald Trump, il ministro degli esteri inglese Tariq Ahmad, ed altre voci hanno puntato il dito contro la Russia, ritenendola responsabile dell'attacco informatico, visto il conflitto fra le due nazioni.

Tra le organizzazioni colpite vi sono:

* Maersk e Co.
* WPP plc
* Mondelēz International
* Rosneft
* Evraz
* Saint-Gobain
* DLA Piper
* Merck & Co.
* Fabbrica di cioccolato Cadbury (Hobart)
* Reckitt Benckiser
* TNT Express
* FedEx
* Banca Nazionale dell'Ucraina
* Home Credit & Finance Bank
* Aeroporto di Kiev-Boryspil'
* Heritage Valley Health Systems
