Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
UNIVERSITÀ DEGLI STUDI DI PARMA
FACOLTÀ DI INGEGNERIA
CORSO DI LAUREA SPECIALISTICA IN
INGEGNERIA DELLE TELECOMUNICAZIONI
ANALISI DELLE BOTNET DI NUOVA
GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE
IN AMBIENTE EMULATORelatore:Chiar.mo Prof. Ing. LUCA VELTRI
Tesi di laurea di
STEFANO FANTI
Correlatori:Dott. Ing. NATALYA FEDOTOVA
Dott. Ing. ROBERTO TANARA
ANNO ACCADEMICO 2008-2009
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Obiettivi
• Analisi delle caratteristiche generali delle moderne Botnet
• Studio dello Storm worm
• Implementazione del Botnet Emulator
• Confronti sull’evoluzione di diversi scenari di rete
• Sviluppi futuri
1/19
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Le Botnet• Reti di host (Bot), connessi ad Internet, controllati da un’unica entità:
il Botmaster
2/19
• Il codice malevolo dell’infezione può compromettere un host
sfruttando:
- utilizzo di malware come worm,
trojan-horse, spyware, adware,
keylogger, backdoor
- vulnerabilità dei browser web
- assenza delle più recenti patch di sicurezza
• Il canale di comunicazione (Command & Control)
tra Botmaster e host può essere formato da:
- uno o più server centralizzati
- rete peer-to-peer (P2P)
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Perchè creare una Botnet?
• Furto di informazioni riservate:
- credenziali di accesso per
webmail, FTP, POP3, SMTP,
HTTP
- password di sistema
- tutto ciò che viene digitato da
tastiera (grazie ai keylogger)
3/19
• Esecuzione di attacchi informatici
su comando del Botmaster:
- Distributed Denial of Service
- Phishing
- Spamming
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Perchè creare una Botnet?
4/19
• Alcuni dati (ottenuti tramite infiltrazione nella Botnet “Torpig”):
- 70 GB di dati raccolti tra cui 300.000 credenziali di accesso (cifrate e non)
- 47.000 password rubate in Italia (principalmente da PayPal e Poste Italiane)
- 1.700 codici di carte di credito rubati : 49% in USA, 12% in Italia
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Le Botnet
• Come avviene un tipico attacco:
5/19
1 2
3
45
BOTMASTER
EXPLOIT
MACHINE
BOTSERVER /
P2P NETWORK
BOTCONTROLLER
HOST
TARGET
Infezione Secondaria
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Le Botnet di tipo Peer To Peer
• Il canale di C&C sfrutta una rete P2P
• Le tecniche P2P sono utilizzate sia per la diffusione di risorse
infette che per il controllo da parte del Botmaster
6/19
• VANTAGGI: - rendono difficile il Botnet tracking
- non è semplice bloccare la loro attività
• SVANTAGGI: - è più difficile eseguire la peer-discovery
- maggiore latenza di rete
• TIPOLOGIE: - closed P2P networks (protocolli ad hoc)
- open P2P networks (usano reti esistenti)
• SVILUPPI: - design di nuove funzionalità
(propagazione, invisibilità nel sistema,
nuovi obiettivi da raggiungere)
- nuove strategie di C&C (detection)
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Storm
• Dal 2007 inizia la sua attività infettiva, mediante spamming:
milioni di mail inviate contenevano un eseguibile che si rivelò
essere un Trojan, e venne chiamato Peacomm.
7/19
• L’eseguibile è polimorfico per
rendere più difficile la detection
• L’iniezione del payload avviene in
modalità kernel, tramite il driver
wincom32.sys e sfruttando il
processo services.exe, che attiva le
thread per le comunicazioni P2P
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti 8/19
Storm
• Protocollo di comunicazione utilizzato da uno Storm-bot:
1 Connessione ad Overnet
(rete P2P esistente) o a
Stormnet
2 Download dell’URL
dell’infezione
secondaria
3 Decryption dell’URL
4 Download dell’infezione secondaria
5 Esecuzione dell’infezione
• L’algoritmo di crittografia a chiave pubblica usato da Storm: RSA
- PU = [e,n] PR=[d,n] modeC M n moddM C n
- n = pXq ( ) ( 1)( 1)n p q gcd( ( ), ) 1n e 1 mod ( )d e n
• In Storm: d è hard-coded nel bot, n si ricava dai search_result
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Storm• Pubblicazione e ricerca di aggiornamenti:
9/19
- In Overnet ogni chiave è
pubblicata presso 20 peer diversi
- Ogni bot ricerca una chiave
specifica in un determinato istante,
scelta da un insieme noto a priori al
Botmaster: key = f(d,r)
- I bot utilizzano particolari
identificativi denominati “chiavi”
• Numero di IP
differenti che
effettuano:
- ricerche (SX)
- pubblicazioni (DX)
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Implementazione del Botnet Emulator• Obiettivo: emulare una Botnet di tipo peer to peer che utilizza
Kademlia come algoritmo DHT per il routing e la gestione degli ID
di nodo e delle tabelle di hash delle risorse
10/19
• L’evoluzione della Botnet avviene grazie alle operazioni eseguite
dai peer emulati, che interagiscono tra loro condividendo e
ricercando risorse e update fittizi
• Dopo la join, ogni peer ricerca nella Botnet un file di
aggiornamento (BotUpdate1.dll): rappresenta un tentativo di
connessione al Botmaster
• Lo scheduling degli eventi emulati (join / leave / put / get) è
aleatorio, ma rispetta le distribuzioni dei tempi di inter-evento
impostate dall’utente a inizio emulazione
• Ambiente di sviluppo utilizzato: Eclipse
• Framework utilizzato: DLS
JAVA
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Il framework DLS• Obiettivo: permettere la creazione di applicazioni peer to peer
basate sul concetto di “Distributed Location Service”
11/19
• Sistema DHT-based che permette
ai nodi di gestire al loro interno
associazioni tra chiavi (URI) e
valori corrispondenti (contatti)
• Il protocollo DLS permette all’utente di focalizzarsi sullo sviluppo
applicativo, ignorando i dettagli della DHT e della comunicazione
peer to peer
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Il framework DLS• Schema del progetto DLS:
12/19
• Azioni eseguite dai peer:
- join:
permette la registrazione del
peer nella DHT
- put:
registra nel DLS
l’associazione tra una chiave
(URI) e una lista di contatti
- get:
ricerca nel DLS i contatti
associati alla risorsa
- leave:
permette al peer di
abbandonare il DLS
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Il Botnet Emulator• Schema delle classi dell’emulatore:
13/19
Emulation Manager
• Emulation Timer
• Statistics & Logs
• Finds Peer & Resources for Actions
• DHT Callbacks
Emulation Timer
• Timer
• Interevent-Time
Emulation Constants
• Emulation Time
• Peer & Resources Life Time
• File Paths
• Botnet Flags
Peer Action
• Create & Join Peer
• Put/Get Resources/Updates
• Leave Peer
Peer
• DLS Application
• BotnetFlag(true)
• EmulationLog
Resource
• Resource Name
• Resource Flag
Resource Index
• Get BotnetResource From File
Resource Arrays
• BotnetResource Lists
Emulation Log
• Main Log
• Peer Log
• Statistics Log
Resource Statistics
• BotnetResource
• Peer/TimeStamp Vectors
Emulation
• Emulation Manager
• Event Timer
• Botnet Peer Actions
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Il Botnet Emulator
• Tempi di interevento:
- distribuzioni esponenziali negative
- possibilità di impostare il valor medio
(in sec.) della distribuzione di ciascuna
azione: join/put/get/leave
14/19
( ) .exp ( )
1[
( ) 1 exp
]
X
X
f x x u x
E X
F x x
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Il Botnet Emulator• Log generati dall’emulatore:
- Emulator.log
registra tutte le azioni di tutti i peer
15/19
- IP.port.log
registra le sole azioni che riguardano il peer
specificato
- ResourceStatistics.log
registra per tutte le risorse i peer che effettuano
put/get e il time dell’azione
- ResName_PUT/GET.log
registra hostport e time in cui
avvengono put/get sulla
risorsa ResName
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Il Botnet Emulator• Elaborazione e confronto dei risultati ottenuti dalle emulazioni:
n° totale peer generati, n° peer attivi, n° max peer attivi
- Test 1: E[join] = E[leave] = E[put] = E[get] = 30 sec
16/19
- Test 2: E[join] = 5 sec; E[leave] = 30 sec;
E[put] = 50 sec; E[get] = 40 sec
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Il Botnet Emulator• Elaborazione e confronto dei risultati ottenuti dalle emulazioni:
percentuale di peer che hanno pubblicato/ottenuto risorse
- Test 1: E[join] = E[leave] = E[put] = E[get] = 30 sec
% put/get della risorsa BotUpdate
17/19
- Test 2: E[join] = E[leave] = E[put] = E[get] = 30 sec
% get BotUpdate vs % get altre risorse
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Il Botnet Emulator• Elaborazione e confronto dei risultati ottenuti dalle emulazioni:
percentuale di peer che hanno ottenuto l’aggiornamento
- Test: % get riuscite sulla risorsa BotUpdate
variando i tempi medi di interevento [join-put-get-leave]
18/19
WLAN/3G secure authentication based on SIPUniversità degli Studi di Parma
Dipartimento di Ingegneria dell'InformazioneANALISI DELLE BOTNET DI NUOVA GENERAZIONE BASATE SU PEER TO PEER
E IMPLEMENTAZIONE IN AMBIENTE EMULATO
11-12-2009Stefano Fanti
Conclusioni
• Realizzazione di un emulatore di reti Botnet Peer To Peer
• Configurabilità dei parametri di ingresso del Botnet Emulator
• Confronto grafico delle dinamiche di rete in diversi scenari
• SVILUPPI FUTURI:
- introduzione di nuove variabili di sistema
- implementazione di tecniche di infiltrazione e attacco alla Botnet
19/19