Il malware sta costruendo una botnet che comprende 13.500 macchine infette in 84 Paesi. E il numero è in continua crescita

Tempo di lettura: 4 minuti

La nuova variante del malware InterPlanetary Storm, lanciata di recente, è capace di colpire non solo macchine Windows e Linux, ma anche dispositivi Mac e Android. Il malware sta costruendo una botnet, che secondo i ricercatori Barracuda comprende al momento circa 13.500 macchine infette distribuite in 84 Paesi. E il numero è in continua crescita.

La maggior parte delle macchine infette si trova in Asia:

  • 59% a Hong Kong, Sud Corea e Taiwan
  • 8% in Russia e Ucraina
  • 6% in Brasile
  • 5% negli USA e Canada
  • 3% in Svezia
  • 3% in Cina
  • 1% o meno in tutti gli altri Paesi

Di seguito, un’analisi della minaccia e delle soluzioni disponibili per individuare, bloccare e rimediare agli attacchi.

La minaccia

Una nuova variante del malware InterPlanetary Storm. Questa nuova variante ottiene l’accesso alle macchine per mezzo di un attacco a dizionario contro server SSH, simile a un altro malware P2P, FritzFrog. Esso può infiltrarsi anche accedendo a server ADB (Android Debug Bridge) aperti. Il malware riconosce l’architettura della CPU e il sistema operativo della vittima e può girare su macchine basate su ARM, un’architettura molto comune nei router e in altri dispositivi IoT.

Il malware è chiamato InterPlanetary Storm perché utilizza la rete p2p InterPlanetary File System (IPFS) e l’implementazione libp2p sottostante. Ciò permette ai nodi infetti di comunicare tra loro direttamente o attraverso altri nodi (relay).

La prima variante di Interplanetary Storm, che colpiva le macchine Windows, è stata scoperta nel maggio 2019, seguita nel giugno di quest’anno dalla variante capace di attaccare le macchine Linux. Questa nuova variante, che i ricercatori Barracuda hanno individuato per la prima volta alla fine di agosto, attacca i dispositivi IoT – ad esempio le smart TV basate su sistema operativo Android – e le macchine Linux, ad esempio i router con servizio SSH configurato malamente.

Per quanto al momento non sia ancora chiara la funzione della botnet che il malware sta creando, sicuramente mette a disposizione dei cybercriminali una backdoor sui sistemi infetti che potrà essere usata per azioni di cryptomining, attacchi DDoS o altri attacchi massivi.

I dettagli

Questa variante di InterPlanetary Storm è scritta in Go, utilizza l’implementazione Go di libp2p e è compressa con UPX. Si diffonde usando forza bruta SSH e apre le porte ADB, distribuendo file di malware su altri nodi della rete. Il malware abilita inoltre la reverse shell e può lanciare bash shell.

I ricercatori Barracuda hanno individuato diverse funzioni pensate per aiutare il malware a persistere e proteggersi una volta infettata la macchina.

  • Riconosce gli honeypot. Il malware cerca la stringa “svr04” nel prompt di default della shell (PS1), già utilizzato dall’honeypot Cowrie.
  • Si autoaggiorna. Il malware confronta la versione dell’istanza attuale con l’ultima versione disponibile e se necessario esegue l’aggiornamento.
  • Cercherà di persistere installando un servizio (system/systemv), usando un pacchetto daemon Go.
  • Esclude tutti i processi sulla macchina che possono rappresentare una minaccia per il malware, come ad esempio debuggers e malware concorrente. Per farlo, cerca le seguenti stringhe nelle linee dei comandi:
    • “/data/local/tmp”
    • “rig”
    • “xig”
    • “debug”
    • “trinity”
    • “xchecker”
    • “zypinstall”
    • “startio”
    • “startapp”
    • “synctool”
    • “ioservice”
    • “start_”
    • “com.ufo.miner”
    • “com.google.android.nfcguard”
    • “com.example.test”
    • “com.example.test2”
    • “saoas”
    • “skhqwensw”

Le chiavi di Interplanetary Storm

Il backend del malware comunica le seguenti chiavi sull’IPFS Distributed Hash Table (DHT). I nodi infetti cercheranno quindi di trovare loro pari in grado di fornire i servizi richiesti.

InterPlanetary Storm: attenzione a dispositivi Mac e Android

Tutti i nodi infetti comunicheranno la chiave “fmi4kYtTp9789G3sCRgMZVG7D3uKalwtCuWw1j8LSPHQEGVBU5hfbNdnHvt3kyR1fYUlGNAO0zactmIMIZodsOha9tnfe25Xef1” per rendere noto di essere parte della botnet. L’ID di ogni macchina infetta sarà generato una volta nella fase iniziale e sarà riutilizzato se la macchina viene riavviata o il malware viene aggiornato.

I nodi infetti comunicheranno le chiavi nella forma “stfadv:” per notificare che il nodo può fornire un file con quel checksum.

Protocolli di comunicazione

Le applicazioni Libp2p gestiscono le connessioni in entrata in base a un indirizzo logico (cioè sconosciuto al livello di trasporto) denominato protocol ID. Convenzionalmente, i protocol ID hanno una struttura path-like, con un numero di versione come componente finale.

File distribution backend

I server di distribuzione dei file possono essere scoperti usando la chiave “web-api:kYVhV8KQ0mA0rs9pHXoWpD”. Le relative macchine peer implementano http sul protocollo libp2p e servono i seguenti URL:

InterPlanetary Storm: attenzione a dispositivi Mac e Android

IOC

Il malware può “consegnare” alcuni dei seguenti file:

InterPlanetary Storm: attenzione a dispositivi Mac e Android

Come proteggersi

Ecco alcune azioni che aiutano a proteggersi da questa variante del malware:

  • Configurare correttamente l’accesso SSH su tutti i dispositivi. Ciò significa ad esempio utilizzare chiavi anziché password, il che renderà l’accesso molto più sicuro. Quando è abilitato il login via password e il servizio è accessibile il malware può sfruttare la superficie di attacco malamente configurata. Si tratta di un problema comune con i router e i dispositivi IoT, che possono quindi essere facile preda di questo malware.
  • Usare un tool di gestione della sicurezza cloud per monitorare gli accessi SSH ed eliminare gli errori di configurazione, che potrebbero avere effetti catastrofici. Per garantire un accesso sicuro alla shell quando necessario, anziché esporre la risorsa su Internet, è meglio implementare una connessione VPN MFA-enabled e segmentare la rete in funzione delle esigenze specifiche anziché garantire l’accesso alle reti IP in generale.