Botnet

Da Wikipedia, l'enciclopedia libera.
L'immagine mostra il diagramma dell'attacco DDos della botnet Stacheldraht.

Una botnet è una rete controllata da un botmaster e composta da dispositivi infettati da malware specializzato, detti bot o zombie.[1]

I dispositivi connessi ad Internet al cui interno sussistono vulnerabilità nella loro infrastruttura di sicurezza informatica possono talvolta diventare parte della botnet, e, se l'agente infettante è un trojan, il botmaster può controllare il sistema tramite accesso remoto. I computer così infettati, possono scagliare attacchi, denominati, Distributed Denial of Service contro altri sistemi e/o compiere altre operazioni illecite, in taluni casi persino su commissione di organizzazioni criminali.[1]

Applicazioni delle botnet[modifica | modifica wikitesto]

Applicazioni legali[modifica | modifica wikitesto]

In generale il termine viene utilizzato per quelle reti in grado di agire con sincronia ed autonomia per fini illegali, ma esistono botnet legali usate per il calcolo distribuito e per studiare la diffusione del malware.

Applicazioni illegali[modifica | modifica wikitesto]

Le botnet a volte compromettono i computer in cui le difese di sicurezza possono essere violate, come per esempio, credenziali di accesso deboli o corte, firewall mal configurati o software server vulnerabili, per cui il controllo viene ceduto al botmaster, in grado di dirigere le attività di questi computer tramite protocolli di rete come IRC e HTTP/HTTPS.

Alcune botnet possono essere affittate da criminali informatici per una varietà di scopi, come ricatti, attentati e la conservazione di materiale illecito come ad esempio la pedopornografia.

Modalità di funzionamento e uso[modifica | modifica wikitesto]

Tali malware/trojan specializzati, non appena hanno assunto il controllo del sistema, devono poter fornire al proprio autore i dati fondamentali relativi al sistema infettato. Per fare ciò spesso sfruttano, per fornire un accesso esclusivo all'autore, i canali IRC connettendosi ad un canale privato protetto da password. Tramite il canale di chat l'autore è in grado di controllare contemporaneamente tutti i sistemi infetti in ascolto sul canale, i quali possono essere anche decine di migliaia, e di impartire a questi ordini, richiedendo immagini dello schermo, indirizzo IP o, ad esempio, fornendo l'hostname/IP di una vittima da attaccare tramite DDoS. I botmaster possono anche controllare i computer zombie tramite le sofisticate reti peer-to-peer, persino con Skype, e quindi con protocolli binari e crittografati. Se il bersaglio si trova dietro un firewall ben configurato , per eludere i controlli, è anche possibile che venga usato il protocollo HTTP/HTTPS, dato che la porta 80 si trova nella whitelist dei firewall di quasi tutti gli utenti: il collegamento sfrutta un server intermedio specializzato che supporta il protocollo direttamente o lo usa come incapsulamento per altri protocolli che devono restare nascosti.

Questi malware sono spesso programmati in modo da spiare il sistema infetto come se fossero spyware, intercettando password ed altre informazioni private ma utili all'attaccante. Possono anche offrire accesso alle macchine infette tramite backdoor oppure offrire servizi proxy che garantiscono l'anonimato in rete a discapito della banda della rete infetta.

Un uso più sofisticato delle botnet è come proxy verso un sistema compromesso: i bot infatti spesso vengono ripuliti dal malware, ma se l'attaccante installa un server su una di queste macchine e ne perde il controllo il danno per lui può essere rilevante. Per ridurre queste penalità, una tecnica usata recentemente è quella del fastflux[2] in cui una macchina fuori dalla botnet fa girare un finto server (per esempio per fare dello spoofing) e le macchine della botnet fungono solo da proxy verso questa macchina.

Con l'aumentare del numero di sistemi compromessi, l'attaccante può sfruttare sempre più potenza di calcolo al fine di indovinare le password dei sistemi che prima risultavano impervi tramite il calcolo distribuito.

Meccanismi di protezione botnet[3][modifica | modifica wikitesto]

I malware C&C (Command and Control), punto di forza dell'infrastruttura, possono essere anche una debolezza: i mezzi per accedervi devono essere protetti da altri pirati informatici. Questo livello di protezione è garantito tramite:

