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

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

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

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

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

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 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE

Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE Redatto: Nucleo Gestione Innovazione e fornitori IT Versione: 1.0 Data emissione: 9/11/2006

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

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

Domini Virtual Server

Domini Virtual Server Domini Virtual Server Pannello di controllo Manuale Utente Pannello di controllo domini e virtual server - Manuale utente ver. 2.0 Pag. 1 di 18 Sommario INFORMAZIONI GENERALI... 3 Virtual Server... 3 ACCESSO

Dettagli

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete IP Analizziamo con sufficiente dettaglio il sistema denominato IP, usato per consentire a due computer mobili di spostarsi liberamente in altre reti pur mantenendo lo stesso indirizzo IP. In particolare,

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli

CdL MAGISTRALE in INFORMATICA

CdL MAGISTRALE in INFORMATICA 05/11/14 CdL MAGISTRALE in INFORMATICA A.A. 2014-2015 corso di SISTEMI DISTRIBUITI 7. I processi : il naming Prof. S.Pizzutilo Il naming dei processi Nome = stringa di bit o di caratteri utilizzata per

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

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

Il Protocollo HTTP e la programmazione di estensioni Web

Il Protocollo HTTP e la programmazione di estensioni Web Il Protocollo HTTP e la programmazione di estensioni Web 1 Il protocollo HTTP È il protocollo standard inizialmente ramite il quale i server Web rispondono alle richieste dei client (prevalentemente browser);

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

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

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

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

Appl. di emissione PKCS#11. API (Metacomandi) Resource Manager Windows. Drivers PC/SC dei lettori

Appl. di emissione PKCS#11. API (Metacomandi) Resource Manager Windows. Drivers PC/SC dei lettori Roma, 30 gennaio 2003 La realtà della carta di identità elettronica (nel seguito CIE) e della carta nazionale dei servizi (nel seguito CNS) rende ineluttabile l individuazione di servizi da erogare in

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

Il modello TCP/IP. Sommario

Il modello TCP/IP. Sommario Il modello TCP/IP Il protocollo IP Mario Cannataro Sommario Introduzione al modello TCP/IP Richiami al modello ISO/OSI Struttura del modello TCP/IP Il protocollo IP Indirizzi IP Concetto di sottorete Struttura

Dettagli

Reti di Telecomunicazione Lezione 8

Reti di Telecomunicazione Lezione 8 Reti di Telecomunicazione Lezione 8 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Livello di trasporto Programma della lezione relazione tra lo strato di trasporto e lo strato

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

FIREWALL OUTLINE. Introduzione alla sicurezza delle reti. firewall. zona Demilitarizzata

FIREWALL OUTLINE. Introduzione alla sicurezza delle reti. firewall. zona Demilitarizzata FIREWALL OUTLINE Introduzione alla sicurezza delle reti firewall zona Demilitarizzata SICUREZZA DELLE RETI Ambra Molesini ORGANIZZAZIONE DELLA RETE La principale difesa contro gli attacchi ad una rete

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

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

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

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

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

ARP/RARP. Problema della Risoluzione dell Indirizzo. Corrispondenza statica e dinamica. Scenari

ARP/RARP. Problema della Risoluzione dell Indirizzo. Corrispondenza statica e dinamica. Scenari ARP/RARP Università degli studi di Salerno Laurea in Informatica I semestre 03/04 Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ 2 Problema della Risoluzione dell

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

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

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

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

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

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

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

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

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

Topologia delle reti. Rete Multipoint: ogni nodo è connesso agli altri tramite nodi intermedi (rete gerarchica).

Topologia delle reti. Rete Multipoint: ogni nodo è connesso agli altri tramite nodi intermedi (rete gerarchica). Topologia delle reti Una RETE DI COMPUTER è costituita da un insieme di elaboratori (NODI) interconnessi tra loro tramite cavi (o sostituti dei cavi come le connessioni wireless). Rete Point-to-Point:

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

Programmazione dei socket con TCP #2

Programmazione dei socket con TCP #2 I Il Server e il Client si scambiano messaggi attraverso la rete mediante un dell API (Application Programming Interface) Telematica II 10. Esercitazione/Laboratorio 3 Server ports Clients user space Socket

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

Firewall. Generalità. Un firewall può essere sia un apparato hardware sia un programma software.

Firewall. Generalità. Un firewall può essere sia un apparato hardware sia un programma software. Generalità Definizione Un firewall è un sistema che protegge i computer connessi in rete da attacchi intenzionali mirati a compromettere il funzionamento del sistema, alterare i dati ivi memorizzati, accedere

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

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

Reti standard. Si trattano i modelli di rete su cui è basata Internet

Reti standard. Si trattano i modelli di rete su cui è basata Internet Reti standard Si trattano i modelli di rete su cui è basata Internet Rete globale Internet è una rete globale di calcolatori Le connessioni fisiche (link) sono fatte in vari modi: Connessioni elettriche

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 VPN con il FRITZ!Box Parte II. La VPN con il FRITZ!Box Parte II

