Cos’è un botnet DDoS?

Gli attacchi botnet sono responsabili dei più vasti attacchi DDoS mai registrati. Ecco come i dispositivi si infettano con malware botnet, come si comandano i bot a distanza e come si protegge una rete da un'invasione botnet.

Obiettivi di apprendimento

Dopo aver letto questo articolo sarai in grado di:

  • Definire una botnet DDoS
  • Spiegare perché vengono create le botnet
  • Capire in che modo le botnet vengono controllate da malintenzionati
  • Illustrare strategie per disabilitare una botnet e prevenire l'eventuale infezione

Copia link dell'articolo

Che cos’è una botnet?

Una botnet è un insieme di computer infettati da malware e controllati da un individuo privo di scrupoli. Il termine botnet deriva dalle parole robot e network, rete. Ogni dispositivo infetto è detto bot. Le botnet possono essere progettate per eseguire attività illecite o dannose, tra cui l'invio di spam, il furto di dati, l’estorsione attraverso ransomware, il clic su annunci con frode o attacchi DDoS (Distributed Denial of Service).

Se alcuni malware, come il ransomware, hanno un impatto diretto sul proprietario del dispositivo infettato, i malware botnet DDoS possono in realtà avere diversi livelli di visibilità. Alcuni sono progettati per assumere il controllo totale di un dispositivo, altri vengono eseguiti invece in modalità silente, come processo in background, in attesa di istruzioni dall'aggressore, detto “bot herder”, letteralmente “pastore di bot”.

Self-propagating botnets recruit additional bots through a variety of different channels. Pathways for infection include the exploitation of website vulnerabilities, Trojan horse malware, and cracking weak authentication to gain remote access. Once access has been obtained, all of these methods for infection result in the installation of malware on the target device, allowing remote control by the operator of the botnet. Once a device is infected, it may attempt to self-propagate the botnet malware by recruiting other hardware devices in the surrounding network.

Le stime del numero totale di bot in una botnet sofisticata possono andare da alcune migliaia a oltre un milione, anche se è impossibile sapere con precisione quanti bot comprenda una particolare botnet.

Animazione dell'attacco DDoS botnet

Perché vengono create le botnet?

Le ragioni per utilizzare una botnet vanno dall'attivismo all'interruzione finanziata dallo stato, con molti attacchi che vengono effettuati semplicemente a scopo di lucro. La contrattazione di servizi di botnet online è relativamente economica, soprattutto in relazione alla quantità di danni che possono causare. La barriera per la creazione di una botnet è anche sufficientemente modesta da renderla un'attività redditizia per alcuni sviluppatori di software, specialmente in aree geografiche in cui la regolamentazione e le forze dell'ordine sono limitate. Questa combinazione ha portato a una proliferazione di servizi online che offrono attacchi a noleggio.

Come viene controllata una botnet?

Una caratteristica precipua di una botnet è la capacità di ricevere istruzioni aggiornate dal guardiano di bot. La possibilità di comunicare con ciascun bot nella rete consente all'aggressore di alternare vettori di attacco, modificare l'indirizzo IP di destinazione, terminare un attacco e altre azioni personalizzate. Benché la struttura di una botnet possa variare, si possono in generale suddividere gli schemi di controllo in due categorie:

Il modello di botnet client/server

Il modello client/server imita il tradizionale flusso di lavoro di workstation remote in cui ogni singola macchina si connette a un server centralizzato (o un numero limitato di server centralizzati) per accedere alle informazioni. In questo modello ogni bot si collegherà a una risorsa del centro di comando e controllo (CnC) quale un dominio Web o un canale IRC per ricevere istruzioni. Utilizzando questi repository centralizzati per fornire alla botnet nuovi comandi, un malintenzionato si limiterà semplicemente a modificare il materiale di origine a cui ogni botnet attinge da un centro di comando per aggiornare le istruzioni alle macchine infette. Il server centralizzato che controlla la botnet può essere un dispositivo posseduto e gestito dall'aggressore ma può anche essere un dispositivo infetto.

Sono state osservate numerose popolari topologie di botnet centralizzate, tra cui:

Topologia di rete a stella

Animazione della topologia di rete a stella

Topologia di rete multiserver

Animazione della topologia di rete multiserver

Topologia di rete gerarchica

Animazione della topologia di rete gerarchica

In uno di questi modelli client/server, ciascun bot si connetterà a una risorsa del centro di comando come dominio Web o canale IRC per ricevere istruzioni. Utilizzando questi repository centralizzati per fornire nuovi comandi per la botnet, l'aggressore deve semplicemente modificare il materiale di origine che ogni botnet consuma da un centro di comando per aggiornare le istruzioni alle macchine infette.

La semplicità di aggiornamento delle istruzioni alla botnet da un numero limitato di fonti centralizzate si accompagna alla vulnerabilità di tali macchine; per rimuovere una botnet con un server centralizzato, infatti, basta bloccare il server. A causa di questa vulnerabilità, i creatori di malware botnet si sono evoluti e si sono orientati verso un nuovo modello, meno suscettibile di essere bloccato mediante un unico o pochi punti di errore.

Il modello di botnet peer-to-peer

Per aggirare le vulnerabilità del modello client/server, le botnet ultimamente sono state configurate utilizzando componenti di condivisione file decentralizzata peer-to-peer. L'incorporamento della struttura di controllo all'interno della botnet elimina il singolo punto di errore presente in una botnet con server centralizzato, rendendo più difficili gli sforzi di mitigazione. I bot P2P possono essere sia client che centri di comando, lavorando fianco a fianco con i vicini nodi per propagare i dati.

