Dite la verità, come hacker, pentest o aspiranti tali, la tentazione di avere una botnet tutta per voi è molto forte; non tanto per poi utilizzarla veramente, ma solo per provare l’ebbrezza di poter controllare remotamente centinaia, migliaia di host e fargli fare un o’ quello che si vuole.

In un articolo precedente ho già descritto come si possa utilizzare Metasploit, framework che adoro, per creare una botnet; ma in quel caso per effettuare poi attacchi di tipo DDos occorre comunque installare un payload nello zombie, cosa che va eseguita in maniera puntuale su ogni singola macchina… piuttosto laborioso se gestiamo migliaia di bot.

Siccome non sono uno sviluppatore (Non finirò mai di ringraziare il Signore per questo), ma vogliamo comunque la nostra botnet a tutti i costi dobbiamo trovare una soluzione alternativa.

Qualche giorno fa mi sono imbattuto nel sito ufonet.03c8.net, il quale permette di scaricare un tool che si chiama appunto ufonet. Decido di utilizzare uno dei miei laptop personali sul quale ho una distribuzione kali, per provare a giocarci. Vediamo come funziona.

Prima di tutto va fatta una breve introduzione sugli attacchi DDos: ormai sappiamo tutti cosa significa l’acronimo e qual è il risultato finale di un attacco DDoS, ma probabilmente molti dettagli sfuggono. In generale gli attacchi di tipo Denial-of-Service possono essere di due categorie principali, ovvero Volume Based, oppure Exploit Based. Gli exploit based sfruttano appunto vulnerabilità specifiche per interrompere un servizio ed in questo caso un solo pc è sufficiente per raggiungere lo scopo. I Volume Based si dividono a loro volta in due sotto categorie che definiamo Connection Based e Connectionless.

Partiamo dagli attacchi Connectionless, ovvero quelli che non stabiliscono una sessione, ovvero non completano un three-way-handshaking verso la vittima, ma usano protocolli come ICMP o UDP per floodare il server di destinazione. Anche i Connection Based lavorano su grandi volumi di traffico ma, ad ogni sessione inviata, completano il three-way-handshaking, di fatto stabilendo una connessione completa.

La scelta della tipologia di attacco viene generalmente effettuata in base alla conoscienza che si ha della vittima, che tipo di protezione sappiamo implementi, ecc.

Ma veniamo nello specifico: Ufonet effettua attacchi DDoS Connection Based i quali sfruttano vettori Open Redirect per portare l’attacco. Cosa significa? Beh, significa per esempio che ogni bot, o zombie, viene controllato tramite richieste http appositamente forgiate, quindi non c’è nulla da installare sugli zombie, niente malware, che significa niente controlli antivirus e antimalware!

Ma cosa è una Open Redirect? Come specificato nel CWE-601, una open redirect vulnerability consente sostanzialmente di pilotare un web server generando connessioni verso un altro sito; significa sostanzialmente che, tramite una richiesta http malformata, possiamo istruire il web server che funge da zombie a connettersi ad un altro web server.

Dal punto di vista “architetturale” possiamo utilizzare il nostro pc, magari dietro un bel tor proxy, per generare richieste open redirect su server vulnerabili, istruendoli per connettersi tutti allo stesso momento verso un’unica vittima, effettuando quindi un attacco DDoS Connection Based a livello 7, secondo quanto illustrato nella seguente figura

Beh, pare proprio che siamo in presenza di un tool che permetta un po’ a tutti di avere la propria botnet, ma è veramente tutto così facile? Vediamo.

Innanzitutto notiamo che, dall’help che viene visualizzato a video, c’è un’opzione molto interessante che permette di scaricare da un server centrale un elenco di zombie gia individuati come sfruttabili. La sintassi è la seguente

 

ufonet --download-zombies

Abbiamo quindi anche la possibilità di non partire proprio da zero, ma di lavorare su una base di zombie già abbastanza consistente (nel mio test sono stati scaricati circa 2600 zombie).

Ma se volessimo incrementare questa lista? Si sa, nuovi siti web vengono fuori ogni giorno e praticamente tutti hanno delle vulnerabilità, qualcuno che sia vulnerabile all’open redirect lo troveremo pure.

Per questo scopo possiamo far riferimento alle dorks di google, bing, ecc. Possiamo cioè individuare potenziali zombie sfruttando i motori di ricerca.

In una delle directory vengono già forniti dei dork da utilizzare e per cercare nuovi zombie è sufficiente utilizzare la seguente riga di comando

 

ufonet --sd 'botnet/dorks.txt'

Partirà una procedura automatica che si connetterà d bing (per default) cercando nuovi potenziali zombie, ognuno dei quali verrà poi verificato e poi eventualmente inserito nella nostra lista di zombie utilizzabili.

Bene! Abbiamo i nostri zombie da usare, ma come facciamo a scatenare l’inferno?  Beh potremmo prima di tutto verificare che gli zombie siano in grado di sferrare l’attacco. Possiamo farlo indirizzando il DDoS verso noi stessi, con la seguente riga di comanto

 

ufonet --attack-me

Tranquilli, al nosto pc non succederà nulla, si tratta solo di vedere come gli zombie reagiscono ai nostri comandi.

Per sferrare l’attacco vero e proprio il comando da dare è questo

 

ufonet -a http://target.com -r 10

Dove ovviamente va sostituito target.com con il sito che vogliamo attaccare. Il parametro -r sta ad indicare il numero di round che vogliamo implementare, cioè quante volte i nostri zombie attaccherano la vittima. A volte bastano pochi round, altre volte bisogna insistere un po’ per fare in modo che il sito vittima non risponda più.

A questo punto nasce un problema: come verifichiamo che il sito sia veramente irraggiungibile? Potreste dire “beh, semplice: se il mio browser non lo apre significa che è giù”… vero, ma non verissimo. Per verificare che effettivamente il sito sia down esistono dei siti che effettuano richieste http da sorgenti molteplici per verificare appunto che un sito sia up o down. Il più utilizzato in questo senso è http://isup.me/

Ufonet è un tool molto vasto, ci sono numerose opzioni che non spiegherò in questa sede. Il mio scopo era solo quello di fornirvi le conoscienze minime per poter giocare con lo strumento.

Prima di chiudere vi ricorda una cosa fondamentale: Lanciare attacchi DDoS verso un server è illegale, a meno che non disponiate delle necessarie autorizzazioni. Vi invito quindi a non fare nulla che possa sporcare la vostra fedina penale… mi raccomando!

 

 

 

 

 

Lascia un commento

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