Dimostrazione di HIP nel SO Linux

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Dimostrazione di HIP nel SO Linux"

Transcript

1 Facoltà di Ingegneria Corso di Studi in Ingegneria Informatica Elaborato finale in Protocolli per Reti Mobili Anno Accademico 2011/2012 Candidato: RAFFAELE OLIVIERO matr. N

2 Indice Introduzione Host Idendity Protocol Funzionamento standard Host Identity Protocol for Linux Implementazione Endpoint Resolution HIPL Application Programming Interface Legacy HIPL API Native HIPL API Endpoint Resolution nelle API natvie Architettura Kernel Based Version HIP Module Hooks in the Linux Networking Stack Database Resolver HIP Socket Handler User Space Version Testing Installazione Primo Test Secondo Test Conclusioni II

3 Introduzione Nel corso degli ultimi venti anni, Internet ha subito una rapida e straordinaria evoluzione, diventando parte integrante della vita di milioni di persone. Eppure nel tempo sono emersi alcune carenze nella tecnologia TCP/IP come: la gestione di terminali mobili e multi-homed; l impossibilità di contrastare attacchi Denial-of-Service (DoS); l impossibilità di garantire l autenticità e confidenzialità dei messaggi; interoperabilità tra IPv4 e IPv6; Nonostante molti di questi problemi siano ormai riconosciuti da tempo manca ancora un adeguata e completa soluzione. Inoltre la maggior parte degli approcci sono mirati alla risoluzione di un singolo problema escludendo di fatto le integrazioni con altre soluzioni e rendendo quindi impossible la costruzione di una base stabile dalla quale partire. Host Identity Protocol (HIP) si propone come soluzione a tali problemi fornendo un approccio integrato che bene si adatta all architettura TCP/IP esistente. In questo elaborato di tesi, oltre a dare una breve panoramica sul protocollo HIP, si vogliono valutare le funzionalità di una particolare implementazione di HIP per sistemi Linux-based: HIP for Linux (HIPL) [1]. In particolare si articoleranno diverse fasi di test ognuna improntata su un particolare servizio fornito. 4

4 Capitolo 1 Host Idendity Protocol 1.1 Funzionamento standard L idea di HIP viene introdotta nell amito dell Internet Engineering Task Force (IETF) già nel 1999 ma la creazione di un Working Group e di un Research Group avvengono solo nel Infine viene standardizzato nella RFC 4423 del 2006 [2]. Pur riconoscendo l importanza dei due namespaces fondamentalii di Internet, l Internet Protocol (IP) addres e il Domain Name Service (DNS), nel documento si sottolinea la necessità di colmare il gap che separa i due namespaces introducendone uno nuvo: l Host Identifiers (HIs). L idea fondamentale su cui si basa HIP è infatti quella di separare l identità di un host dalla sua posizione topologica nella rete. Ogni host può avere una o più HI a partire dalla quale, a valle di un processo crittografico si perviene alla creazione di una coppia di chiavi: una pubblica ed una privata. In particolare la chiave pubblica prende il nome di Host Identity Tag (HIT) anche se, al fine di mantenere la compatibilità con socket basate su IPv4, esiste anche un altra rappresentazione dell HI: Local Scope Identity (LSI). Ovviamente anche se rappresentano un nodo questi indirizzi non possono essere usati per raggiungere un host. Pertanto HIP prevede di interporre tra il livello rete e quello trasporto un nuovo sottolivello capace di effettuare la traduzione Figura 1.1: Infrastruttura HIP da HIT/LSI a indirizzo IP. Per garantire la sicurezza nelle trasmissioni, di default tutti i pacchetti in HIP vengono trasportati utilizzando IPsec Encapsulated Security Payload (ESP). I pacchetti vengono smistati utilizzando il Security Parameter Index (SPI) che identifica univocamente una Security Association (SA) instaurata tra due hosts utilizzando i rispettivi HIT. Questo fornisce non solo un grande supporto alla mobilità ma non rende necessario la trasmissione dell HIT nel pacchetto, riducendone la grandezza. Per stabilire una SA i due host utilizzano HIP Base Exchange. In questa fase vengono scambiati quattro messaggi tra l host che manda il primo pacchetto (Initia- 5

5 tor) e quello che lo riceve (Responder). Tale procedura è stata progettata in modo da poter contrastare attacchi DoS, utilizzando un puzzle crittografato che l Initiator deve risolvere prima che il Responder crei una connessione, e replay attack, autenticando le due entità coinvolte mediante l uso di una chiave condivisa attraverso il protocollo Diffie-Helman. Figura 1.2: HIP Base Exchange Il supporto di HIP alla mobilità ed al multihoming viene descritto nella RFC 5206 del 2008 [3]. Tale documento affronta solo gli scenari fondamentali della mobilità e del moultihoming, mentre i casi più avanzati sono stati lasciati ad uno studio futuro. Quando un nodo mobile si sposta in una nuova rete o sottorete mantiene il proprio HI ma cambia l indirizzo IP. Questo significa che, poiché a livello TCP le entità vedono gli HIT, le connessioni restano attive anche se poi effettivamente l IP cambia. Ovviamente quando l indirizzo IP cambia il nodo mobile deve notificarlo al corrispondente, mediante un messaggio di UPDATE, affinchè quest ultimo possa aggiornare la corrispondenza tra HIT e nuovo indirizzo IP. Ma se un host non conosce l indirizzo IP attuale del nodo mobile non può instaurare alcuna connessione HIP con lo stesso. Tale problema viene risolto dal Randezvous server (RVS) [4] il cui indirizzo IP è fisso o comunque ottenibile con una semplice query DNS e che conosce sempre l indirizzo IP aggiornato Figura 1.3: Update singnaling del nodo mobile perchè quest ultimo usa un protocollo di registrazione ogni qual volta cambia IP per informare il RVS. 6

6 L uso di HIP non elimina la necessità dell utilizzo del DNS. In una prima implementazione si era pensato di salvare gli HITs nei record AAAA solitamente destinati agli indirizzi IPv6. Successivamente, per supportare tutti gli altri parametri di HIP, nei server DNS fù introdotto un campo specifico per HIP: Resources Records (RR). Le estensioni del DNS sono descritte nella RFC 5205 del 2008 [5]. Infine, per mantenere al compatibilità con le applicazioni legacy, si utilizza un DNS proxy che intercetta le richieste di risoluzione ed elabora i risultati inviando all applicazione solo i risultati di cui ha effettivamente bisogno. 7

7 Capitolo 2 Host Identity Protocol for Linux 2.1 Implementazione HIP for Linux (HIPL) è un progetto software del Helsinki Institute of Information Technology (HIIT) e Helsinki University of Technology (TKK) nato con lo scopo di creare un implementazione di HIP per GNU/Linux OS. Fondamentalmente è un progetto di ricerca ma rappresenta un ottima referenza nel caso in cui, un giorno, si vorrà integrare HIP nel kernel ufficiale di Linux. Il progetto si divide in due rami fondamentali: Kernel Based Vesion, che può essere sia compilata staticamente nel kernel o utilizzata come modulo e si occupa di intercettare e, se necessario, modificare il traffico IPv6 in entrata e in uscita. User Space Vesion, un demone che fornisce un supporto crittografico al kernel implementando funzioni fondamentali come la creazione di chiavi Diffie- Hellman e Digital Signature Algorithm (DSA). Dal momento che tali operazioni richiedono una grande quantità di tempo per essere completate e visto che il kernel è non-preemptive, devono essere effettuate in user mode; Endpoint Resolution Le applicazioni di rete comunemente utilizzano il Fully Qualified Domain Name (FQDN) per stabilire una connessione tra due host. L interfaccia che fornisce la risoluzione del nome viene comunemente conosciuta come resolver, nella quale è incluso un set di funzioni usate dalle applicazioni per effettuare la traduzione Indirizzo di rete/nome host e viceversa. In HIPL la risoluzione dei nomi avviene come mostrato in Figura 3.1: l applicazione invoca una funzione del resolver passandogli come argomento il nome dell host. Questo effettua una query DNS la cui risposta sarà la coppia HIT/indirizzo IPv6. Tale coppia viene successivamente inoltrata al modulo HIPL la cui risposta sarà un Endpoint Descriptor (ED) nel caso in cui viene utilizzata una API nativa di HIP o un HIT nel caso in cui viene utilizzata una API legacy. 8

8 Figura 2.1: Endpoint Resolution HIPL Application Programming Interface Le APIs costituiscono un utile supporto per le applicazioni in quanto forniscono le fondamentali funzionalità di rete quali, ad esempio, la risoluzione dell identità. Dal punto di vista del protocollo HIPL esistono due tipi diversi di applicazioni: quelle HIP-aware e quelle legacy. Uno degli obiettivi più importanti in fase di progetazzione delle API è stato quello di garantire l uso di HIP anche alle applicazioni legacy senza che queste fossero suscettibili a cambiamenti del codice per usufruire delle funzionalità offerte dal protocollo. Figura 2.2: HIPL Layering Model 9