Domain Fluxing[modifica | modifica wikitesto]

Per evitare che i domini che consentono l'accesso alle macchine infette vengano bloccati, l'attaccante può usare software che genera dinamicamente nomi di dominio sempre differenti ed usa un proprio sistema DNS. Avendo il controllo sui record DNS, il malware può scambiare velocemente gli IP a cui puntano i nomi di dominio, puntare domini verso altri domini o ancora rinominare ad intervalli causali i domini seguendo un pattern prevedibile dal malware. Questi sono tutti elementi del domain fluxing, usato spesso assieme ad architetture robuste (come stella, multi-server, gerarchica e randomizzata) per evadere i blocchi delle autorità e dei fornitori di servizi Internet.[3][4]

Modello client-server[modifica | modifica wikitesto]

Una rete basata sul modello client-server, dove i singoli clienti richiedono i servizi e le risorse da server centralizzatidefault

Il modello client-server è apparso sui primi tipi di Internet botnet ed è stato generalmente basato su IRC o su siti web contenenti liste di comandi predefinite. IRC è un protocollo testuale facile da implementare e le botnet basate su esso hanno agenti infettanti vantaggiosamente piccoli, che richiedono poca banda di rete e utilizzano metodi semplici per la comunicazione.

Nel caso di botnet IRC, i client infetti si collegano a un server IRC infetto e si connettono a un determinato canale per ricevere i comandi. Il botmaster invia i comandi al canale tramite il server IRC, il client li recupera e li esegue.[5]

Questo tipo di canale, però, può essere inibito da semplici filtri basati su parole chiave, anche se l'agente crea nuovi canali di chat casuali: infatti la maggior parte delle grandi botnet usavano domini ed hosting protetto anziché IRC nella loro costruzione (vd. Rustock botnet, Srizbi botnet).

Con il tempo il modello client-server è diventato troppo facile da bloccare ed i botmaster hanno optato per l'uso di protocolli peer-to-peer.

Peer-to-peer[modifica | modifica wikitesto]

Una rete peer-to-peer (P2P), in cui interconnessa nodi ("peers") per condividere le risorse tra loro senza l'uso di un sistema amministrativo centralizzato

In risposta agli sforzi effettuati per individuare ed eliminare i botnet IRC, gli hacker si sono spostati verso la rete Peer-to-Peer come alternativa per continuare a distribuire malware. Tali bot tendono a utilizzare firme digitali, in modo che solo chi ha accesso alla chiave privata può averne il controllo [6](Gameover ZeuS, ZeroAccess botnet).

Le botnet più recenti sono ormai interamente basate sulle reti P2P. Piuttosto che comunicare con un server centralizzato, i bot P2P si configurano sia come un server per eseguire comandi, sia come come un client per riceverli. [7]

Per ricercare altre macchine infette nella rete, il bot interroga in maniera discreta indirizzi IP casuali finché non riesce a contattare un'altra macchina infetta. Il bot contattato risponde con informazioni come la sua versione del software e una lista di bot conosciuti. Se una delle due versioni è inferiore all'altra, essi iniziano un trasferimento di file che esegue l'aggiornamento.[6] In questo modo ogni bot accresce la sua lista di macchine infette e aggiorna sé stesso comunicando periodicamente con tutti gli altri bot conosciuti.

Componenti principali[modifica | modifica wikitesto]

  • Componente Host
  • Componente di rete

Componente Host[modifica | modifica wikitesto]

I bot sono le macchine compromesse che il botmaster può controllare a distanza.Un agente dannoso, attiva nelle macchine compromesse, lo rende possibile. L'agente dannoso che consente una macchina compromessa per essere controllato a distanza da un botmaster è chiamato un agente di bot (bot agent). Un agente di bot può essere un componente di malware autonomo in forma di un file di libreria di collegamento dinamico (DLL) eseguibile o un pezzo di codice aggiunto al codice malware. La funzione principale dell'agente di bot sono: ricevere i comandi dal botmaster, eseguire attacchi, inviare dati al botmaster.

Componente di rete[modifica | modifica wikitesto]