Le botnet peer-to-peer mantengono un elenco di computer affidabili con i quali possono comunicare e ricevere comunicazioni e aggiornare il loro malware. Limitando il numero di altre macchine a cui si connette il bot, ogni bot viene esposto solo a dispositivi adiacenti, rendendolo più difficile da tracciare e mitigare. La mancanza di un server di comando centralizzato rende una botnet peer-to-peer più vulnerabile al controllo da parte di un soggetto diverso dal creatore della botnet. Per proteggerle dalla perdita di controllo, le botnet decentralizzate sono in genere crittografate in modo da limitare l'accesso.

Animazione della topologia di rete peer-to-peer

In che modo i dispositivi IoT si trasformano in botnet?

Nessuno esegue il proprio Internet banking attraverso la telecamera wireless installata nel giardino per osservare la mangiatoia degli uccelli, ma ciò non significa che il dispositivo non sia in grado di effettuare le richieste di rete necessarie. La potenza dei dispositivi IoT unita alla scarsa o mal configurata sicurezza crea una breccia che consente al malware botnet di reclutare nuovi bot. La crescita dei dispositivi IoT ha aperto nuovi orizzonti per gli attacchi DDoS, poiché molti sono configurati in modo inappropriato e sono per questo vulnerabili.

Se la vulnerabilità di un dispositivo IoT è codificata nel firmware, gli aggiornamenti sono più difficili. Per mitigare il rischio, i dispositivi IoT con firmware obsoleto devono essere aggiornati, in quanto le credenziali predefinite rimangono generalmente invariate rispetto all'installazione iniziale del dispositivo. Molti produttori di hardware a buon mercato non sono incentivati a rendere i loro dispositivi più sicuri, rendendo la vulnerabilità rappresentata dal malware botnet per i dispositivi IoT un rischio di sicurezza irrisolto.

Come si disabilita una botnet esistente?

Disabilitare i centri di controllo di una botnet:

Le botnet configurate utilizzando uno schema di comando e controllo possono essere disabilitate più facilmente una volta identificati i centri di controllo. Far saltare i points of failure può portare offline l'intera botnet. Di conseguenza, gli amministratori di sistema e le forze dell'ordine si concentrano sulla chiusura dei centri di controllo di queste botnet. Il processo è più difficile se il centro di comando opera in un Paese in cui le forze dell'ordine sono meno esperte o propense a intervenire.

Eliminare l'infezione sui singoli dispositivi:

Nel caso di singoli computer, le strategie per riprendere il controllo della macchina includono l'esecuzione di software antivirus, la reinstallazione del software da un backup sicuro o il riavvio dopo la riformattazione del sistema. Per i dispositivi IoT, le strategie possono includere il flashing del firmware, il ripristino delle impostazioni di fabbrica o la formattazione del dispositivo. Se queste opzioni non sono attuabili, altre strategie possono essere rese disponibili dal produttore del dispositivo o da un amministratore di sistema.

Come proteggere i propri dispositivi dalla possibilità di essere coinvolti in una botnet?

Creare password sicure:

For many vulnerable devices, reducing exposure to botnet vulnerability can be as simple as changing the administrative credentials to something other than the default username and password. Creating a secure password makes brute force cracking difficult, creating a very secure password makes brute force cracking virtually impossible. For example, a device infected with the Mirai malware will scan IP addresses looking for responding devices. Once a device responds to a ping request, the bot will attempt to login to that found device with a preset list of default credentials. If the default password has been changed and a secure password has been implemented, the bot will give up and move on, looking for more vulnerable devices.

Consentire solo l'esecuzione affidabile di codice di terze parti:

Se si adotta il modello di esecuzione del software del cellulare, è possibile eseguire solo le applicazioni autorizzate, garantendo un maggiore controllo per l'eliminazione del software ritenuto dannoso, incluse le botnet. Solo uno sfruttamento del software supervisore (ad es. Kernel) può comportare lo sfruttamento del dispositivo. Questo implica innanzitutto avere un kernel sicuro, cosa che la maggior parte dei dispositivi IoT non ha, e si applica più facilmente a macchine che eseguono software di terze parti.

Pulizia/ripristino periodici del sistema:

Il ripristino a un valido stato noto dopo un periodo prestabilito rimuoverà tutte le scorie raccolte da un sistema, incluso il software botnet. Questa strategia, se utilizzata come misura preventiva, assicura che anche il malware in esecuzione silenziosa venga svuotato dal cestino.

Implementare buone pratiche di filtraggio in ingresso e in uscita:

Other more advanced strategies include filtering practices at network routers and firewalls. A principle of secure network design is layering: you have the least restriction around publicly accessible resources, while continually beefing up security for things you deem sensitive. Additionally, anything that crosses these boundaries has to be scrutinized: network traffic, usb drives, etc. Quality filtering practices increase the likelihood that DDoS malware and their methods of propagation and communication will be caught before entering or leaving the network.

Se si è sotto attacco, si possono immediatamente adottare alcune misure per alleviare la pressione. Se si è già utenti Cloudflare, per mitigare l’attacco si possono seguire questi passaggi. La protezione DDoS di Cloudflare è sfaccettata per consentire di mitigare i numerosi possibili vettori di attacco. Approfondimento sulla protezione DDoS di Cloudflare.