9 Legacy HIPL API Nei sistemi operativi basati su UNIX si utilizza una libreria standard chiamata libc che fornisce i metodi per le operazioni più comuni come l interfaccia del resolver. In HIPL si utilizza un altra implementazione delle API, chiamata libnet6, basata sul progetto USAGI [6]. In particolare le API legacy si riferiscono prorpio alle funzioni che si trovano in tale libreria garatendo un utilizzo semplice e trasparente del procollo HIPL a qualsiasi applicazione. A tale scopo, come descritto da Candolin in una sua pubblicazione [7], nella pratica è stata modificata solo la funzione gettaddrinfo. Le API legacy possono essere abilitate utilizzando due diversi tipi di approcci: Transparent HIP mode, un opzione che può essere abilitata a tempo di compilazione e che fa restituire alla getaddrinfo sempre l HIT prima dell indirizzo IPv6. Con il suo utilizzo non sono necessari cambiamenti al codice dell applicazione; utilizzo esplicito, che avviene quando si setta il flag AI_HIP nella getaddrinfo che restituisce solo gli HITs. Con il suo utilizzo sono necessari piccoli cambiamenti al codice dell applicazione. Native HIPL API Le applicazioni HIP-aware utilizzano le API native di HIP come proposto in una bozza dell IETF del 2005 [8]. Queste costituiscono una parte importante dell implementazione di HIPL e per utilizzarle, un applicazione deve passare alla funzione della socket una particolare costante: PF_HIP. L ED rappresenta uno dei concetti fondamentali su cui si basa l implementazione delle API native. Esso costituisce un collegamento all HI: in particolare non è che un semplice puntatore alla corrispondente entry nel HI database di un host. La sua interfaccia è rappresentata dalla struct struct sockaddr_ed { unsigned short int ed_family ; in_ port_ t ed_ port ; sa_ed_t ed_val ; } dove la variabile ed_family è sempre settata utilizzando la costante PF_HIP per indicare l utilizzo di un API nativa; la variabile ed_port rappresenta un numero di porto utile a livello trasporto; la variabile ed_val è un identificatore univoco di un ED e viene mantenuta dal modulo HIPL e utilizzata nel kernel; 10

10 Endpoint Resolution nelle API natvie Per effettuare l operazione di risoluzione degli host names in struct ED le applicazioni utilizzano una particolare funzione delle API native int getendpointinfo ( const char * nodename, const char * servname, const struct endpointinfo * hints, struct endpointinfo ** res ); Il risultato della funzione viene posizionato nella variabile res che rappresenta un puntatore ad una lista linkata allocata dinamicamente; in particolare sarà zero in caso di successo o un valore diverso da zero per indicare una particolare condizione d errore. Come si può notare viene introdotta una nuova struct struct endpointinfo { int ei_flags ; int ei_family ; int ei_socktype ; int ei_protocol ; size_ t ei_ endpoint_ len ; struct socaddr * ei_endpoint ; char * ei_canonname ; struct endopointinfo * ei_ next ; } la quale viene utilizzata sia come input che come output nella funzione stessa e che contiene un campo ei_endpoint che punta ad un struct utilizzata nelle chiamate alle API native. 2.2 Architettura In questa sezione verrà descritta l architettura delle due implementazioni di HIPL a cui si faceva riferimento nel precedente paragrafo anche se l attenzione sarà maggiormente focalizzata sull implementazione kernel based dal momento che questa rappresenta la versione principale pensata in fase di progettazione Kernel Based Version L architettura generica di questa versione di HIPL viene proposta nella Figura 2.3: le applicazioni utilizzano il protocollo utilizzando la libreria libnet6 ; il resolver comunica direttamente con l HIPL Kernel Module e le chiamate alle API native vengono inoltrate nel modulo kernel dall HIP socket handler; le applicazioni legacy, invece, utilizzano le classiche API IPv6 ma vengono utilizzati gli HITs in luogo degli indirizzi IPv6. 11

11 HIP Module Figura 2.3: HIPL Kernel Based version Architecture Il modulo kernel rappresenta il cuore dell implementazione di HIP; ad esempio gestisce il base exchange, mantiene le associazioni HIP e implementa alcune funzionalità fondamentali per la gestione della mobilità quali i messaggi di UPDATE. Sicuramente la parte più importante del modulo kernel è il KHIPD Kernel Thread, che rimane in attesa fino a quando non rivece nuovi compiti da eseguire come ad esempio l elaborazione di tutti i pacchetti HIP provenienti dalla rete. Ovviamente la comunicazione tra User Space e Kernel Space avviente mediante l uso di particolari socket HIP e grazie all aiuto del HIP Socket Handler. Le informazioni scambiate dai due livelli contengono lo stesso tipo di dati che sono inclusi in un comune pacchetto HIP, per cui viene sfruttato lo stesso formato dei messaggi utilizzato in tale protocollo. Hooks in the Linux Networking Stack L implementazione di HIPL utilizza delle particolari funzioni, Hooks, per deviare il normale percorso dei pacchtti di rete nello stack IPv6 e passarne il controllo all HIPL Kernel Module quando è necesarrio. Tali funzioni agiscono sia in input che in output Output hooks Input hooks Other hooks hip_get_addr() hip_handle_esp() hip_handle_ipv6_dad_completed() hip_get_saddr() hip_handle_inet6_addr_del() hip_handle_output() hip_get_default_spi_out() Tabella 2.1: HIPL Hooks nell IPv6 Networking Stack 12

12 In particolare le funzioni hip_get_addr ed hip_handle_output sono utilizzate per convertire gli HITs sorgente e destinazioni in un indirizzo IPv6; hip_get_saddr determina l HIT di provenienza per un pacchetto che presenta un HIT come inidirizzo di destinazione; hip_get_default_spi_out trova il valore SPI da utilizzare in un pacchetto ESP in uscita; infine hip_handle_esp sostituisce l indirizzo IPv6 con un HIT nei pacchetti in entrata prima che essi siano inoltrati al modulo IPsec. Database Figura 2.4: HIPL Hooks nel Linux Networking Stack Oltre al Local Host Identity Database (HI DB) e al Peer Host Identity Database (HI DB), le cui funzioni sono facilmente intuibili, sono presenti altri due database. L Host Association Database (HABD) è una struttura dati globale presente nell HIPL Kernel Module. Viene usato per conservare particolari informazioni come le associazioni HIP: esso contiene infatti le Host Association (HA). Una HA include gli HIT s di entrambe le entità, gli indirizzi IPv6 dei peer, il valore SPI utilizzato da ESP, informazioni circa lo stato di HIP e le chiavi segrete condivise. In particolare l HADB è una hash table e gli HIT s dei peer vengono utilizzati come chiave primaria. Inoltre sono presenti altre due hash tables che vengono utilizzate per mappare le coppie SPI/HITs e per cercare una HA a partire dall SPI. L Endpoint Descriptor Database (ED DB) è invece utilizzato dall HIP Socket Handler per salvare gli Endpoint Descriptors. Ogni entry del Database contiene una struct sockaddr_ed, l HIT corrispondente e alcuni dati che identificano il processo che ha creato tale entry. 13

13 Resolver Il Resolver è una componente dell User Space che si occupa dell HIP Endopoint Resolution per le applicazioni ed inoltre fornisce il mapping tra HIs, gli HITs e gli indirizzi IP al HIPL Kernel Module. Il file di configurazione /etc/hip/hosts contiene il mapping tra il nome dell host e il rispettivo HIT. Le applicazioni legacy convertono il nome dell host in una struttura sockaddr_in6 utilizzando la funzione modificata gettaddrinfo mentre la applicazioni HIP-aware utilizzano la funzione del resolver gettendpointinfo il cui risultato sarà la struct sockaddr_ed. Gli HITs sono mappati agli indirizzi IPv6 nei due file di configurazione /etc/hosts ed /usr/local/etc/hip/hosts. Le varie coppie vengono comunicate al kernel come effetto della chiamata al resolver, e per questo motivo risulterebbe un problema per l implementazione uno scenario in cui si tenta di stabilire una connessione senza l utilizzo del resolver. HIP Socket Handler Le chiamate alle API vengono intercettate dall HIP Socket Handler se queste fanno parte della famiglia PF_HIP, ovvero quando ci troviamo in presenza di un applicazione HIP-aware. L Handler supporta gli ED in modo che questi possano essere direttamente utilizzati nelle chiamate alle API. Esso inoltre assume la funzione di un wrapper per le API IPv6: il suo compito principale è infatti quello di convertire gli EDs nei rispettivi HITs ed inoltrare le chiamate delle API native nel Linux Ipv6 Module. Nel caso in cui venga utilizzata una API legacy l Handler non interviene: in questo caso l HIT viene trattato come un indirizzo IPv6. Per questo motivo l utilizzo legacy di HIPL non introduce alcun cambiamento nelle API IPv User Space Version In questo paragrafo verrano brevemente discusse le principali differenze tra l implementazione kernel based e quella user space. Come è possibile notare dalla Figura 2.4, oltre al KHIPD Kernel Thread, viene introdotto l HIPL User Space Daemon che si occupa della gestione di molte delle funzione di HIP, ragion per cui il modulo kernel si occupa essenzialmente dell inoltro dei messaggi. Molti dati infatti viaggiano tra i due livelli: ad esempio quando viene aggiunto una nuova HI viene prima inviato un messaggio dall user space al kernel module e successivamente tale messaggio viene inoltrato all HIPL daemon. 14