Il componente di rete botnet è un qualsiasi risorsa online che una botnet utilizza per compiere la sua direttiva.

Comando e controllo (C&C)[modifica | modifica wikitesto]

I protocolli di comando e controllo delle botnet sono stati implementati in diversi modi, a partire dagli approcci tradizionali IRC a versioni più sofisticate.

Telnet[modifica | modifica wikitesto]

Le botnet telnet utilizzano un semplice protocollo C&C in cui i bot si connettono a una unità di comando principale che ospita la botnet.

I bot vengono aggiunti alla botnet utilizzando uno script, che viene eseguito su un server esterno e che scansiona range di indirizzi IP alla ricerca di server telnet e ssh con credenziali di login di default. Una volta trovate le credenziali di login dei bot, vengono raccolte in una "lista di infezione", e successivamente vengono infettati tramite comandi malevoli, eseguiti attraverso ssh, dal server di controllo.

Quando viene eseguito il comando ssh, il server viene infettato e diventa un componente della botnet tramite il codice malevolo che l'ha infettato. A questo punto il botmaster, attraverso il server di comando principale, è in grado di controllare i bot e quindi di poter scatenare attacchi DDoS di grandi dimensioni.

Questi tipi di botnet sono stati utilizzati per attaccare grandi siti Web come Xbox Live e PlayStation network da un noto gruppo di cracker chiamato Lizard Squad.

IRC[modifica | modifica wikitesto]

I canali di comunicazione IRC rappresentano una vecchia forma di chat online.[8] Le reti IRC utilizzano semplici metodi di comunicazione a larghezza di banda ridotta, che li rendono validi per ospitare una botnet. Essendo relativamente semplici nella costruzione sono state usate, con moderato successo per coordinare attacchi DDoS oppure per inviare migliaia di mail di spam sulla rete.

I cracker sono in grado di cambiare continuamente canale per evitare di essere rimossi, ma allo stesso tempo tramite il semplice blocco di determinate parole chiave si è dimostrato efficace, per l'arresto delle botnet basate su IRC.

Essenziale per l'uso delle reti IRC è la conoscenza da parte dei bot-client: del server IRC, della porta e del canale di comunicazione.

Le organizzazioni anti-malware sono in grado di rilevare e arrestare server e canali, bloccando in modo efficace le botnet. Se ciò accadesse, i client rimarrebbero infetti, ma rimarrebbero dormienti poiché non avrebbero più modo di ricevere istruzioni. Per il botmaster questo costituirebbe una perdita economica, per far fronte a questo problema, una botnet può essere costituita da diversi server o canali, se uno di essi venisse disabilitato, verrebbe scelto un server o un canale diverso per far si che i client si colleghino a un server disponibile e non rimangano orfani. E' possibile rilevare e interrompere server o canali aggiuntivi sniffando il traffico IRC.[9]

P2P[modifica | modifica wikitesto]

Poiché la maggior parte delle botnet che utilizzano reti e domini IRC possono essere rimosse con il passare del tempo, i cracker si sono spostati verso le botnet P2P per rendere più difficile la loro rimozione.

In una botnet P2P tutti i bot sono connessi tra loro e possono comportarsi sia come server che come client.

Il cracker/gruppo di cracker che realizza una botnet di questo tipo, inizialmente recluterà i membri identificando gli host vulnerabili all'interno di una rete P2P già esistente, rendendo il processo di contaminazione molto semplice. Dopo la contaminazione è necessario che i bot si connettano agli altri e soprattutto al botmaster per riuscire a ricevere i comandi.

Per far si che un bot si possa connettere alla rete, deve eseguire una fase di bootstrap, che consiste nel connettersi a un server bootstrap il cui indirizzo è contenuto all'interno del bot stesso e a cui si connette la prima volta in cui viene eseguito.

Il compito di un server bootstrap è di mantenere un enorme elenco di indirizzi IP dei nodi. Questi server potrebbero essere rimossi dai garanti della sicurezza, ciò non influirebbe i bot già presenti nella rete ma impedirebbe l’ingresso di nuove infezioni fino alla configurazione di nuovi server. [10]

Una volta costruita la rete, i bot attendono istruzioni per svolgere azioni illecite o aggiornamenti.

