• Non ci sono risultati.

Algoritmi di Scanning dei Worm

3.2 Worm

3.2.5 Algoritmi di Scanning dei Worm

La velocit`a di propagazione di un worm `e limitata dal tempo per la scoperta di nuove vittime potenziali. Lo scanning `e quindi il processo usato dal worm per cercare nuove vittime, o meglio conoscere il loro indirizzo [38]. Un worm pu`o semplicemente effettuare lo scan dell’intero spazio degli indirizzi di rete IPv4, o in maniera pi`u intelligente, eseguire lo scan parziale del dominio di tutti i possibili indirizzi di rete per individuare host possibilmente vulnerabili. Le tecniche principali di scanning per l’analisi della rete da parte dei worm sono [41]:

1. Random;

2. Random selettiva; 3. Routable;

4. Divide & Impera. Random scan

Il primo metodo applica un approccio a forza bruta per la ricerca di indirizzi di macchine vulnerabili, eseguendo uno scan dell’intero spazio degli indiriz- zi di IPv4, che contiene 232 possibili indirizzi IP. Esistono due modelli per

simulare la propagazione di un worm attraverso l’analisi casuale dei vari indi- rizzi: il modello epidemologico di Kephart [21] ed il modello a tempo discreto AAWP proposto da Chen [7]. Seguendo il modello AAWP, la propagazione di un worm `e caratterizzata come segue:

ni+1= ni+ [N − ni][1 − (1 −

1 Ω)

sni]

dove ni rappresenta il numero di macchine infettate al tempo i, N il numero

totale delle macchine vulnerabili presenti in Internet, Ω il numero degli indi- rizzi che un worm riesce ad analizzare casualmente, s il numero di pacchetti di scan inviati da una macchina infetta per unit`a di tempo. Quindi il numero di macchine infette al tempo i+1 sar`a dato dalla somma tra il numero delle macchine infette al tempo i ed il numero di macchine vulnerabili, non infette al tempo i, [N − ni] moltiplicato per la probabilit`a [1 − (1 −1)sni], che una

macchina non ancora infetta sia infettata al tempo i+1. Selective Random scan

La seconda tecnica di scan prevede invece di analizzare solo una parte di tutti i possibili indirizzi Ipv4 presenti nella rete. Ci`o permette una propagazione pi`u veloce del worm, poich´e non si spreca tempo ad analizzare indirizzi non allocati. Ad esempio, `e possibile utilizzare la mappa di allocazione degli indirizzi IPv4 di IANA3. Tuttavia i worm che utilizzano questa forma di scan necessitano di memorizzare nel loro codice informazioni riguardo gli indirizzi obiettivo dell’attacco, informazioni che possono essere anche piu di mille bytes.

3IANA(Internet Assigned Numbers Authority) `e l’organismo responsabile per la

Figura 3.6: Confronti con il Random scan

La figura 3.6 confronta le due tecniche finora descritte. Si assume che il numero N delle macchine vulerabili sia 500000, il tasso di scan s `e pari a 2 scans al secondo. Il random scan usa l’intero spazio degli indirizzi IPv4, cio`e 232 ≈ 4.3 × 109 indirizzi. Il select random scan usa circa 2.7 × 109 indiriz-

zi. La figura 3.6 evidenzia che un worm si propaga molto piu velocemente utilizzando la tecnica di analisi casuale selettiva.

Routable scan

La terza tecnica permette di analizzare esclusivamente lo spazio degli indiriz- zi di rete ottenuti dalle tabelle di routing e non l’intero spazio degli indirizzi IP. Ci`o incrementa notevolmente la velocit`a di propagazione e l’efficienza del worm. Tuttavia, lo svantaggio di questa tecnica consiste nel volume di da- ti, il database degli indirizzi di route, che il worm deve trasportare dietro. Un’ottimizzazione che permette di ridurre tale volume sfrutta le risorse otte- nute attraverso il BGP (Border Gateway Protocol)4, che permette ai worm

di tenere memoria solo degli indirizzi effettivamente routed. Tuttavia, il ca- 4Border Gateway Protocol `e un protocollo di routing, funziona attraverso la gestione

di una tabella di reti IP, o prefissi, che forniscono informazioni sulla raggiungibilit`a delle diverse reti tra pi`u Autonomous System. Si tratta di un protocollo di routing a indica- zione di percorso (path vector), che non usa metriche di carattere tecnico ma prende le decisioni di instradamento basandosi su politiche (regole) determinate da ciascuna rete. E’ stato creato per sostituire il protocollo di routing EGP e consentire un instradamento completamente decentralizzato, eliminando cos`ı gli ostacoli che impedivano la soppressione della dorsale Internet NSFNET. In tal modo Internet `e divenuta un sistema pienamente decentralizzato.

