IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

31
IPsec 1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca

Transcript of IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

Page 1: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 1

IPsec

Seminario di Sicurezza a.a 2003/2004

Pastorino Luca

Page 2: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 2

Argomenti del seminario

Perché è nato IPsecCos’è una VPNChe cos’è IPsecConcetti base di IPsec

Page 3: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 3

Perché è nato IPsec?

Esigenze di sicurezza su reteFondamentale insicurezza dei protocolli di reteVoler utilizzare Internet come “propria infrastruttura” per connettere le proprie reti locali in maniera sicura: VPN

Page 4: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 4

Cos’è una VPN?Virtual Private Network: è un concetto che può essere implementato nella pratica con l’utilizzo di tecnologie diverse fra loro. Alla base vi è la necessità di avere una insieme di calcolatori che possono fare parte fisicamente di reti diverse (distanti fra loro e topologicamente eterogenee) ma appartenere alla stessa rete logica (VPN). L’utilizzo di meccanismi di autenticazione e crittografia rende questa rete privata.

Page 5: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 5

VPN e IPsec

Significherebbe dunque utilizzare Internet come una Virtual Private Network (VPN), risparmiando così in termini di costi e risorse da investire.

IPsec permette tutto questo: connettere uffici e utenti privati, usando una qualsiasi IP network insicura, per una interconnessione sicura.

Page 6: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 6

Che cos’è IPsec?

Lo standard IPsec è un’architettura per il trasporto sicuro di dati su una rete insicura, usando criptaggio e altri servizi.Può essere impiegato su ogni rete IP anche se è usato principalmente per la costruzione di VPN su Internet.

Page 7: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 7

Che cos’è IPsec

Lavora a livello Network Layer (Layer 3) e si integra con la rete IP esistente.Questo approccio a livello IP porta diversi vantaggi rispetto all’uso di molte tradizionali strategie di sicurezza come link-layer e application-layer encryption.

Page 8: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 8

Vantaggi di IPSec

1. Per trasferire in maniera sicura dati tra due siti, c’è bisogno di IPsec solo agli endpoints: la rete “in mezzo” (Internet ad esempio) non necessita di essere abilitata a IPsec ma basta solo supporti IP (deve solo inoltrare pacchetti IP) [l’approccio link-layer (layer 2) richiede dispositivi di encryption su ogni network link tra i due siti].

2. Può essere adoperato in maniera trasparente ai client e ai server: non c’è bisogno di riconfigurare le applicazioni per lavorare con IPsec [con l’application-layer encryption ogni programma client deve avere la propria implementazione per la sicurezza e poco si può fare per rendere sicuro un programma che non ha già disponibili servizi quali il criptaggio dei dati].

Page 9: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 9

Vantaggi di IPSec

3. Caricando IPsec sui router o altri dispositivi di rete si semplifica il deployment: i router si occupano di applicare alcuni servizi come l’encryption e i client e i server rimangono come sono per un più facile mantenimento.

4. Applicare i servizi IPsec in punti chiave della rete permette di forzare e mantenere una politica di sicurezza consistente in tutta l’organizzazione.

5. IPsec è flessibile: si possono proteggere solo alcuni tipi di traffico lasciando al resto del traffico non segreto di circolare in chiaro per salvare risorse di sistema.

Page 10: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 10

Servizi forniti

IPsec non è dunque un protocollo di sicurezza, ma una architettura per la costruzione di comunicazioni sicure su una rete untrusted e fornisce diversi servizi di sicurezza:

ConfidentialityIntegrityOrigin authenticationAnti-replay

Page 11: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 11

Confidentiality

Garantisce la privacy per i dati che devono essere scambiati (solo il destinatario può facilmente leggere i dati).

Questa è ottenuta attraverso algoritmi crittografici.

Page 12: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 12

Integrity

Integrity (o data integrity) significa garantire che i dati non siano stati alterati durante il trasporto – due parti che stanno comunicando su una rete untrusted devono essere capaci di verificare che i dati ricevuti siano esattamente quelli speditiE’ ottenuta mediante algoritmi di hash crittografici

Page 13: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 13

Origin authentication

Origin Authentication fornisce l’assicurazione che la persona con cui si sta comunicando sia veramente chi dice di essere.Si ottiene con firme e certificati digitali.

Page 14: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 14

Anti-replay

Anti-Replay assicura che una transazione effettuata non possa essere ripetuta da un attaccante

Per IPsec c’è IKE (Internet Key Exchange) che fornisce l’anti-replay mediante l’uso di sequence numbers combinati con l’autenticazione.

Page 15: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 15

Elementi fondamentali di IPsec

Peers Transform Sets Security Associations Transport e Tunnel Modes AH e ESP IKE

Page 16: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 16

Peers

Un peer di un device IPsec è un altro device che partecipa ad IPsec.Può essere un router, un firewall, un server o un dispositivo di accesso remoto come un PC con supporto ad IPsec

Page 17: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 17

Transform SetUn Transform Set è una lista di protocolli IPsec e algoritmi crittografici che un peer può accettare.Poiché IPsec permette l’utilizzo di diversi protocolli e algoritmi, un peer deve dichiarare e negoziare con gli altri peer quali può supportare.Per poter comunicare quindi due peer devono condividere un comune Transform Set, altrimenti il loro tentativo di comunicazione fallirà.

Page 18: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 18

Transform Set

Un transform set generalmente contiene:1. Un IPsec security protocol (AH o ESP) che è

supportato dal peer [è anche possibile usare AH e ESP insieme]

2. Un integrity/authentication algorithm supportato dal peer (ad esempio MD5 HMAC o SHA-1 HMAC)