Alcuni botmaster hanno anche usato la crittografia come metodo per proteggere o bloccare la botnet dagli altri, il più delle volte usano una crittografia a chiave pubblica.

Domini e HTTP[modifica | modifica wikitesto]

Molte botnet utilizzano domini per la loro costruzione, di solito sono ospitati da bulletproof hosting. Questo è uno dei primi tipi di C&C.

Un computer zombie accede a una pagina web o a un dominio appositamente progettati per restituire l’elenco dei comandi di controllo.

Il vantaggio dell’uso di pagine web o domini come C&C, consiste nel consentire un controllo e un mantenimento con un semplice codice e può essere facilmente aggiornato.

Gli svantaggi dell’utilizzo di questo metodo sono che è necessaria una notevole larghezza di banda e che i domini possono essere facilmente sequestrati dalle agenzie governative senza molti problemi. Se i domini che controllano le botnet non vengono sequestrati, divengono obbiettivi facili per attacchi DoS.

Il DNS fast-flux può essere usato come un modo per rendere difficile rintracciare i server di controllo. I server di controllo possono anche passare ad altri domini DNS, con gli algoritmi di generazione del dominio utilizzati per creare nuovi nomi DNS per i server controllori.

Alcune botnet utilizzano servizi di hosting DNS gratuiti come DynDns.org, No-IP.com e Afraid.org per indirizzare un sottodominio verso un server IRC che ospita i bot. Questi servizi DNS gratuiti forniscono indirizzi spesso codificati nel file eseguibile della botnet. La rimozioni di questi servizi può paralizzare l’intera botnet.

Esempi notevoli[modifica | modifica wikitesto]

Tra le decine di botnet nati negli anni 2000-2010 e di cui nel 2015 non sia ancora stata attestata completa dismissione, menzioniamo due esempi, entrambi, diffuse tramite trojan su piattaforme Microsoft Windows:

I botnet e la criminalità[modifica | modifica wikitesto]

I botnet sono diventati ultimamente fonte di interesse per la criminalità organizzata. Sono infatti un sistema per guadagnare soldi in modo illegale. I botmaster infatti vendono i servizi dei botnet a clienti che vogliono compiere azioni illegali. Tra le azioni che i botnet hanno a "catalogo" ci sono:

  • Denial of service: attacco massivo contro qualcuno : DDos ; DoS ; DRDos
  • Spam: campagne di spam con lo scopo di vendere prodotti (spesso illegali)
  • Phishing: campagne di spam con lo scopo di carpire credenziali a scopo di furto, riciclaggio, Informazioni , ecc.
  • Spyware: è un software maligno che invia informazioni riguardanti l'attività online di un utente senza il suo consenso, trasmettendole ad un'organizzazione che le utilizzerà per trarne profitto.

Contromisure[modifica | modifica wikitesto]

Il Botnet è un problema complesso , che richiede una soluzione complessa. Il Botnet è diverso da qualsiasi altra minaccia di malware in cui eliminare il malware nell'ospite elimina la minaccia. Un botnet è costituito da componenti che sono al di là del ospitante, in tal modo, eliminando il malware e fissando la macchina compromessa non uccide il botnet. Il processo rimuove semplicemente l'ospite dal botnet ma esso è ancora vivo perciò bloccando un botnet non fermerà i criminali informatici dalla distribuzione. Questo è il motivo per cui la lotta contro il botnet Viene combattuto su due fronti:

  • Il fronte tecnico
  • Il fronte legale

Il fronte tecnico[modifica | modifica wikitesto]

Il punto di vista tecnico si concentra Nella battaglia sui due componenti principali del botnet: host e la rete.

La dispersione geografica del botnet significa che ogni recluta deve essere identificato individualmente/rinchiuso/riparato e limita i benefici di filtraggio. Alcuni botnet utilizzano DNS liberi e i servizi di hosting come DynDns.org, No-IP.com, e Afraid.org per puntare un sottodominio verso un server IRC che ospita i bot. Mentre questi servizi DNS gratuiti non ospitano gli attacchi, ma forniscono punti di riferimento. La rimozione di tali servizi può paralizzare un intero botnet. Alcuni botnet implementano versioni personalizzate dei protocolli molto ben noti. Le differenze tra le implementazioni possono essere utilizzati per il rilevamento di botnet. Ad esempio, Mega-D dispone di una implementazione del protocollo SMTP leggermente modificata per la capacità di test dello spam. Filtrare il server SMTP del Mega-D disabilita l'intero pool di bot che si basano sullo stesso server SMTP.