14 Figura 2.5: HIPL User Space version Architecture Vengono apportate delle modifiche anche alla struttura dei dati nel kernel L HADB viene spostato nell user space ed inoltre una entry ora contiene anche l HI locale specifica dell associazione e dei puntatori che indicano le funzioni che possono essere utilizzate in un associazione HIP; Bound End-to-End Tunnel mode Database (BEETDB) utilizzato nel modulo kernel per abilitare l integrazione HIP-IPsec. Nella versione Kernel Based tutte le funzioni venivano implementate nel kernel. Ora invece sono implementate nell user space utilizzando la libreria OpenSSL [9] ragion per cui gli HI sono salvati nell user space. 2.3 Testing In questa fase si cercherà di attuare quello che è il fine ultimo di questo elaborato fornendo un riscontro pratico al preambolo teorico descritto nei precedenti paragrafi. In particolare si effettueranno due tipi di test: Il primo dimostra che una connessione su HIP resta attiva anche quando un host cambia indirizzo IP. In particolare si stabilisce una connessione SSH tra i due host e si verifica che pur cambiando l indirizzo IP su uno di questi la connessione resta attiva; Il secondo dimostra il funzionamento dell RVS. Si utilizzano tre hosts in locale che agiranno rispettivamente da Rendezvous Server, Initiator e Responder; Talvolta si utilizzerà Wireshark per poter analizzare nel dettaglio le connessioni utilizzando il log dei pacchetti scambiati. Tutti gli host utilizzati montano Ubuntu (Oneiric Ocelot). 15

15 2.3.1 Installazione Il bundle HIPL è formato dai seguenti componenti HIP Daemon (HIPD), le cui funzioni sono già state spiegate nei precedenti paragrafi; HIP Firewall Utility Daemon (HIPFW), che implementa il filtraggio dei pacchetti HIP e fornisce il supporto ad IPsec anche agli hosts legacy che hanno un kernel inferiore alla versione ; DNS Proxy for HIP, che effettua la risoluzione da DNS a HITs per le applicazioni; É importante precisare bisogna utilizzare un sistema Linux che supporti la modalità BEET IPsec. I kernel a partire dalla versione implementano di default tale funzionalità, mentre nel caso se ne utilizzi uno più vecchio è possibile comunque utilizzare una patch reperibile dal sito dello sviluppatore. Inoltre è necessario risolvere alcune dipendenze: per farlo è possibile utilizzare i comandi sudo apt - get install autoconf automake libtool make gcc \ libssl - dev iptables - dev libnet -ip - perl \ libnet -dns - perl bzr sudo apt - get install xmlto doxygen check libconfig8 - dev miredo sudo apt - get install fakeroot dpkg - dev debhelper devscripts Per installare HIPL bisogna creare un nuovo file etc/apt/sources.list.d/hipl.list con il seguente contenuto deb http :// packages. infrahip. net / ubuntu DISTRO_NAME main e digitare da terminale sudo apt - get update sudo apt - get install hipl - all In alternativa si può scaricare il codice sogernte ed effettuare l installazione utilizzando i classici comandi make e make install. Nel caso in cui ci fossero probelmi con la compilazione è possibile digitare il comando CFLAGS =-Wno - error./ configure e rieseguire la compilazione. Una volta completata l installazione è possibile eseguire il demone HIP digitando da terminale sudo hipd -b Tale lancio comporta la creazione di due interfacce virtuali e l assegnazione di un HIT e un LSI come mostrano le immagini seguenti. 16

16 Figura 2.6: Run ifconfig Figura 2.7: Run hipconf daemon get hi default 17

17 2.3.2 Primo Test In questo test vengono utilizzati due hosts le cui informazioni sono riportate nella Tabella 2.2 Initiator Responder HIT e5cdc93eef 8a3213a484745da b814aabd52e7b4f f f a LSI Indirizzo IPv Tabella 2.2: Hosts Informations Prima di procedere alla creazione di una connesione tra i due peer è necessaria una fase preliminare di configurazione sull Initiator. In particolare si vanno a modificare i file /etc/hosts ed /usr/local/etc/hosts come segue nel primo si specifica la coppia [RESPONDER_HIT]/[RESPONDER_NAME]; nel secondo si specifica la coppia [RESPONDER_IP]/[RESPONDER_NAME]; dove il [RESPONDER_IP] può essere sia un indirizzo IPv4 che IPv6. Fatto questo il mapping tra HIT e indirizzo IP avviene automanticamente ma è anche possibile una configurazione manuale digitando da shell il comando hipconf daemon add map PEER_ HIT PEER_ IP A questo punto si instaura la connessione tra i due hosts digitando dall Inititor il comando ssh responder. Come è possibile vedere dall analisi dei pacchetti con Wireshark (Figura 2.8) inizia l HIP Base Exchange tra i due hosts Figura 2.8: HIP Base Exchange 18

18 Il primo pacchetto I1 è di dimensione fissa poichè contiene solo l header senza alcun parametro " No. Time Source Destination Protocol Length Info HIP 86 HIP I1 ( HIP Initiator Packet ) Frame 3: 86 bytes on wire (688 bits ), 86 bytes captured (688 bits ) Ethernet II, Src : AsustekC_33 :c6 :89 (00:1 f:c6 :33: c6 :89), Dst : dc :0e:a1 :5b:8b:88 (dc :0e:a1 :5b:8b :88) Internet Protocol Version 4, Src : ( ), Dst : ( ) User Datagram Protocol, Src Port : hip - nat - t (10500), Dst Port : hip -nat -t (10500) Host Identity Protocol Payload Protocol : 59 Header Length : 4 Fixed P-bit : 0 ( Always zero ) Packet Type : 1 Version : 1, Reserved : 0 Fixed S-bit : 1 ( HIP ) Checksum : 0 x0000 ( correct ) HIP Controls : 0 x = Anonymous ( Sender s HI is anonymous ): False Sender s HIT : e5cdc93eef8a3213a484745da Receiver s HIT : b814aabd52e7b4f100904ffa " Il Responder replica inviando il pacchetto R1 nel quale si possono notare diversi parametri quali il Cryptographic Puzzle, Diffie-Hellman, HOST_ID ed HOST_SIG " No. Time Source Destination Protocol Length Info HIP 694 HIP R1 ( HIP Responder Packet ) Frame 4: 694 bytes on wire ( 5552 bits ), 694 bytes captured ( 5552 bits ) Ethernet II, Src : dc :0e:a1 :5b:8b:88 (dc :0e:a1 :5b:8b:88), Dst : AsustekC_33 :c6 :89 (00:1 f:c6 :33: c6 :89) Internet Protocol Version 4, Src : ( ), Dst : ( ) User Datagram Protocol, Src Port : hip - nat - t (10500), Dst Port : hip -nat -t (10500) Host Identity Protocol Payload Protocol : 59 Header Length : 80 Fixed P-bit : 0 ( Always zero ) Packet Type : 2 Version : 1, Reserved : 0 Fixed S-bit : 1 ( HIP ) Checksum : 0 x0000 ( correct ) HIP Controls : 0 x

19 Sender s HIT : b814aabd52e7b4f100904ffa Receiver s HIT : e5cdc93eef8a3213a484745da HIP Parameters PUZZLE ( type =257, length =12) DIFFIE_HELLMAN ( type =513, length =246) HIP_TRANSFORM ( type =577, length =6) HOST_ ID ( type =705, length =159) ESP_TRANSFORM ( type =4095, length =8) HIP_ SIGNATURE_ 2 ( type =61633, length =129)" Il terzo messaggio I2 contiene i parametri: Solution, contenente la soluzione al puzzle; Diffie-Hellman, contenente la chiave pubblica dell Initiator; Host_ID, contenente la chiave pubblica parte dell HI dell Initiator; HIP_SIG, contenente la signature del messaggio calcolata usando la chiave privata dell Initiator; ESP_INFO, contenente l SPI usato dall Initiator per la SA che si sta stabilendo. " Ethernet II, Src : AsustekC_33 :c6 :89 (00:1 f:c6 :33: c6 :89), Dst : dc :0e:a1 :5b:8b:88 (dc :0e:a1 :5b:8b :88) Internet Protocol Version 4, Src : ( ), Dst : ( ) User Datagram Protocol, Src Port : hip - nat - t (10500), Dst Port : hip -nat -t (10500) Host Identity Protocol Payload Protocol : 59 Header Length : 76 Fixed P-bit : 0 ( Always zero ) Packet Type : 3 Version : 1, Reserved : 0 Fixed S-bit : 1 ( HIP ) Checksum : 0 x0000 ( correct ) HIP Controls : 0 x0000 Sender s HIT : e5cdc93eef8a3213a484745da Receiver s HIT : b814aabd52e7b4f100904ffa HIP Parameters ESP_INFO ( type =65, length =12) SOLUTION ( type =321, length =20) DIFFIE_HELLMAN ( type =513, length =195) HIP_TRANSFORM ( type =577, length =2) HOST_ ID ( type =705, length =149) ESP_TRANSFORM ( type =4095, length =4) HMAC ( type =61505, length =20) HIP_ SIGNATURE ( type =61697, length =129)" L ultimo messaggio R2, se la soluzione è corretta, conferma l associazione all Initiator. Questo messaggio contiene i parametri ESP_INFO (SPI che si aspetta di ricevere nei prossimi messaggi il Responder) e HIP_SIG. " No. Time Source Destination Protocol Length Info HIP 262 HIP R2 20