3. Un algortimo crittografico supportato dal peer (DES o Triple-DES ad esempio) [è anche supportato un null encryption algorithm - cioè si può anche non criptare i dati]

Page 19: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 19

Security AssociationUna security association (SA) è una connessione logica che protegge il flusso di dati da un peer ad un altro utilizzando un transform set.Le security associations sono come tunnel virtuali tra due peer: il traffico che entra in una SA è protetto e trasportato dall’altra parte (l’altro peer).Le SA sono unidirezionali, quindi per una comunicazione bidirezionale sicura tra due peer c’è bisogno di due Security Associations

Page 20: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 20

Security Association

IPsec mantiene i dati necessari per supportare una SA tra due peer; questi parametri includono:

1. L’indentità del peer remoto che partecipa alla comunicazione con IPsec (indirizzo IP od hostname)

2. Il security protocol (AH o ESP), algoritmo di hashing (se è usato), e l’algoritmo crittografico (se è usato ESP). Queste informazioni sono negoziate quando i peer si scambiano i transform sets

3. La chiave condivisa usata dagli algoritmi di hash e criptaggio per la durata della SA (chiamata lifetime della SA)

Page 21: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 21

Security Association4. Una descrizione del flusso di traffico protetto dalla

SA. Solitamente questo specifica l’indirizzo IP e il numero della porta protetta dalla SA. La descrizione può essere più o meno granulare (una singola sessione TCP tra due host o tutto il traffico dalla sottorete X alla sottorete Y, ad esempio)

5. Un numero unico che identifica la SA, chiamato Security Parameter Index (SPI)

6. Timer e contatori che registrano il lifetime di una SA. E’ usato per determinare quando una SA e le sue chiavi associate diventano vecchie e devono essere aggiornate.

7. I sequence numbers per l’individuazione di attacchi di tipo replay (solo quando IKE viene usato)

Page 22: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 22

IPsec Transport ModeIP header Payload

IPsec header PayloadIP header

Original Packet

Protected Packet

IPsec rimuove l’header IP originale, cripta i dati realtivi ai layer OSI più alti, aggiunge in testa il security header appropriato (ESP/AH) e riapplica l’header IP originale.

Questa è la tipica soluzione host-to-host VPN

Page 23: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 23

IPsec Transport Mode

Il transport mode protegge il traffico tra due IPsec host e non fornisce confidentiality al flusso di traffico.Il volume di traffico trasmesso da un host ad un altro può quindi facilmente essere osservato, anche se viene usato il criptaggio, poiché gli indirizzi sorgente e destinazione originali rimangono intatti.Un attaccante potrebbe quindi usare questa informazione per determinare la locazione dei server, assumendo che i server trasmettano e ricevano molti più dati dei client.

Page 24: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 24

IPsec Tunnel Mode

IP header Payload

PayloadIP headerIPsec headerNew IP header

Original Packet

ProtectedPacket

A livello di network layer IPsec cripta l’intero pacchetto IP originario comprendente l’header IP e il relativo payload, viene creato l’header ESP/AH aggiunto in testa al pacchetto criptato, inoltre viene crato un nuovo Header IP che consente al client di inviare il pacchetto originario al gateway VPN appropriato.

Soluzione network-to-network VPN

Page 25: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 25

IPsec Tunnel Mode

Con il tunnel mode non è necessario equipaggiare ogni PC e server con IPsec; basta attivare IPsec sui routers e usare tali routers per fornire i servizi IPsec per conto dei vari computersLa tunnel mode fornisce la confidentiality del flusso di traffico poiché gli indirizzi IP del pacchetto originale sono trasportati nel payload sicuro di un pacchetto IPsec (supponendo l’encryption sia usata).

Page 26: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 26

Authentication Header e Encapsulating Security Payload

IPsec definisce due protocolli di sicurezza chiamati Authentication Header (AH – RFC 2402) e Encapsulating Security Payload (ESP – RFC 2406).Ciascun protocollo definisce il proprio formato per l’IPsec header che segue l’IP header di un pacchetto IPsec.Entrambi usano il concetto di Security Association.

Page 27: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 27

Authentication Header e Encapsulating Security Payload

AH fornisce solamente i servizi di autenticazione e integritàESP fornisce in più la riservatezzaIl fatto che esistano due protocolli con funzionalità sovrapposte è dovuto a ragioni “storiche” connesse all’opportunità di avere un protocollo “esportabile” (restrizioni all’esportazione che riguardano il software crittografico)

Page 28: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 28

Internet Key Exchange

Il protocollo Internet Key Exchange (IKE – RFC 2409) è un management protocol usato insieme ad Ipsec.IKE agisce nella fase di instaurazione della comunicazione IPsec, e permette di negoziare, creare, distruggere e in generale gestire le SA.

Page 29: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 29

Internet Key Exchange

IKE è un importante protocollo che fornisce ad IPsec i seguenti servizi:

1. Stabilisce le IPsec SA dinamicamente quando sono necessarie

2. Abilita il rekeying dinamico3. Abilita la protezione anti-replay4. Abilita la origin authentication

Page 30: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 30

IPsec: implementazioni freeware

FreeS/WAN (Linux) http://www.freeswan.org

KAME (FreeBSD, NetBSD) http://www.kame.org

ISAKMPD (OpenBSD) http://www.openbsd.org/faq/

faq13.html

Page 31: IPsec1 IPsec Seminario di Sicurezza a.a 2003/2004 Pastorino Luca.

IPsec 31

Bibliografia

RFC 2401, 2402, 2406, 2409 (http://www.rfc-editor.org/)