Il fronte legale[modifica | modifica wikitesto]

Le persone dietro un botnet devono essere ritenuti responsabili delle loro azioni in modo che sarà impedito farlo di nuovo e di fungere da esempio per altri cyber-criminali ancora in libertà.

Elenco storico di botnet[modifica | modifica wikitesto]

Nome Data di creazione Data di smantellamento N° stimato di bot Capacità dello spam

(bn/gg)

Alias
Bagle 2004 230.000 5.7 Beagle, Mitglieder, Lodeight
Marina Botnet 6.215.000 92 Damon Briant, BOB.dc, Cotmonger, Hacktool.Spammer, Kraken
Torpig 180.000[11] Sinowal, Anserin
Storm 160.000 3 Nuwar, Peacomm, Zhelatin
Rustock 2006 circa marzo 2011 150.000[12] 30 RKRustok, Costrat
Donbot 125.000[13] 0.8 Buzus, Bachsoy
Cutwail 2007 circa 175.000[13] 74 Pandex, Mutant (correlato a: Wigon, Pushdo)
Akbot 2007 1.300.000[14]
Srizbi marzo 2007 novembre 2008 450.000[15] 60 Cbeplay, Exchanger
Lethic 260.000 2
Xarvester 10.000 0.15 Rlsloup, Pixoliz
Sality 2008 circa 1.000.000[16] Sector, Kuku
Mariposa 2008 circa 2009 12.000.000[17]
Conficker novembre 2008 10.500.000[18] 10 DownUp, DownAndUp, DownAdUp, Kido
Waledac novembre 2008 marzo 2010 90.000[19] 1.5 Waled, Waledpak
Maazben 50.000 0.5
Onewordsub 40.000[20] 1.8
Gheg 30.000 0.24 Tofsee, Mondera
Nucrypt 20.000[20] 5 Loosky, Locksky
Wopla 20.000[20] 0.6 Pokier, Slogger, Cryptic
Asprox 2008 circa 15.000[21] Danmec, Hydraflux
Spamthru 12.000[20] 0.35 Spam-DComServ, Covesmer, Xmiler
Gumblar 2008 circa
BredoLab maggio 2009 novembre 2010 30.000.000 3.6 Oficla
Grum 2009 circa luglio 2012 560.000[22] 39.9 Tedroo
Mega-D 509.000[23] 10 Ozdok
Kraken 400.000[24] 9 Kracken
Festi agosto 2009 250.000[25] 2.25 Spamnost
Vulcanbot marzo 2010
LowSec gennaio 2010 11.000 0.5 LowSecurity, FreeMoney, Ring0.Tools
TDL4 2010 circa 4.500.000[26] TDSS, Alureon
Zeus 3.600.000[27] Zbot, PRG, Wsnpoem, Gorhax, Kneber
Kelihos 2010 2011/2012 300.000 4 Hlux
Ramnit 2011 circa febbraio 2015 3.200.000[28]
Zer0n3t 2013 2013 200 + computer server 4 Fib3rl0g1c, Zer0n3t, Zer0Log1x
Chameleon 2012 circa 120.000
Mirai (malware) agosto 2016 380.000
Koobface 2.900.000[27] Ali Baba & 4

I ricercatori dell'Università della California, presero il controllo di una botnet che è risultata sei volte più piccola del previsto, questo perché è comune che alcuni utenti cambino varie volte il loro indirizzo IP in un giorno. La stima della dimensione della botnet in base al numero di indirizzi IP potrebbe non fornire una rappresentazione accurata della dimensione della botnet. [29]