20 ( Second HIP Responder Packet ) Frame 6: 262 bytes on wire ( 2096 bits ), 262 bytes captured ( 2096 bits ) Ethernet II, Src : dc :0e:a1 :5b:8b:88 (dc :0e:a1 :5b:8b:88), Dst : AsustekC_33 :c6 :89 (00:1 f:c6 :33: c6 :89) Internet Protocol Version 4, Src : ( ), Dst : ( ) User Datagram Protocol, Src Port : hip - nat - t (10500), Dst Port : hip -nat -t (10500) Host Identity Protocol Payload Protocol : 59 Header Length : 26 Fixed P-bit : 0 ( Always zero ) Packet Type : 4 Version : 1, Reserved : 0 Fixed S-bit : 1 ( HIP ) Checksum : 0 x0000 ( correct ) HIP Controls : 0 x0000 Sender s HIT : b814aabd52e7b4f100904ffa Receiver s HIT : e5cdc93eef8a3213a484745da HIP Parameters ESP_INFO ( type =65, length =12) HMAC_ 2 ( type =61569, length =20) HIP_ SIGNATURE ( type =61697, length =129)" A questo punto si attiva l interfaccia wireless del Responder in modo da cambiare indirizzo IP. Come si può notare dall analisi dei pacchetti (Figura 2.9) il nuovo indirizzo viene segnalato all Initiator ma ancora tramite ethernet. Figura 2.9: Update Messages 21

21 Solo successivamente avviene il vero e proprio scambio dei tre messaggi di UP- DATE. In particolare nel primo messaggio si può notare la presenza del parametro ESP_Info, che può essere utilizzato per cambiare chiave, e il parametro SEQ per richiedere un riscontro da parte del corrispondente " No. Time Source Destination Protocol Length Info HIP 286 HIP UPDATE ( HIP Update Packet ) Frame 92: 286 bytes on wire ( 2288 bits ), 286 bytes captured ( 2288 bits ) Ethernet II, Src : AsustekC_33 :c6 :89 (00:1 f:c6 :33: c6 :89), Dst : dc :0e:a1 :5b:8b:88 (dc :0e:a1 :5b:8b :88) Internet Protocol Version 4, Src : ( ), Dst : ( ) User Datagram Protocol, Src Port : hip - nat - t (10500), Dst Port : hip -nat -t (10500) Host Identity Protocol Payload Protocol : 59 Header Length : 29 Fixed P-bit : 0 ( Always zero ) Packet Type : 16 Version : 1, Reserved : 0 Fixed S-bit : 1 ( HIP ) Checksum : 0 x0000 ( correct ) HIP Controls : 0 x0000 Sender s HIT : e5cdc93eef8a3213a484745da Receiver s HIT : b814aabd52e7b4f100904ffa HIP Parameters ESP_INFO ( type =65, length =12) SEQ ( type =385, length =4) ACK ( type =449, length =4) ECHO_REQUEST_SIGNED ( type =897, length =4) HMAC ( type =61505, length =20) HIP_ SIGNATURE ( type =61697, length =129)" Il secondo messaggio invece serve a verificare che il nodo mobile sia effettivamente disponibile al nuovo indirizzo. Inoltre si può notare la presenza del parametro ECHO_RESPONSE_SIGNED utilizzato come contromisura per i replay attack. " No. Time Source Destination Protocol Length Info HIP 262 HIP UPDATE ( HIP Update Packet ) Frame 93: 262 bytes on wire ( 2096 bits ), 262 bytes captured ( 2096 bits ) Ethernet II, Src : dc :0e:a1 :5b:8b:88 (dc :0e:a1 :5b:8b:88), Dst : AsustekC_33 :c6 :89 (00:1 f:c6 :33: c6 :89) Internet Protocol Version 4, Src : ( ), Dst : ( ) User Datagram Protocol, Src Port : hip - nat - t (10500), 22

22 Dst Port : hip -nat -t (10500) Host Identity Protocol Payload Protocol : 59 Header Length : 26 Fixed P-bit : 0 ( Always zero ) Packet Type : 16 Version : 1, Reserved : 0 Fixed S-bit : 1 ( HIP ) Checksum : 0 x0000 ( correct ) HIP Controls : 0 x0000 Sender s HIT : b814aabd52e7b4f100904ffa Receiver s HIT : e5cdc93eef8a3213a484745da HIP Parameters ACK ( type =449, length =4) ECHO_RESPONSE_SIGNED ( type =961, length =4) HMAC ( type =61505, length =20) HIP_ SIGNATURE ( type =61697, length =129)" Il terzo messaggio di riposta, infine, serve a confermare la propria identità ricopiando i dati presenti nel parametro ECHO_RESPONSE_SIGNED e inoltrarli nuovamente al mittente. " No. Time Source Destination Protocol Length Info HIP 262 HIP UPDATE ( HIP Update Packet ) Frame 94: 262 bytes on wire ( 2096 bits ), 262 bytes captured ( 2096 bits ) Ethernet II, Src : dc :0e:a1 :5b:8b:88 (dc :0e:a1 :5b:8b:88), Dst : AsustekC_33 :c6 :89 (00:1 f:c6 :33: c6 :89) Internet Protocol Version 4, Src : ( ), Dst : ( ) User Datagram Protocol, Src Port : hip - nat - t (10500), Dst Port : hip -nat -t (10500) Host Identity Protocol Payload Protocol : 59 Header Length : 26 Fixed P-bit : 0 ( Always zero ) Packet Type : 16 Version : 1, Reserved : 0 Fixed S-bit : 1 ( HIP ) Checksum : 0 x0000 ( correct ) HIP Controls : 0 x0000 Sender s HIT : b814aabd52e7b4f100904ffa Receiver s HIT : e5cdc93eef8a3213a484745da HIP Parameters ACK ( type =449, length =4) ECHO_RESPONSE_SIGNED ( type =961, length =4) HMAC ( type =61505, length =20) HIP_ SIGNATURE ( type =61697, length =129)" 23

23 Al termine dello scambio la connessione riprende regolarmente da dove si era interrotta, questa volta però utilizzando il nuovo indirizzo IP Secondo Test Una delle funzionalità più importanti che HIPL fornisce è quella del Rendezvous Server (RVS). In questo test ai due hosts precedenti se ne affianca un altro le cui informazioni sono riportate nella Tabella 2.3 RV S HIT 2001 : 1e : 2fc : 30c9 : c153 : 74a9 : 5f23 : 52c4 LSI Indirizzo IPv Tabella 2.3: RVS Informations Anche qui abbiamo bisogno di una fase preliminare di configurazione che stavolta include anche il RVS. In particolare bisogna andare a modificare il file /etc/hip/relay.conf nel quale troviamo le seguenti opzioni whitelist_enabled = " yes " whitelist = "" minimum_lifetime = "60" maximum_ lifetime = " 3600" HIPL infatti supporta, dal lato server, un servizio di white listing. Questo significa che solo quei client il cui HIT è inserito nella lista sono abilitati a registrarsi al RVS. In alternativa tale servizio può essere disabilitato andando a modificare il campo whitelist_enabled. Inoltre è possibile configurare a proprio piacimento i valori limite per la sessione di registrazione. É importante precisare che tali valori vengono utilizzati per calcolare il vero lifetime e per questo non lo rappresentano in quanto tale. La formula utilizzata, come specificato nella RFC 5203 [10], è la seguente da cui si ha seconds = 2 lifetime 64 8 (2.1) lifetime = 8 log(seconds) log(2) + 64 (2.2) Il Rendezvous Server è per alcuni aspetti simile all Home Agent in Mobile IP. Esso infatti inoltra il primo messaggio del Base Exchange al nodo mobile ma i successivi pacchetti vengono scambiati direttamente tra le due entità coinvolte (Figura 2.10) 24

24 Figura 2.10: Base exchange via RVS A questo punto si può passare alla configurazione dell Initiator modificando i file /etc/hosts ed /usr/local/etc/hosts come segue nel primo si specifica la coppia [RVS_IP]/[RESPONDER_NAME]; nel secondo si specifica la coppia [RESPONDER_HIT]/[RESPONDER_NAME]; Rispetto al caso precedente si può notare che il Responder viene mappato con l indirizzo IP del RVS mentre il secondo file rimane invariato. Gli stessi file invece non devono essere modificati sul RVS e sul Responder: questo perchè si assume che il RVS non abbia alcuna informazione sui suoi clients prima che questi lo contattino e che il Reponder conosca già l indirizzo IP e l HIT del RVS. Fatto ciò si può eseguire il test vero e prorpio. Supposto che il demone HIP sia attivo su ogni host bisogna abilitare il servizio di randezvous sul RVS utilizzando il comando hipconf daemon add service rvs 25

25 Figura 2.11: Run hipconf daemon add service rvs e successivamente registrare il Responder digitando hipconf daemon add server rvs [ RVS_ HIT ] < RVS_ IP or hostname > \ < LIFETIME_IN_SECONDS > Figura 2.12: Run hipconf daemon add server rvs... Questo farà partire un base exchange tra i due host tra i quali si stabilirà una SA. Ora è possibile contattare il Responder tramite l Initator ad esempio stabilendo una connessione SSH oppure una sessione Netcat. In ogni caso il Base Exchange avverà come descritto in precedenza. Tutti i comandi disponibili per gestire il servizio rendezvous sono disponibili digitando hipconf 26

