# Mirai (malware)

Mirai (dal giapponese 未来, “futuro”) è un malware progettato per operare su dispositivi connessi a Internet, specialmente dispositivi IoT, rendendoli parte di una botnet che può essere usata per attacchi informatici su larga scala. La botnet creata da Mirai è stata scoperta nell’agosto del 2016 da MalwareMustDie, un’organizzazione nonprofit impegnata nella ricerca per la sicurezza informatica ed è stata utilizzata lo stesso anno in svariati attacchi DDoS. Il codice sorgente di Mirai è stato pubblicato su GitHub in open source. Dalla sua pubblicazione, le tecniche utilizzate da Mirai sono state riprese e adattate in diversi malware.

## Malware

Mirai è costituito da due componenti principali, il virus e il Command and Control (CnC).
Il virus sfrutta un dispositivo infetto per cercare continuamente indirizzi IP di altri dispositivi IoT da compromettere. Tuttavia, Mirai possiede una lista di indirizzi IP da ignorare direttamente nel suo codice. Tra questi vi sono gli indirizzi riservati al Servizio Postale degli Stati Uniti, al Dipartimento della Difesa, all’Internet Assigned Numbers Authority (IANA), alla Hewlett-Packard e alla General Electric.
Il processo di ricerca è sempre in esecuzione su ogni BOT infettato e usa il protocollo Telnet tentando di accedere in modo casuale ai vari indirizzi IP. Per effettuare il login, sfrutta un attacco a dizionario, ossia una tecnica di forza bruta che prevede di svolgere svariati tentativi con credenziali comuni tra i dispositivi IoT. Queste credenziali vengono recuperate da una collezione di 60 coppie di username e password di default memorizzate nel codice sorgente. Quando ottiene l’accesso ad un dispositivo lo infetta con il malware e comunica al Command and Control l’identità del nuovo BOT e le sue credenziali. I dispositivi infettati continuano a funzionare normalmente ma aumenta l’uso della banda.
Mirai è scritto principalmente in C ed è progettato per diverse architetture (x86, ARM, Sparc, PowerPC, Motorola) in modo da coprire il maggior numero di CPU utilizzate nei dispositivi IoT. L’immagine del malware è leggera e implementa diverse tecniche per passare inosservata e nascondere i suoi meccanismi interni. In particolare, dopo che il virus viene caricato nella memoria volatile del BOT si autoelimina dal disco dello stesso. In questo modo, il malware persiste sul dispositivo finché non viene riavviato. Tuttavia, al termine del reboot, se le credenziali di accesso non vengono velocemente modificate, il dispositivo verrà nuovamente scoperto e re-infettato. Inoltre, Mirai identifica eventuali malware concorrenti già attivi sul dispositivo e li rimuove. Per farlo sfrutta uno script che termina tutti i processi che utilizzano servizi come SSH, Telnet e HTTP.
Il Command and Control implementato da Mirai supporta una semplice interfaccia a riga di comando, che permette all’attaccante di specificare un vettore di attacco, ossia uno o più indirizzi IP vittima e la durata dell’attacco. Per quanto riguarda le funzioni di attacco, Mirai è capace di lanciare varie tipologie di attacchi DDoS. A livello applicazione può lanciare attacchi di tipo HTTP floods, mentre a livello di rete e trasporto è capace di lanciare attacchi di tipo GRE IP and GRE ETH floods, SYN and ACK floods, STOMP floods, DNS floods e UDP flood. Inoltre, il CnC è sempre in attesa che i BOT comunichino i nuovi dispositivi infettati e le loro credenziali, le quali vengono usate per copiare il codice del virus e ampliare la Botnet.

## Attacchi DDoS

Mirai è stato utilizzato, insieme a BASHLITE, nell'attacco DDoS del 20 settembre 2016 sul sito di Krebs on Security che ha raggiunto i 620 Gbit / s. Ars Technica ha anche riportato un attacco da 1 Tbit / s sul web host OVH francese.
Il 21 ottobre 2016 si sono verificati più attacchi DDoS nei servizi DNS del fornitore di servizi DNS Dyn utilizzando il malware Mirai installato su un gran numero di dispositivi IoT, con conseguente inaccessibilità di diversi siti Web di alto profilo come GitHub, Twitter, Reddit, Netflix, Airbnb e molti altri.
In seguito, Mirai è stato utilizzato durante gli attacchi DDoS contro la Rutgers University dal 2014 al 2016, che ha impedito a facoltà e studenti di accedere a Internet all'esterno del campus per diversi giorni; inoltre, un fallimento del Central Authentication Service ha reso la registrazione del corso e altri servizi non disponibili durante i periodi critici del semestre accademico. Secondo quanto riferito, l'università ha speso $ 300.000 in consultazione e aumentato il budget per la sicurezza informatica dell'università di $ 1 milione in risposta a questi attacchi. L'università ha citato gli attacchi tra le ragioni per l'aumento delle tasse scolastiche e delle tasse per l'anno scolastico 2015-2016 .
Lo staff di Deep Learning Security ha osservato la costante crescita delle botnet Mirai prima e dopo l'attacco del 21 ottobre.
Mirai è stato utilizzato anche in un attacco all'infrastruttura Internet della Liberia nel novembre 2016. Secondo l'esperto di sicurezza informatica Kevin Beaumont, l'attacco sembra aver avuto origine dall'attore che ha attaccato anche Dyn.
Il sito Web Security Affairs è stato disconnesso per più di un'ora solo venti minuti dopo aver pubblicato un articolo su Mirai Okiru il 14 gennaio 2018 .

## Identità dell'autore

Il 17 gennaio 2017, il giornalista della sicurezza informatica Brian Krebs ha pubblicato un articolo sul suo blog, Krebs on Security, in cui ha rivelato il nome della persona che riteneva avesse scritto il malware. Krebs ha dichiarato che la probabile identità nella vita reale di Anna-senpai (dal nome di Anna Nishikinomiya, un personaggio di Shimoneta), l'autore di Mirai, era in realtà Paras Jha. Jha è proprietario di una società di servizi di mitigazione DDoS ProTraf Solutions e uno studente della Rutgers University. In un aggiornamento dell'articolo originale, Paras Jha ha risposto a Krebs e ha negato di avere scritto Mirai.

## Altri incidenti legati a Mirai

Dopo gli attacchi perpetrati tramite Mirai, vi sono stati altri attacchi che hanno sfruttato il codice e le logiche di Mirai stesso per creare versioni evolute del malware originale.
Ad esempio, nel novembre del 2016 più di 900˙000 router della Deutsche Telekom sono finiti offline dopo essere stati infettati da una variante di Mirai. Questo malware si è inserito all’interno dei router sfruttando una vulnerabilità nel protocollo TR-069, che permette al fornitore di aggiornare da remoto il firmware dei dispositivi. Questa nuova versione di Mirai, implementava una funzione specifica per il bersaglio dell’attacco. Infatti, dopo aver infettato il router, terminava tutti i processi e i protocolli attivi per la porta 7547, la stessa usata dal protocollo TR-069, in questo modo ha potuto inibire la manutenzione dei dispositivi per diverso tempo.
Un caso analogo si è avuto in Inghilterra nel dicembre del 2016. Un malware, sfruttando la stessa tecnica del caso tedesco, ha infettato un elevato numero di router, quasi tutti appartenenti alla TalkTalk Telecom.