Figura 3.7: Comparazione dei diversi metodi di scan

rico `e ancora elevato. Per cercare di ridurre le dimensioni dello spazio degli indirizzi, il worm pu`o:

• raccogliere i prefissi degli indirizzi contenuti nella route table del BGP, si stima la presenza di circa 112K prefissi, e rimuovere quei prefissi che sono pi`u specifici se il supernet gi`a `e contenuto in tabella;

• fondere i segmenti di indirizzi contigui, ad esempio se nella tabella coesistono i prefissi 3.0.0.0/8 e 4.0.0.0/8, questi si possono unire in nuovo segmento che spazia da 3.0.0.0 a 4.255.255.255. Dopo queste operazioni l’intero spazio degli indirizzi IPv4 `e ridotto a circa 1.17 × 109

indirizzi;

• fondere segmenti di indirizzi tra loro vicini, ovvero tali che la loro di- stanza non superi una soglia predefinita: 65536. Ci`o provoca un’ul- teriore riduzione dello spazio degli indirizzi, che quindi risulta essere composto da 1.31 × 109 indirizzi IP.

Divide & Impera scan

La quarta tecnica di scan `e rappresentata dall’analisi Divide & Impera. An- che in questo caso anzich´e analizzare l’intero spazio degli indirizzi per cono- scere nuovi indirizzi Ip di host da infettare, il worm all’interno della macchina conquistata pu`o dividere lo spazio degli indirizzi Ip in due parti. Supponia- mo, per esempio, che la macchina A infetti la macchina B. A questo punto la macchina A divider`a gli indirizzi della sua tabella in due met`a, e trasmetter`a

Figura 3.8: Velocit`a di propagazione di uno scan Divide & Impera

a B una delle due. In questo modo, il worm sulla macchina A effettuer`a lo scan solo di met`a di tutto lo spazio degli indirizzi a sua disposizione. Anche B si comporta in modo analogo. Il peso del database degli indirizzi che il worm deve trasmettere `e fortemente ridotto, dato che, ogni nuova macchina infetta analizzer`a solo met`a dello spazio degli indirizzi IP che l’ha infettata. Uno svantaggio di questo metodo pu`o essere rappresentato dal crash di una macchina infetta. In questo caso, la parte degli indirizzi IP ad essa associati pu`o andare persa. Per risolvere questo problema, i worm possono infettare un ampio numero di computer prima di partizionare il database degli indiriz- zi, ed inserire gli indirizzi Ip, delle macchine che ricevono l’intero database, in una hitlist , in modo tale da sapere chi contattare per conoscere l’intero spazio degli indirizzi in caso di crash di una macchina. Altrimenti `e possi- bile usare un contatore da incrementare ogni volta che il worm infetta una nuova macchina. In base al valore del contatore si decide se dividere o no il database.

Per mostrare la velocit`a di propagazione della tecnica Divide & Impera si utilizza il modello AAWP.

Si assume che l’intero spazio degli indirizzi di route sia equamente suddi- viso tra i vari utenti infetti. In pratica, per`o, ogni macchina infetta utilizza uno spazio di scan diverso, dovuto al fatto che, ad ogni divisione dello spa- zio degli indirizzi, solo una met`a viene inviato alla macchine infettate. Si ottiene la seguente equazione che modella la velocit`a di propagazione della Divide & Impera scan:

ni+1 = ni+ [N − ni][1 − (1 −

1 Ω/ni

L’equazione evidenzia che la Divide & Impera `e leggermente pi`u veloce rispetto alla Routable scan. Comunque, uno dei vantaggi di questa tecnica `

e costituito dal fatto che un indirizzo di rete non `e mai utilizzato pi`u di una volta. Ad esempio, quando una macchina infetta A effettua lo scan di un in- dirizzo di rete d, non importa se l’infezione non ha avuto successo, comunque sia l’indirizzo d verr`a rimosso dall’insieme degli indirizzi per evitare di essere analizzato di nuovo, aumentando perci`o l’efficienza della propagazione.

Creazione di una VPN per una

rete di macchine virtuali ed

amministrazione della rete

Questo capitolo descrive l’architettura e l’implementazione di una rete priva- ta virtuale per la creazione di una rete di macchine virtuali (VPN). Una VPN cos`ı realizzata permette l’implementazione di uno strumento di amministra- zione remota, tramite il quale `e possibile gestire i Virtual Machine Monitor (VMM) presenti nella rete di macchine virtuali.

Infine viene descritto xmn (xen monitor network ), un’applicazione di rete che permette l’amministrazione remota della gestione degli hypervisor.

Documenti correlati