Test del funzionamento di un Rendez-vous Server mediante l implementazione InfraHIP

Test del funzionamento di un Rendez-vous Server mediante l implementazione InfraHIP Facoltá di Ingegneria Corso di Studi in Ingegneria Informatica Elaborato finale in Protocolli per Reti Mobili Test del funzionamento di un Rendez-vous Server mediante l implementazione InfraHIP Anno Accademico

Dettagli

Università di Napoli Federico II Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Corso di Protocolli per Reti Mobili

Università di Napoli Federico II Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Corso di Protocolli per Reti Mobili Università di Napoli Federico II Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Corso di Protocolli per Reti Mobili Host Identity Protocol (HIP) IP: punti deboli L'evoluzione di Internet

Dettagli

Host Identity Protocol

Host Identity Protocol Host Identity Protocol Seminario per il corso di Sicurezza 2004/2005 Guido Vicino Università del Piemonte Orientale Amedeo Avogadro Perché l indirizzo IP non basta più Protocollo TCP/IP formalizzato negli

Dettagli

StarShell. IPSec. StarShell

StarShell. IPSec. StarShell IPSec 1 IPSec Applicabile sia a Ipv4 che Ipv6 Obiettivi: Facilitare la confidenzialità, integrità ed autenticazione di informazioni trasferite tramite IP Standard di interoperabilità tra più vendor Protocolli:

Dettagli

TCP/IP. Principali caratteristiche

TCP/IP. Principali caratteristiche TCP/IP Principali caratteristiche 1 TCP/IP Caratteristiche del modello TCP/IP Struttura generale della rete Internet IL MONDO INTERNET Reti nazionali e internazionali ROUTER Rete Azienade ROUTER ROUTER

Dettagli

Problemi legati alla sicurezza e soluzioni

Problemi legati alla sicurezza e soluzioni Corso DOMOTICA ED EDIFICI INTELLIGENTI UNIVERSITA DI URBINO Docente: Ing. Luca Romanelli Mail: romanelli@baxsrl.com Accesso remoto ad impianti domotici Problemi legati alla sicurezza e soluzioni Domotica

Dettagli

Sicurezza a livello IP: IPsec e le reti private virtuali

Sicurezza a livello IP: IPsec e le reti private virtuali Sicurezza a livello IP: IPsec e le reti private virtuali Davide Cerri Sommario L esigenza di proteggere l informazione che viene trasmessa in rete porta all utilizzo di diversi protocolli crittografici.

Dettagli

Sicurezza dei sistemi e delle reti 1. Lezione VI: IPsec. IPsec. La suite TCP/IP. Mattia Monga. a.a. 2014/15

Sicurezza dei sistemi e delle reti 1. Lezione VI: IPsec. IPsec. La suite TCP/IP. Mattia Monga. a.a. 2014/15 Sicurezza dei sistemi e delle 1 Mattia Lezione VI: Dip. di Informatica Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2014/15 1 cba 2011 15 M.. Creative Commons Attribuzione Condividi

Dettagli

IPv6 e mobilità. Conferenza GARR_05 6net Workshop Pisa, 12 Maggio 2005. Stefano Lucetti

IPv6 e mobilità. Conferenza GARR_05 6net Workshop Pisa, 12 Maggio 2005. Stefano Lucetti IPv6 e mobilità Conferenza GARR_05 6net Workshop Pisa, 12 Maggio 2005 Stefano Lucetti http://netgroup.iet.unipi.it Gruppo Reti di Telecomunicazioni Dip. di Ingegneria dell Informazione Università di Pisa

Dettagli

Sicurezza delle reti e dei calcolatori

Sicurezza delle reti e dei calcolatori Sicurezza e dei calcolatori Introduzione a IPSec Lezione 11 1 Obiettivi Aggiungere funzionalità di sicurezza al protocollo IPv4 e IPv6 Riservatezza e integrità del traffico Autenticità del mittente La

Dettagli

Sicurezza nelle applicazioni multimediali: lezione 8, sicurezza ai livelli di rete e data-link. Sicurezza ai livelli di rete e data link

Sicurezza nelle applicazioni multimediali: lezione 8, sicurezza ai livelli di rete e data-link. Sicurezza ai livelli di rete e data link Sicurezza ai livelli di rete e data link Sicurezza a livello applicativo Ma l utilizzo di meccanismi di cifratura e autenticazione può essere introdotto anche ai livelli inferiori dello stack 2 Sicurezza

Dettagli

Corso GNU/Linux - Lezione 5. Davide Giunchi - davidegiunchi@libero.it

Corso GNU/Linux - Lezione 5. Davide Giunchi - davidegiunchi@libero.it Corso GNU/Linux - Lezione 5 Davide Giunchi - davidegiunchi@libero.it Reti - Protocollo TCP/IP I pacchetti di dati vengono trasmessi e ricevuti in base a delle regole definite da un protocollo di comunicazione.

Dettagli

4 - Il livello di trasporto

4 - Il livello di trasporto Università di Bergamo Dipartimento di Ingegneria Gestionale e dell Informazione 4 - Il livello di trasporto Architetture e Protocolli per Internet Servizio di trasporto il livello di trasporto ha il compito

Dettagli

Sicurezza nelle reti IP

Sicurezza nelle reti IP icurezza nelle reti IP L architettura IPsec IPsec Proposta IETF per fare sicurezza al livello IP (livello 3) Compatibile con IPv4 e IPV6 (RFC-2401) Permette di Creare VPN su reti pubbliche Fare sicurezza

Dettagli

Sicurezza delle reti. Monga. Ricognizione. Scanning Network mapping Port Scanning NMAP. Le tecniche di scanning. Ping. Sicurezza delle reti.

Sicurezza delle reti. Monga. Ricognizione. Scanning Network mapping Port Scanning NMAP. Le tecniche di scanning. Ping. Sicurezza delle reti. 1 Mattia Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it Port Lezione IV: Scansioni Port a.a. 2011/12 1 c 2011 12 M.. Creative Commons Attribuzione-Condividi

Dettagli

Laboratorio del corso Progettazione di Servizi Web e Reti di Calcolatori Politecnico di Torino AA 2014-15 Prof. Antonio Lioy

Laboratorio del corso Progettazione di Servizi Web e Reti di Calcolatori Politecnico di Torino AA 2014-15 Prof. Antonio Lioy Laboratorio del corso Progettazione di Servizi Web e Reti di Calcolatori Politecnico di Torino AA 2014-15 Prof. Antonio Lioy Soluzioni dell esercitazione n. 2 a cura di Giacomo Costantini 19 marzo 2014

Dettagli

Reti di Calcolatori. Lezione 2

Reti di Calcolatori. Lezione 2 Reti di Calcolatori Lezione 2 Una definizione di Rete Una moderna rete di calcolatori può essere definita come: UN INSIEME INTERCONNESSO DI CALCOLATORI AUTONOMI Tipi di Rete Le reti vengono classificate

Dettagli

Elementi di Sicurezza e Privatezza Lezione 17 Protocolli di rete e vulnerabilità. Chiara Braghin