La VPN con il FRITZ!Box Parte II. La VPN con il FRITZ!Box Parte II La VPN con il FRITZ!Box Parte II 1 Introduzione In questa mini-guida mostreremo com è possibile creare un collegamento su Internet tramite VPN(Virtual Private Network) tra il FRITZ!Box di casa o dell ufficio

Dettagli

5. Traduzione degli indirizzi di rete in indirizzi fisici: ARP

5. Traduzione degli indirizzi di rete in indirizzi fisici: ARP 5. Traduzione degli indirizzi di rete in indirizzi fisici: ARP 5.1. Introduzione Due macchine si parlano solo se conoscono l'indirizzo fisico di sottorete Due applicazioni si parlano solo se conoscono

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

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

Morret Mobile Robot Remote Tunneling

Morret Mobile Robot Remote Tunneling UNIVERSITÀ DI BRESCIA FACOLTÀ DI INGEGNERIA Dipartimento di Elettronica per l Automazione Laboratorio di Robotica Avanzata Advanced Robotics Laboratory Corso di Robotica (Prof. Riccardo Cassinis) Morret

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

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

UDP. Livello di Trasporto. Demultiplexing dei Messaggi. Esempio di Demultiplexing

UDP. Livello di Trasporto. Demultiplexing dei Messaggi. Esempio di Demultiplexing a.a. 2002/03 Livello di Trasporto UDP Descrive la comunicazione tra due dispositivi Fornisce un meccanismo per il trasferimento di dati tra sistemi terminali (end user) Prof. Vincenzo Auletta auletta@dia.unisa.it

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

DOMOTICA ED EDIFICI INTELLIGENTI UNIVERSITA DI URBINO

DOMOTICA ED EDIFICI INTELLIGENTI UNIVERSITA DI URBINO Corso DOMOTICA ED EDIFICI INTELLIGENTI UNIVERSITA DI URBINO Docente: Ing. Luca Romanelli Mail: romanelli@baxsrl.com Networking NAT 1 Sommario L indirizzamento privato e pubblico I meccanismi di address

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

10. Stratificazione dei protocolli

10. Stratificazione dei protocolli 10. Stratificazione dei protocolli 10.1. Introduzione Abbiamo visto la struttura dell'internet. Ora dobbiamo esaminare la struttura del restante software di comunicazione, che è organizzato secondo il

Dettagli

Reti di Calcolatori 18-06-2013

Reti di Calcolatori 18-06-2013 1. Applicazioni di rete [3 pts] Si descrivano, relativamente al sistema DNS: Compito di Reti di Calcolatori 18-06-2013 a) i motivi per i quali viene usato; b) l architettura generale; c) le modalità di

Dettagli

Internet e protocollo TCP/IP

Internet e protocollo TCP/IP Internet e protocollo TCP/IP Internet Nata dalla fusione di reti di agenzie governative americane (ARPANET) e reti di università E una rete di reti, di scala planetaria, pubblica, a commutazione di pacchetto

Dettagli

Dispense corso Laboratorio di Internet

Dispense corso Laboratorio di Internet Universitá di Roma Sapienza Dipartimento di Ingegneria Elettronica e delle Telecomunicazioni Dispense corso Laboratorio di Internet Luca Chiaraviglio E-mail: {luca.chiaraviglio}@diet.uniroma1.it 3 marzo

Dettagli

Università degli Studi di Pisa Dipartimento di Informatica. NAT & Firewalls

Università degli Studi di Pisa Dipartimento di Informatica. NAT & Firewalls Università degli Studi di Pisa Dipartimento di Informatica NAT & Firewalls 1 NAT(NETWORK ADDRESS TRANSLATION) MOTIVAZIONI NAT(Network Address Translation) = Tecnica di filtraggio di pacchetti IP con sostituzione

Dettagli

Man In The Middle & SSL Attack

Man In The Middle & SSL Attack Man In The Middle & SSL Attack Autore: Duffabio Provenienza: http://duffabio.altervista.org/ Ringrazio BlackLight perchè per la teoria mi sono basato sulle sue guide visto che è da li che ho studiato la

Dettagli

Analisi dei rischi della system call chroot e un valido sostituto: le jail. Marco Trentini mt@datasked.com

Analisi dei rischi della system call chroot e un valido sostituto: le jail. Marco Trentini mt@datasked.com Analisi dei rischi della system call chroot e un valido sostituto: le jail Marco Trentini mt@datasked.com 19 febbraio 2012 Prefazione Questa relazione tratta un aspetto di sicurezza presente nei sistemi

Dettagli

Area Clienti Tiscali Hosting e Domini

Area Clienti Tiscali Hosting e Domini Area Clienti Tiscali Hosting e Domini Manuale Utente Area Clienti Tiscali Hosting e Domini - Manuale utente Pag. 1 di 20 Sommario INFORMAZIONI GENERALI... 3 ACCESSO ALL AREA CLIENTI TISCALI HOSTING E DOMINI...

Dettagli