Fonti[modifica | modifica wikitesto]

  1. ^ a b FORTINET, Anatomy of a Botnet, p. 1,2,3,4.
  2. ^ (EN) Know Your Enemy: Fast-Flux Service Networks | The Honeynet Project
  3. ^ a b (EN) Elisan, Christopher, Malware, Rootkits & Botnets A Beginner's Guide, McGraw Hill Professional, p. 69, ISBN 0071792066.
  4. ^ (EN) Gunter Ollmann, Botnet Communication Topologies, Damballa Inc..
  5. ^ Schiller, Craig A., Botnets : the killer web app, Syngress Pub, 2007, ISBN 9781597491358, OCLC 162131556.
  6. ^ a b Simon Heron, Botnet command and control techniques, in Network Security, vol. 2007, nº 4, 1° aprile 2007, pp. 13–16, DOI:10.1016/S1353-4858(07)70045-4. URL consultato il 29 novembre 2017.
  7. ^ Stavroulakis, Peter. e Stamp, Mark., Handbook of information and communication security, Springer, 2010, ISBN 9783642041174, OCLC 663093967.
  8. ^ La botnet, su di-srv.unisa.it.
  9. ^ Schiller, Craig A., Botnets : the killer web app, Syngress Pub, 2007, ISBN 9781597491358, OCLC 162131556.
  10. ^ Peer-to-Peer Botnets for Beginners, su malwaretech.com.
  11. ^ (EN) Researchers hijack control of Torpig botnet, in SC Media US, 05 maggio 2009. URL consultato il 27 novembre 2017.
  12. ^ (EN) The Rustock botnet spams again, in SC Media US, 25 luglio 2008. URL consultato il 27 novembre 2017.
  13. ^ a b (EN) Spam Botnets to Watch in 2009, su www.secureworks.com. URL consultato il 27 novembre 2017.
  14. ^ (EN) New Zealand teenager accused of controlling botnet of 1.3 million computers - The H Security: News and Features, su www.h-online.com. URL consultato il 27 novembre 2017.
  15. ^ (EN) Spam on rise after brief reprieve, 26 novembre 2008. URL consultato il 27 novembre 2017.
  16. ^ Sality: Story of a Peer-to-Peer Viral Network (PDF), su symantec.com.
  17. ^ (EN) How FBI, police busted massive botnet. URL consultato il 27 novembre 2017.
  18. ^ News from the Lab Archive : January 2004 to September 2015, su www.f-secure.com. URL consultato il 27 novembre 2017.
  19. ^ (EN) Waledac botnet 'decimated' by MS takedown. URL consultato il 27 novembre 2017.
  20. ^ a b c d (EN) Gregg Keizer, Top botnets control 1M hijacked computers, in Computerworld. URL consultato il 27 novembre 2017.
  21. ^ (EN) Botnet sics zombie soldiers on gimpy websites. URL consultato il 27 novembre 2017.
  22. ^ Research: Small DIY botnets prevalent in enterprise networks (JPG), su zdnet.com.
  23. ^ Oleg Nikolaenko, Mega-D Botmaster to Stand Trial, su garwarner.blogspot.it. URL consultato il 27 novembre 2017.
  24. ^ (EN) New Massive Botnet Twice the Size of Storm, in Dark Reading. URL consultato il 27 novembre 2017.
  25. ^ (EN) Spamhaus Declares Grum Botnet Dead, but Festi Surges, su PCWorld. URL consultato il 27 novembre 2017.
  26. ^ (ES) Cómo detectar y borrar el rootkit TDL4 (TDSS/Alureon), in infoALEPH, 03 luglio 2011. URL consultato il 27 novembre 2017.
  27. ^ a b (EN) Ellen Messmer, America's 10 most wanted botnets, in Network World. URL consultato il 27 novembre 2017.
  28. ^ (EN) Europol takedown of Ramnit botnet frees 3.2 million PCs from cybercriminals’ grasp, in Naked Security, 27 febbraio 2015. URL consultato il 27 novembre 2017.
  29. ^ (EN) Tom Espiner, Botnet size may be exaggerated, says Enisa | ZDNet, in ZDNet. URL consultato il 27 novembre 2017.

[1]Voci correlate[modifica | modifica wikitesto]

Sicurezza informatica Portale Sicurezza informatica: accedi alle voci di Wikipedia che trattano di sicurezza informatica