Elementi di Sicurezza e Privatezza Lezione 17 Protocolli di rete e vulnerabilità. Chiara Braghin Elementi di Sicurezza e Privatezza Lezione 17 Protocolli di rete e vulnerabilità Chiara Braghin Dalle news 1 Internet ISP Backbone ISP Routing locale e tra domini TCP/IP: routing, connessioni BGP (Border

Dettagli

Parte II: Reti di calcolatori Lezione 16

Parte II: Reti di calcolatori Lezione 16 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Parte II: Reti di calcolatori Lezione 16 Giovedì 24-04-2014 1 Traduzione degli

Dettagli

Corso di Sistemi di Elaborazione delle informazioni

Corso di Sistemi di Elaborazione delle informazioni Corso di Sistemi di Elaborazione delle informazioni Reti di Calcolatori Claudio Marrocco Componenti delle reti Una qualunque forma di comunicazione avviene: a livello hardware tramite un mezzo fisico che

Dettagli

Cenni sulla Sicurezza in Ambienti Distribuiti

Cenni sulla Sicurezza in Ambienti Distribuiti Cenni sulla Sicurezza in Ambienti Distribuiti Cataldo Basile < cataldo.basile @ polito.it > Politecnico di Torino Dip. Automatica e Informatica Motivazioni l architettura TCP/IPv4 è insicura il problema

Dettagli

Linux Network Testing

Linux Network Testing Introduzione agli strumenti per il testing di rete su Linux 6, 13 Novembre 2007 Sommario 1 Introduzione Panoramica sugli strumenti di misura 2 I tool di base per l amministrazione di rete Configurare le

Dettagli

Transmission Control Protocol

Transmission Control Protocol Transmission Control Protocol Franco Callegati Franco Callegati IC3N 2000 N. 1 Transmission Control Protocol - RFC 793 Protocollo di tipo connection-oriented Ha lo scopo di realizzare una comunicazione

Dettagli

Università di Pisa Facoltà di Informatica Corso di Tecnologie di convergenza su IP a.a. 2005/2006. Gaspare Sala

Università di Pisa Facoltà di Informatica Corso di Tecnologie di convergenza su IP a.a. 2005/2006. Gaspare Sala Università di Pisa Facoltà di Informatica Corso di Tecnologie di convergenza su IP a.a. 2005/2006 Gaspare Sala Introduzione Una rete pubblica è un insieme di sistemi indipendenti che si scambiano dati

Dettagli

TCP/IP un introduzione

TCP/IP un introduzione TCP/IP un introduzione Introduzione Il successo di Internet (rate di crescita annuo > 200 %) e dovuto all uso di protocolli standard aperti (IETF) TCP/IP (Transmission Control Protocol/Internet Protocol)

Dettagli

La Sicurezza delle Reti. La Sicurezza delle Reti. Il software delle reti. Sistemi e tecnologie per la multimedialità e telematica.

La Sicurezza delle Reti. La Sicurezza delle Reti. Il software delle reti. Sistemi e tecnologie per la multimedialità e telematica. Sistemi e tecnologie per la multimedialità e telematica Fabio Burroni Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena burronif@unisi unisi.itit La Sicurezza delle Reti La presentazione

Dettagli

Introduzione alle applicazioni di rete

Introduzione alle applicazioni di rete Introduzione alle applicazioni di rete Definizioni base Modelli client-server e peer-to-peer Socket API Scelta del tipo di servizio Indirizzamento dei processi Identificazione di un servizio Concorrenza

Dettagli

Corso di Sistemi di Elaborazione delle informazioni. Reti di calcolatori 2 a lezione a.a. 2009/2010 Francesco Fontanella

Corso di Sistemi di Elaborazione delle informazioni. Reti di calcolatori 2 a lezione a.a. 2009/2010 Francesco Fontanella Corso di Sistemi di Elaborazione delle informazioni Reti di calcolatori 2 a lezione a.a. 2009/2010 Francesco Fontanella Una definizione di Rete Una moderna rete di calcolatori può essere definita come:

Dettagli

CONNESSIONE IPv6 tramite tunnelling Freenet6

CONNESSIONE IPv6 tramite tunnelling Freenet6 Guida all attivazione di una CONNESSIONE IPv6 tramite tunnelling Freenet6 Emanuele Goldoni Università degli studi di Pavia Sede di Mantova Laboratorio di Reti di Calcolatori 2006 1 Introduzione A distanza

Dettagli

Il Mondo delle Intranet

Il Mondo delle Intranet Politecnico di Milano Advanced Network Technologies Laboratory Il Mondo delle Intranet Network Address Translation (NAT) Virtual Private Networks (VPN) Reti Private e Intranet EG sottorete IG IG rete IG

Dettagli

Reti private virtuali (VPN) con tecnologia IPsec

Reti private virtuali (VPN) con tecnologia IPsec Reti private virtuali (VPN) con tecnologia IPsec A.A. 2005/2006 Walter Cerroni Reti private e reti private virtuali Aziende e/o enti di dimensioni medio/grandi in genere hanno necessità di interconnettere

Dettagli

Introduzione allo sniffing

Introduzione allo sniffing Università degli Studi di Milano Facoltà di Scienze Matematiche, Fisiche e Naturali Anno Accademico 2007/2008 Introduzione allo sniffing Roberto Paleari 2-4 Settembre 2008 Roberto Paleari Introduzione

Dettagli

Indice. Prefazione. Presentazione XIII. Autori

Indice. Prefazione. Presentazione XIII. Autori INDICE V Indice Prefazione Presentazione Autori XI XIII XV Capitolo 1 Introduzione alla sicurezza delle informazioni 1 1.1 Concetti base 2 1.2 Gestione del rischio 3 1.2.1 Classificazione di beni, minacce,

Dettagli

Host Identity Protocol

Host Identity Protocol Università degli Studi del Piemonte Orientale Facoltà di Scienze M.F.N. Corso di Laurea Specialistica in Informatica Sistemi Avanzati e Servizi di Rete Host Identity Protocol Relazione per il corso di

Dettagli

Wireless Network Esercitazioni. Alessandro Villani avillani@science.unitn.it

Wireless Network Esercitazioni. Alessandro Villani avillani@science.unitn.it Wireless Network Esercitazioni Alessandro Villani avillani@science.unitn.it Radius AAA Dato un certo numero di punti di accesso dall esterno alla rete Data una grande quantità di utenti Abbiamo la necessità

Dettagli

La sicurezza delle reti

La sicurezza delle reti La sicurezza delle reti Inserimento dati falsi Cancellazione di dati Letture non autorizzate A quale livello di rete è meglio realizzare la sicurezza? Applicazione TCP IP Data Link Physical firewall? IPSEC?

Dettagli

12.5 UDP (User Datagram Protocol)

12.5 UDP (User Datagram Protocol) CAPITOLO 12. SUITE DI PROTOCOLLI TCP/IP 88 12.5 UDP (User Datagram Protocol) L UDP (User Datagram Protocol) é uno dei due protocolli del livello di trasporto. Come l IP, é un protocollo inaffidabile, che

Dettagli

OpenVPN: un po di teoria e di configurazione

OpenVPN: un po di teoria e di configurazione Università degli Studi di Milano Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea in Informatica 10 dicembre 2004 Sommario 1 Introduzione: definizione e utilizzo delle VPN 2 3 4 5 Sommario

Dettagli

Livello Applicazione. Davide Quaglia. Motivazione

Livello Applicazione. Davide Quaglia. Motivazione Livello Applicazione Davide Quaglia 1 Motivazione Nell'architettura ibrida TCP/IP sopra il livello trasporto esiste un unico livello che si occupa di: Gestire il concetto di sessione di lavoro Autenticazione

Dettagli

CORSO DI RETI SSIS. Lezione n.2. 2 Novembre 2005 Laura Ricci

CORSO DI RETI SSIS. Lezione n.2. 2 Novembre 2005 Laura Ricci CORSO DI RETI SSIS Lezione n.2. 2 Novembre 2005 Laura Ricci IL DOMAIN NAME SYSTEM (DNS) Indirizzi IP poco adatti per essere memorizzati da utenti umani è prevista la possibiltà di associare nomi simbolici

Dettagli

LAN MAN WAN. Una internet è l'insieme di più reti reti distinte collegate tramite gateway/router

LAN MAN WAN. Una internet è l'insieme di più reti reti distinte collegate tramite gateway/router Rete di reti (interrete, internet) 2 Prof. Roberto De Prisco TEORIA - Lezione 8 Rete di reti e Internet Università degli studi di Salerno Laurea e Diploma in Informatica Una rete di comunicazione è un

Dettagli

Indice I rischi: introduzione alle reti connesse a Internet Le reti e il protocollo TCP/IP

Indice I rischi: introduzione alle reti connesse a Internet Le reti e il protocollo TCP/IP Indice Capitolo 1 I rischi: introduzione alle reti connesse a Internet 1 1.1 Il virus Worm 3 1.2 Lo stato della rete nel 2002 9 1.3 Cos è Internet 10 1.4 La commutazione di pacchetti: la base della maggior

Dettagli

Informazioni Generali (1/2)

Informazioni Generali (1/2) Prima Esercitazione Informazioni Generali (1/2) Ricevimento su appuntamento (tramite e-mail). E-mail d.deguglielmo@iet.unipi.it specificare come oggetto Reti Informatiche 2 Informazioni Generali (2/2)

Dettagli

Reti locati e reti globali. Tecnologie: Reti e Protocolli. Topologia reti. Server e client di rete. Server hardware e server software.

Reti locati e reti globali. Tecnologie: Reti e Protocolli. Topologia reti. Server e client di rete. Server hardware e server software. Reti locati e reti globali Tecnologie: Reti e Protocolli Reti locali (LAN, Local Area Networks) Nodi su aree limitate (ufficio, piano, dipartimento) Reti globali (reti metropolitane, reti geografiche,

Dettagli

Uso di sniffer ed intercettazione del traffico IP

Uso di sniffer ed intercettazione del traffico IP Uso di sniffer ed intercettazione del traffico IP Massimo Bernaschi Istituto per le Applicazioni del Calcolo Mauro Picone Consiglio Nazionale delle Ricerche Viale del Policlinico, 137-00161 Rome - Italy

Dettagli

La nascita di Internet

La nascita di Internet La nascita di Nel 1969 la DARPA (Defence Advanced Research Project Agency) studia e realizza la prima rete per la comunicazione tra computer (ARPAnet) fra 3 università americane ed 1 istituto di ricerca.

Dettagli

La rete è una componente fondamentale della

La rete è una componente fondamentale della automazioneoggi Attenti alle reti La telematica si basa prevalentemente sulle reti come mezzo di comunicazione per cui è indispensabile adottare strategie di sicurezza per difendere i sistemi di supervisione

Dettagli

IL LIVELLO RETE IN INTERNET Protocollo IP

IL LIVELLO RETE IN INTERNET Protocollo IP Reti di Calcolatori IL LIVELLO RETE IN INTERNET Protocollo IP D. Talia RETI DI CALCOLATORI - UNICAL 4-1 Il Protocollo IP IPv4 Datagram IP: formato Indirizzi IP: formato Protocolli di controllo IP mobile

Dettagli

Reti di Calcolatori. Il software

Reti di Calcolatori. Il software Reti di Calcolatori Il software Lo Stack Protocollare Application: supporta le applicazioni che usano la rete; Transport: trasferimento dati tra host; Network: instradamento (routing) di datagram dalla

Dettagli

OpenVPN: un po di teoria e di configurazione

OpenVPN: un po di teoria e di configurazione OpenVPN: un po di teoria e di configurazione Andrea Lanzi, Davide Marrone, Roberto Paleari Università degli Studi di Milano Facoltà di Scienze Matematiche, Fisiche e Naturali Anno Accademico 2006/2007

Dettagli

Reti di Telecomunicazioni LB Introduzione al corso

Reti di Telecomunicazioni LB Introduzione al corso Reti di Telecomunicazioni LB Introduzione al corso A.A. 2005/2006 Walter Cerroni Il corso Seguito di Reti di Telecomunicazioni LA Approfondimento sui protocolli di Internet TCP/IP, protocolli di routing,

Dettagli

Socket API per il Multicast

Socket API per il Multicast Socket API per il Multicast Massimo Bernaschi Istituto per le Applicazioni del Calcolo Mauro Picone Consiglio Nazionale delle Ricerche Viale del Policlinico, 137-00161 Rome - Italy http://www.iac.cnr.it/

Dettagli

Connessione di reti private ad Internet. Fulvio Risso

Connessione di reti private ad Internet. Fulvio Risso Connessione di reti private ad Internet Fulvio Risso 1 Connessione di reti private ad Internet Diffusione di reti IP private Utilizzo di indirizzi privati Gli indirizzi privati risolvono il problema dell

Dettagli

Esercitazione 05. Sommario. Packet Filtering [ ICMP ] Esercitazione Descrizione generale. Angelo Di Iorio (Paolo Marinelli)

Esercitazione 05. Sommario. Packet Filtering [ ICMP ] Esercitazione Descrizione generale. Angelo Di Iorio (Paolo Marinelli) Sommario Esercitazione 05 Angelo Di Iorio (Paolo Marinelli)! Packet Filtering ICMP! Descrizione esercitazione! Applicazioni utili: " Firewall: wipfw - netfilter " Packet sniffer: wireshark!"#!$#!%&'$(%)*+,')#$-!"#!$#!%&'$(%)*+,')#$-

Dettagli

Reti di calcolatori. Lezione del 18 maggio

Reti di calcolatori. Lezione del 18 maggio Reti di calcolatori Lezione del 18 maggio Riepilogo concetti Il software di rete La gestione della rete non può essere lasciata alle applicazioni-utente Necessità di un software specifico dedicato a gestire

Dettagli

Indirizzi Internet e. I livelli di trasporto delle informazioni. Comunicazione e naming in Internet

Indirizzi Internet e. I livelli di trasporto delle informazioni. Comunicazione e naming in Internet Indirizzi Internet e Protocolli I livelli di trasporto delle informazioni Comunicazione e naming in Internet Tre nuovi standard Sistema di indirizzamento delle risorse (URL) Linguaggio HTML Protocollo

Dettagli

Internet Protocol Versione 4: aspetti generali

Internet Protocol Versione 4: aspetti generali Internet Protocol Versione 4: aspetti generali L architettura di base del protocollo IP versione 4 e una panoramica sulle regole fondamentali del mondo TCP/IP 1 Cenni storici Introduzione della tecnologia

Dettagli

Setup dell ambiente virtuale

Setup dell ambiente virtuale Setup dell ambiente virtuale 1.1 L immagine per le macchine virtuali Il file mininet-vm-x86 64.qcow è l immagine di una memoria di massa su cui è installato un sistema Linux 3.13 Ubuntu 14.04.1 LTS SMP

Dettagli

Il livello Network del TCP/IP. Il protocollo IP (versione 4)

Il livello Network del TCP/IP. Il protocollo IP (versione 4) Il livello Network del TCP/IP. Il protocollo IP (versione 4) L architettura TCP/IP (il cui nome più preciso è ) è formata da diversi componenti, che si posizionano nello stack dei protocolli a partire

Dettagli

Protocolli di Comunicazione

Protocolli di Comunicazione Protocolli di Comunicazione La rete Internet si è sviluppata al di fuori dal modello ISO-OSI e presenta una struttura solo parzialmente aderente al modello OSI. L'architettura di rete Internet Protocol

Dettagli

Ipsec. Il protocollo Internet abilita la comunicazione su un mezzo. consegna del pacchetto. Si parla di servizio best effort

Ipsec. Il protocollo Internet abilita la comunicazione su un mezzo. consegna del pacchetto. Si parla di servizio best effort Il protocollo Internet abilita la comunicazione su un mezzo condiviso tra sistemi che non sono direttamente collegati tra loro Ing. Michela Cancellaro Ipsec Ing. Federica Battisti IP offre un servizio

Dettagli

Realizzazione di una Infrastruttura di Sicurezza

Realizzazione di una Infrastruttura di Sicurezza Realizzazione di una Infrastruttura di Sicurezza Andrea Lanzi, Lorenzo Martignoni e Lorenzo Cavallaro Dipartimento di Informatica e Comunicazione Facoltà di Scienze MM.FF.NN. Università degli Studi di

Dettagli

Reti di Telecomunicazione Lezione 6

Reti di Telecomunicazione Lezione 6 Reti di Telecomunicazione Lezione 6 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Lo strato di applicazione protocolli Programma della lezione Applicazioni di rete client - server

Dettagli

Sicurezza a livello IP: IPsec e Linux

Sicurezza a livello IP: IPsec e Linux Sicurezza a livello IP: IPsec e Linux FreeS/WAN Davide Cerri Pluto Meeting 2001 Problematiche di sicurezza Sicurezza può voler dire diverse cose... riservatezza autenticazione integrità disponibilità autorizzazione

Dettagli

La sicurezza nelle reti di calcolatori

La sicurezza nelle reti di calcolatori La sicurezza nelle reti di calcolatori Contenuti del corso La progettazione delle reti Il routing nelle reti IP Il collegamento agli Internet Service Provider e problematiche di sicurezza Analisi di traffico

Dettagli

Filtraggio del traffico IP in linux

Filtraggio del traffico IP in linux Filtraggio del traffico IP in linux Laboratorio di Amministrazione di Sistemi L-A Dagli appunti originali di Fabio Bucciarelli - DEIS Cos è un firewall? E un dispositivo hardware o software, che permette

Dettagli

Corso di Laurea Specialistica in Ingegneria Informatica Corso di Reti di Calcolatori II Docente: Simon Pietro Romano spromano@unina.

Corso di Laurea Specialistica in Ingegneria Informatica Corso di Reti di Calcolatori II Docente: Simon Pietro Romano spromano@unina. Corso di Laurea Specialistica in Ingegneria Informatica Corso di Reti di Calcolatori II Docente: Simon Pietro Romano spromano@unina.it Reti e mobilità parte seconda Credits Il materiale didattico utilizzato

Dettagli

Architetture di router IP

Architetture di router IP Torino, novembre 2004 Reti e sistemi telematici Architetture di router IP Gruppo Reti TLC giancarlo.pirani@telecomitalia.it http://www.telematica.polito.it/ GIANCARLO PIRANI TELECOM ITALIA LAB ROUTER IP

Dettagli

firecmp Loadable Kernel Module A u t h o r : Giuseppe Gottardi (overet)

firecmp Loadable Kernel Module A u t h o r : Giuseppe Gottardi (overet) <gottardi@ailinux.org> firecmp Loadable Kernel Module A u t h o r : Giuseppe Gottardi (overet) Version: 1.0 Giuseppe Gottardi (overet), laureando in Ingegneria Elettronica presso l Università Politecnica

Dettagli

Indice. Prefazione. Capitolo 1 Introduzione 1. Capitolo 2 Livello applicazione 30

Indice. Prefazione. Capitolo 1 Introduzione 1. Capitolo 2 Livello applicazione 30 Prefazione XI Capitolo 1 Introduzione 1 1.1 Internet: una panoramica 2 1.1.1 Le reti 2 1.1.2 Commutazione (switching) 4 1.1.3 Internet 6 1.1.4 L accesso a Internet 6 1.1.5 Capacità e prestazioni delle

Dettagli

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Introduzione alle Reti di Calcolatori versione 1.0 del 11/03/2003 G. Mecca mecca@unibas.it Università della Basilicata Reti >> Sommario Sommario dei Concetti Elab. Client-Server

Dettagli

Reti e Linux. Andrea Bontempi. Corsi Linux 2012. POuL

Reti e Linux. Andrea Bontempi. Corsi Linux 2012. POuL POuL Corsi Linux 2012 Una breve introduzione: le reti Una rete di calcolatori è un mezzo fisico sul quale è possibile inviare e ricevere messaggi o flussi di dati. La prima rete a commutazione di pacchetto

Dettagli

Corso di recupero di sistemi Lezione 8

Corso di recupero di sistemi Lezione 8 Corso di recupero di sistemi Lezione 8 a.s. 2011/2012 - Prof. Fabio Ciao 24 aprile 2012 Reti TCP/IP Una rete TCP/IP è una rete locale o geografica che utilizza protocolli TCP/IP con i primi 2 livelli una

Dettagli

Sicurezza nelle reti

Sicurezza nelle reti Sicurezza nelle reti Manipolazione indirizzi IP 1 Concetti Reti Rete IP definita dalla maschera di rete Non necessariamente concetto geografico Non è detto che macchine della stessa rete siano vicine 2

Dettagli

Capitolo 1 - parte 1. Corso Reti ed Applicazioni Mauro Campanella

Capitolo 1 - parte 1. Corso Reti ed Applicazioni Mauro Campanella Capitolo 1 - parte 1 Corso Reti ed Applicazioni Mauro Campanella Precisazione Noi ci occuperemo solo della trasmissione di informazione in formato digitale. Un segnale analogico è basato su una variazione

Dettagli

Man-in-the-middle su reti LAN

Man-in-the-middle su reti LAN Università degli Studi di Udine Dipartimento di Ingegneria Gestionale, Elettrica e Meccanica 21 Marzo 2011 Scaletta 1 2 LAN switched ARP Alcuni attacchi MITM 3 4 5 Che cos è L attacco man-in-the-middle

Dettagli

Esercitazione 5 Firewall

Esercitazione 5 Firewall Sommario Esercitazione 5 Firewall Laboratorio di Sicurezza 2015/2016 Andrea Nuzzolese Packet Filtering ICMP Descrizione esercitazione Applicazioni da usare: Firewall: netfilter Packet sniffer: wireshark

Dettagli

Il firewall Packet filtering statico in architetture avanzate

Il firewall Packet filtering statico in architetture avanzate protezione delle reti Il firewall Packet filtering statico in architetture avanzate FABIO GARZIA DOCENTE ESPERTO DI SECURITY UN FIREWALL PERIMETRALE È IL PUNTO CENTRALE DI DIFESA NEL PERIMETRO DI UNA RETE

Dettagli

Classe bit: 0 1 2 3 4 8 16 24 31. 0 net id host id. 1 0 net id host id. 1 1 0 net id host id. 1 1 1 0 multicast address

Classe bit: 0 1 2 3 4 8 16 24 31. 0 net id host id. 1 0 net id host id. 1 1 0 net id host id. 1 1 1 0 multicast address CAPITOLO 11. INDIRIZZI E DOMAIN NAME SYSTEM 76 Classe bit: 0 1 2 3 4 8 16 24 31 A B C D E 0 net id host id 1 0 net id host id 1 1 0 net id host id 1 1 1 0 multicast address 1 1 1 1 0 riservato per usi

Dettagli

Raw socket. L intercettazione di un pacchetto IP

Raw socket. L intercettazione di un pacchetto IP Raw socket Il sistema compie molte operazioni sui livelli bassi della rete, ma che non sono immediatamente visibili all utente tramite l interfaccia delle socket L intercettazione di un pacchetto IP Anche

Dettagli

Lezione 11 Livello Applicativo bind (DNS)

Lezione 11 Livello Applicativo bind (DNS) Lezione 11 Livello Applicativo bind (DNS) Università degli Studi di Milano Insegnamento di Terminologia - 1 ISO/OSI (Open System Interconnection) Standard de iure che organizza l'architettura di una rete

Dettagli

IP Mobility. Host mobili

IP Mobility. Host mobili IP Mobility Reti II IP Mobility -1 Host mobili! Dispositivi wireless o wired mobili! Connessione alla rete attraverso: " Wireless LAN " Reti cellulari " Reti Satellitari " LAN " Etc.! Una rete di riferimento

Dettagli

Sommario. Introduzione alla Sicurezza Web

Sommario. Introduzione alla Sicurezza Web Sommario Introduzione alla Sicurezza Web Considerazioni generali IPSec Secure Socket Layer (SSL) e Transport Layer Security (TLS) Secure Electronic Transaction (SET) Introduzione alla crittografia Introduzione

Dettagli

Secure socket layer (SSL) Transport layer security (TLS)

Secure socket layer (SSL) Transport layer security (TLS) Servizi Sicuri per le comunicazioni in rete Secure socket layer (SSL) Transport layer security (TLS) Applicaz. TTP TCP Applicaz. TTP SSL/TLS TCP SSL: Netscape TLS:RFC 2246 Applicaz. TTPS TCP andshake Change

Dettagli

Sicurezza delle reti. Monga. Tunnel. Sicurezza delle reti. Monga

Sicurezza delle reti. Monga. Tunnel. Sicurezza delle reti. Monga Sicurezza dei sistemi e delle 1 Mattia Dip. di Informatica Università degli Studi di Milano, Italia mattia.monga@unimi.it Lezione XIX: Virtual Private Network a.a. 2015/16 1 cba 2011 15 M.. Creative Commons

Dettagli

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori a.a. 2009/10

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori a.a. 2009/10 Corso di Laurea in Ingegneria Informatica Corso di Reti di Calcolatori a.a. 2009/10 Roberto Canonico (roberto.canonico@unina.it) Antonio Pescapè (pescape@unina.it) ICMP ARP RARP DHCP - NAT ICMP (Internet

Dettagli

MODELLI ISO/OSI e TCP/IP

MODELLI ISO/OSI e TCP/IP D. Talia RETI DI CALCOLATORI - UNICAL 1 Reti di Calcolatori MODELLI ISO/OSI e TCP/IP D. Talia RETI DI CALCOLATORI - UNICAL 2 Reti di Calcolatori Livelli e Servizi Il modello OSI Il modello TCP/IP Un confronto

Dettagli

Firewall e NAT A.A. 2005/2006. Walter Cerroni. Protezione di host: personal firewall

Firewall e NAT A.A. 2005/2006. Walter Cerroni. Protezione di host: personal firewall Firewall e NAT A.A. 2005/2006 Walter Cerroni Protezione di host: personal firewall Un firewall è un filtro software che serve a proteggersi da accessi indesiderati provenienti dall esterno della rete Può

Dettagli

Reti di Calcolatori. Master "Bio Info" Reti e Basi di Dati Lezione 2

Reti di Calcolatori. Master Bio Info Reti e Basi di Dati Lezione 2 Reti di Calcolatori Sommario Software di rete TCP/IP Livello Applicazione Http Livello Trasporto (TCP) Livello Rete (IP, Routing, ICMP) Livello di Collegamento (Data-Link) I Protocolli di comunicazione

Dettagli

Tunneling, reti private e NAT

Tunneling, reti private e NAT Tunneling, reti private e NAT Partly based on! course slides by L. Peterson " Princeton University! Cisco documentation Reti Private - NAT -1 Argomenti della lezione! Tunneling " Generic Route Encapsulation

Dettagli

Indice 1 L architettura di un sistema GNU/Linux 1 1.1 L architettura del sistema................................ 1 1.1.1 L architettura di base.............................. 1 1.1.2 Il funzionamento del

Dettagli

FIREWALL. Firewall - modello OSI e TCP/IP. Gianluigi Me. me@disp.uniroma2.it Anno Accademico 2005/06. Modello OSI. Modello TCP/IP. Application Gateway

FIREWALL. Firewall - modello OSI e TCP/IP. Gianluigi Me. me@disp.uniroma2.it Anno Accademico 2005/06. Modello OSI. Modello TCP/IP. Application Gateway FIREWALL me@disp.uniroma2.it Anno Accademico 2005/06 Firewall - modello OSI e TCP/IP Modello TCP/IP Applicazione TELNET FTP DNS PING NFS RealAudio RealVideo RTCP Modello OSI Applicazione Presentazione

Dettagli

Ed. 00. Guida SIP Trunking 11. 2006

Ed. 00. Guida SIP Trunking 11. 2006 Ed. 00 Guida SIP Trunking 11. 2006 COPYRIGHT Il presente manuale è esclusivo della SAMSUNG Electronics Italia S.p.A. ed è protetto da copyright. Nessuna informazione in esso contenuta può essere copiata,

Dettagli

Reti. Reti. IPv4: concetti fondamentali. arp (address resolution protocol) Architettura a livelli (modello OSI)

Reti. Reti. IPv4: concetti fondamentali. arp (address resolution protocol) Architettura a livelli (modello OSI) Reti Architettura a livelli (modello OSI) Prevede sette livelli: applicazione, presentazione, sessione, trasporto, rete, collegamento dei dati (datalink), fisico. TCP/IP: si può analizzare in maniera analoga

Dettagli

Sicurezza nelle applicazioni multimediali: lezione 9, firewall. I firewall

Sicurezza nelle applicazioni multimediali: lezione 9, firewall. I firewall I firewall Perché i firewall sono necessari Le reti odierne hanno topologie complesse LAN (local area networks) WAN (wide area networks) Accesso a Internet Le politiche di accesso cambiano a seconda della

Dettagli

Petra Internet Firewall Corso di Formazione

Petra Internet Firewall Corso di Formazione Petra Internet Framework Simplifying Internet Management Link s.r.l. Petra Internet Firewall Corso di Formazione Argomenti Breve introduzione ai Firewall: Definizioni Nat (masquerade) Routing, Packet filter,

Dettagli

Elementi di Sicurezza e Privatezza Laboratorio 6 - Sniffing. Chiara Braghin chiara.braghin@unimi.it

Elementi di Sicurezza e Privatezza Laboratorio 6 - Sniffing. Chiara Braghin chiara.braghin@unimi.it Elementi di Sicurezza e Privatezza Laboratorio 6 - Sniffing Chiara Braghin chiara.braghin@unimi.it Sniffing (1) Attività di intercettazione passiva dei dati che transitano in una rete telematica, per:

Dettagli

Sicurezza delle reti 1

Sicurezza delle reti 1 1 Mattia Dip. di Informatica Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2012/13 1 cba 2011 13 M.. Creative Commons Attribuzione-Condividi allo stesso modo 3.0 Italia License. http://creativecommons.org/licenses/by-sa/3.0/it/.

Dettagli