Che cos’è, caratteristiche e architettura di una botnet in informatica

Che cos’è, caratteristiche e architettura di una botnet in informatica

Il termine Botnet è l’abbreviazione di “robot network”. Le botnet, dal punto di vista del cybercrime, sono reti formate da un insieme di computer infetti, controllati in remoto da uno o più aggressori, botmaster, con l’intenzione di svolgere attività dannose.

Anatomia di una botnet

Una botnet si compone dei seguenti elementi:

  • Bot: è un software, installato su un host vulnerabile, in grado di eseguire una serie di azioni, normalmente Tale software può essere installato sulle macchine delle vittime in molti modi, come ad esempio a seguito dell’accesso a siti infetti. I bot sono in genere configurati in modo che ad ogni avvio del computer infettato il programma venga inizializzato. Le azioni vengono avviate tramite comandi specifici, inviati dal botmaster attraverso l’infrastruttura Command and Control;
  • BotMaster: sono utenti malintenzionati che controllano le botnet inviando comandi ai bot, al fine di eseguire attività illegali. I botmaster possono ottenere vantaggi finanziari, come ad esempio il noleggio della rete per consentire ad altri utenti di inviare spam. In secondo luogo, un vantaggio molto importante di cui il botmaster può usufruire è quello di poter lanciare i suoi attacchi senza la necessità di dover avere una posizione prefissata. Infine un ultimo vantaggio consiste nel fatto che, per evitare un’eventuale identificazione, il botmaster riesce a mutare più volte il proprio indirizzo IP;
  • Host o Zombie: sono macchine che sono state compromesse con software dannoso diffuso da un botmaster attraverso un meccanismo di propagazioDopo essere state infettate, queste macchine possono essere usate come piattaforme di attacco contro altri host vulnerabili;
  • Command and Control, (C&C) o C2: è l’infrastruttura costituita dai bot e da un’entità di controllo che può essere centralizzata o decentralizzata. L’infrastruttura C2 rappresenta la parte più influente di una botnet. Tramite tale l’infrastruttura è possibile controllare i bot all’interno della botnet, di conseguenza è necessario mantenere una connessione stabile per poter operare in modo efficiente. Pertanto, l’architettura dell’infrastruttura C2 determina il grado di robustezza, stabilità e tempo di reazione di una botnet.

Architettura

Una botnet può essere analizzata in base al tipo di architettura, pertanto determinare la giusta architettura è una scelta essenziale, dal momento che ognuna di esse presenta un diverso livello di resilienza. Le architetture generalmente rientrano in tre categorie: centralizzata, decentralizzata e ibrida. I protocolli di comunicazione utilizzati dipendono naturalmente anche dalla topologia di rete sottostante.

Centralizzata

Il modello centralizzato è l’approccio più semplice. In questa architettura i bot ricevono comandi da un unico C2 server, spesso usando protocolli come HTTP o IRC per le comunicazioni; inoltre l’implementazione è basata su un’architettura client-server. I vantaggi del modello centralizzato sono diversi, in primo luogo vi è il fatto che tale modello è piuttosto semplice da implementare e personalizzare. È possibile notare che il botmaster può facilmente controllare migliaia di bot e massimizzare quindi il profitto. In secondo luogo, le latenze di messaggistica sono piccole, pertanto è facile per i botmaster coordinare le botnet e lanciare attacchi. Questa architettura presenta un notevole inconveniente: se da un lato l’approccio centralizzato implica efficienti comunicazioni dal C2 server alle macchine infette, dall’altro lato ciò significa che esiste un unico single point of failure per la botnet. In altre parole, se le autorità dovessero individuare il C2 server, quest’ultimo potrebbe essere spento completamente. Questa topologia può essere ulteriormente suddivisa in: topologia a stella, in cui ciascun bot è collegato direttamente con il C2 server e topologia gerarchica, in cui esiste un unico C2 server che utilizza dei bot come proxy per aumentare lo strato di offuscamento. Il modello centralizzato può essere creato utilizzando protocolli basati su IRC e HTTP:

  • IRC: Internet Relay Chat è un protocollo di messaggistica istantanea su Molte botnet fanno uso di tale protocollo, in questo caso il botmaster utilizza i canali IRC per creare e comunicare con tutte le botnet. Una limitazione di tale scelta riguarda l’uso comune del protocollo IRC per la comunicazione, che viene facilmente rintracciato semplicemente analizzando il traffico IRC come parte del traffico normale;
  • HTTP: Con il protocollo HTTP, il botmaster gestisce i bot tramite un sito Con questo tipo di protocollo il firewall non riesce a riconoscere il traffico DNS malevolo da quello benigno. Questo tipo di protocollo garantisce la comunicazione in quanto viene scambiato, dalle tecniche tradizionali di sicurezza informatica, come normale traffico su siti web.
Architettura centralizzata di una botnet
Architettura centralizzata di una botnet

Decentralizzata

L’architettura decentralizzata utilizza dei protocolli di comunicazione P2P. Rispetto al modello centralizzato, il modello basato su P2P è molto più difficile da scoprire e distruggere. Dal momento che il sistema di comunicazione non dipende fortemente da un unico C2 server, distruggendo un singolo o un determinato numero di bot, ciò non porterà necessariamente alla distruzione dell’intera botnet. D’altro canto, i sistemi basati su P2P presentano una serie di vincoli, innanzitutto supportano solo conversazioni di piccoli gruppi di utenti, in genere nell’intervallo 10-50 utenti. La dimensione del gruppo supportata dai sistemi P2P è troppo piccola rispetto alla dimensione centralizzata. In secondo luogo, i sistemi P2P presentano un’elevata latenza nella consegna dei messaggi e nella propagazione. Pertanto, utilizzando la comunicazione P2P, una botnet sarebbe più difficile da coordinare rispetto a quelle che utilizzano il modello centralizzato.

Architettura decentralizzata di una botnet

Ibrida

Infine, alcune botnet adottano un approccio con elementi di architetture sia centralizzate che decentralizzate. Nonostante le topologie P2P hanno sicuramente migliorato la resilienza delle botnet e l’anonimato, il loro principale svantaggio risiede nell’elevata complessità della rete. Questo aspetto negativo potrebbe essere mitigato usando una botnet ibrida, in cui più bot servant assumono i ruoli dei C2 sever per comunicare comandi ai bot client, rendendo tale operazione più rapida ed efficiente, sempre preservando la resilienza e l’anonimato.

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: https://vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *