Si chiama BotenaGo la nuova botnet identificata dai ricercatori di sicurezza AT&T Alien Labs che, sfruttando più di 30 exploit, potrebbe potenzialmente colpire milioni di router e dispositivi IoT. Sebbene non sia ancora chiara l’identità dell’attore della minaccia responsabile e nessuna comunicazione C2 risulti attiva, il rischio d’impatto stimato risulta comunque elevatissimo.
Indice degli argomenti
BotenaGo: il malware scritto in GoLang
Il malware BotenaGo è stato scritto in Go (Golang), un linguaggio di programmazione open source progettato da Google nel 2007 e che negli ultimi anni ha aumentato la sua popolarità tra gli sviluppatori di malware (con un incremento del +2.000% secondo Intezer), soprattutto grazie alla facilità di compilazione dello stesso codice per sistemi diversi e alla possibilità di creare payload difficili da rilevare e decodificare.
Il tasso di rilevamento della minaccia
Nel caso specifico, il campione intercettato dagli analisti al momento della stesura del presente articolo presenta un modesto tasso di rilevamento tra i sistemi di sicurezza (quasi il 50%) e risulta identificato da alcuni motori antivirus come una backdoor Linux Mirai.
A tal riguardo, il ricercatore di sicurezza Ofer Caspi afferma, però, che sebbene i collegamenti ai payload siano simili, risultano esserci sostanziali differenze tra Mirai e la nuova variante di malware, non solo per il linguaggio di programmazione utilizzato, ma anche nell’architettura e nelle funzionalità di attacco. Per tutti questi motivi, Alien Labs ritiene che BonetaGo rappresenti una nuova minaccia.
BotenaGo: il funzionamento della botnet
Dopo una prima fase d’inizializzazione dei contatori d’infezioni globali che serviranno a informare il presidio sul numero di contagi totali riusciti, il malware BotenaGo carica un file di script shell e richiama una funzione “scannerInitExploits” deputata alla mappatura di tutte le funzioni offensive previste e associate tramite una stringa (che funge da firma) a un determinato e potenziale sistema vulnerabile.
Successivamente, per fornire l’exploit, il malware interroga prima il target con una semplice richiesta “GET” e dopo sulla base dei dati restituiti invoca la relativa funzione associata secondo la mappatura di stringhe preconfigurata.
In base al dispositivo preso di mira, il malware utilizzerà così un payload differente (purtroppo non è stato possibile esaminare nessuno di questi payload perché non presenti sui server di hosting durante l’analisi).
Secondo la ricostruzione, il BotenaGo potrebbe ricevere i comandi da un operatore remoto tramite una backdoor in comunicazione attraverso le porte 31412 e 19412 oppure da un altro modulo correlato e in esecuzione sulla stessa macchina target.
Alcuni esempi d’impatto rilevanti
Un esempio significativo riportato sul rapporto è l’exploit associato alla stringa di ricerca “Server: Boa/0.93.15” riferita ad un server Web open source fuori produzione utilizzato nelle applicazioni integrate e che risulta su Shodan ancora presente su quasi due milioni di dispositivi connessi su Internet.
Nello specifico la relativa funzione mappata “main_infectFunctionGponFiber” tenta di sfruttare sul target la vulnerabilità CVE-2020-8958, permettendo all’attaccante di eseguire un comando del sistema operativo tramite una specifica richiesta web.
Un altro esempio rilevante menzionato è quello relativo allo sfruttamento della vulnerabilità CVE-2020-10173, un difetto di iniezione di comandi nei gateway Comtrend VR-3033, di cui circa 250.000 potenziali dispositivi potrebbero essere ancora interessati (report Shodan).
In questo caso, la stringa di ricerca “Basic realm=”Broadband Router”” viene mappata, secondo lo stesso principio, alla funzione identificata come “m_infectFunctionComtrend”.
Le vulnerabilità sfruttabili da BotenaGo
In totale, il malware BotanaGo prevederebbe ben 33 funzioni di exploit pronte a infettare potenziali vittime. Ecco alcune delle vulnerabilità sfruttabili elencate da Alien Labs per una varietà di router, modem e dispositivi NAS molto diffusi:
- DrayTek (CVE-2020-8515),
- D-Link (CVE-2015-2051, CVE-2020-9377, CVE-2016-11021, CVE-2013-5223)
- Netgear (CVE-2016-1555, CVE-2016-6277, CVE-2017-6077, CVE-2017-6334)
- GPON (CVE-2018-10561, CVE-2018-10562)
- Linksys (CVE-2013-3307)
- XiongMai (CVE-2018-10088)
- TOTOLINK (CVE-2019-19824)
- Tenda (CVE-2020-10987)
- ZyXEL (CVE-2020-9054, CVE-2017-18368)
- ZTE (CVE-2014-2321)
Alcune ipotesi di funzionamento
Senza escludere l’eventualità che il malware sia ancora in fase di sviluppo e che il campione in esame sia stato trapelato accidentalmente, gli esperti, non trovando una comunicazione C2 attiva con un server di presidio, hanno ipotizzato che BotenaGo possa essere solo una componente di un attacco malware modulare a più stadi e non l’unico responsabile della gestione delle comunicazioni oppure effettivamente un nuovo strumento utilizzato dagli operatori Mirai su macchine specifiche.
In conclusione
Il fatto che BotenaGo possa essere eseguito come botnet su diverse piattaforme dimostra come gli attori delle minacce continuano a creare sempre nuove tecniche per implementare codice malevolo con funzionalità sempre più aggiornate.
Anche se fortunatamente diversi IoC sono già stati resi disponibili e il malware potrebbe ancora essere in una fase beta, il cospicuo numero di dispositivi presenti online e potenzialmente vulnerabili, può senza dubbio incentivare il cyber crime a continuarne lo sviluppo.
In generale per prevenire un’infezione causata dal malware di una botnet occorre senza dubbio prestare attenzione a qualsiasi download sospetto e, come suggerito dagli stessi analisti, mantenere sempre aggiornati software e patch di sicurezza, evitando di lasciare esposti su Internet server e dispositivi senza una adeguata protezione.