Magazine Università

Tutto quello che devi sapere su IPSecure

Creato il 29 dicembre 2010 da Ewilly

Definizione


Internet Protocol Security (IPSec) è una collezione di protocolli implementati da IETF che fornisce un metodo robusto e facilmente espandibile per garantire la sicurezza del protocollo IP, sia esso versione 4 sia 6, e dei protocolli di livello superiore (come ad esempio UDP e TCP), proteggendo i pacchetti che viaggiano tra due sistemi host, tra due security gateway (ad esempio router o firewall) oppure tra un sistema host e una security gateway.
La sicurezza viene raggiunta attraverso la cifratura e l'autenticazione dei pacchetti IP. La sicurezza viene fornita, quindi, a livello di rete. La capacità di fornire protezione a livello di rete rende questo protocollo trasparente al livello delle applicazioni che non devono essere modificate.
IPSec permette di:

  • Rendere sicure le comunicazioni tra diversi uffici di un’organizzazione.

  • Rendere sicuro l’accesso remoto via Internet.

  • Stabilite connettività intranet/extranet con partner aziendali.

  • Miglioramenti nella sicurezza del commercio elettronico.

  • Rendere sicure le VPN basate su reti IP.


IP Sec offre come servizi principali:

  • Controllo degli accessi;

  • Integrità dei datagrammi;

  • Autenticazione dell'origine dei dati;

  • Rifiuto dei pacchetti introdotti nuovamente in rete (una forma parziale di verifica dell'integrità di sequenza);

  • Riservatezza (mediante l'uso della crittografia);

  • Limitata riservatezza del flusso del traffico.


Come funziona IPsec?



IPSec crea delle comunicazioni sicure che sono basate su:
-   Protocolli di garanzia dell'integrità dei dati
-   Algoritmi cronografici
Per ogni trasmissione di dati, IPSec stabilisce una connessione di un certo tempo.
Per ogni trasmissione IPSec tiene un certo numero d’informazione sulla connessione usando La SAD (Security Association Database.)
Per controllare gli accessi alla connessione IPSec usa la SPD (Security Policy Database).
Per garantire l'integrità dei dati L'IPSec usa 2 protocolli (Authentication Header (AH) e Encapsulating Security Payload (ESP). )
Per garantire lo scambio delle chiavi e realizzare un flusso crittografato, IPSec usa il protocollo IKE (Internet Key Exchange.)
Per funzionare IPSec ha due modalità:
-Modalità Trasporto (Transport Mode): quando, tra due sistemi terminali di una connessione IPSec, viene a essere garantita la sicurezza dei protocolli di livello superiore a IP;
-Modalità Tunnel (Tunnel Mode): quando gli attori vengono a essere le security gateway e la sicurezza è data a tutto il pacchetto IP.
Figura1: Architettura dell'IPSec
IPsec architecture

IPsec in dettaglio



Security Policy Database (SPD)


SPD definisce i requisiti di sicurezza per IPSec. E' consultato ogni qualvolta sia necessario trattare del traffico, sia in ingresso sia in uscita e basandosi su caratteristiche legate al protocollo IP, oppure a quanto contenuto nei protocolli di livello superiore, permette l'applicazione di un semplice criterio:

  • Scarta: impedirà al pacchetto di entrare/uscire;

  • Non applicare: non applicherà i servizi di sicurezza al pacchetto in uscita e non si aspetterà di averne sul pacchetto in entrata;

  • Applica: applicherà i servizi di sicurezza al pacchetto in uscita e si aspetterà di averne sul pacchetto in entrata.


Security Association (SA) e Security Association Database (SAD)


Una SA è un insieme di accordi circa i protocolli, gli algoritmi crittografici e le chiavi da utilizzare per la comunicazione IPSec.
Ogni SA, che sia creata manualmente o come vedremo dopo, mediante IKE, definisce, anche in base al protocollo utilizzato, che sia esso AH o ESP, un legame di tipo unidirezionale. Supponendo, ad esempio, di avere due sistemi, A e B, connessi mediante IPSec, si avrà per ognuno dei due una SAingresso ed una SAuscita, aventi però gli stessi parametri dal punto di vista crittografico.
SAD è l'archivio all'interno del quale, ogni singolo sistema conserverà un elenco delle SA attive, identificandole con i seguenti parametri.

  • Gli indirizzi IP dei peer coinvolti nella comunicazione.

  • Il protocollo che sarà utilizzato per il tunnel (AH o ESP.)

  • Le tecniche di cifratura utilizzate e le relative chiavi.

  • Un intero a 32 bit chiamato SPI, acronimo per Security Parameter Index.


Autentication Header (AH)


AH rappresenta una Semplice autenticazione e permette di autenticare il mittente ed evitare attacchi “man in the middle”.
Garantisce l'integrità del messaggio ma non offre la confidenzialità.
Figura2: Autentication Header
Autentication Header

Encapsulating Security Payload (ESP)


Corrisponde allo scenario di autenticazione e crittazione.
Abbiamo autenticazione del mittente e crittazione del payload. Livello massimo di sicurezza, ma viene “oscurato” il payload IP, quindi crea problemi per il caching, il filtering e la gestione della QoS.
In questo caso abbiamo confidenzialità e controllo d’integrità del messaggio.
Figura 3:Encapsulating Security Payload:
Encapsulating secrity Payload

Modalità di Funzionamento:


Figura 4: Modalità di Funzionamento dell'IPSec:
Modalità di funzionamento Ipsec

Trasporto:
Nella modalità trasporto, l'intestazione Ipsec è inserita subito dopo di quella dell'IP. Il campo Protocol nell'intestazione IP è cambiato in modo da indicare che un'intestazione IPsec segue quella solita dell'IP. L'intestazione IPsec contiene le
informazioni di sicurezza: l'identificatore SA, un nuovo numero di sequenza,
eventualmente un controllo d’integrità del campo payload.
La modalità trasporto non cambia di molto la lunghezza del pacchetto. Aggiunge un
intestazione al pacchetto IP detta AH (Authentication Header). AH garantisce il controllo
dell'integrità e la sicurezza contro gli attacchi di ricezione, ma non la segretezza (cioè la cifratura).Nel transport mode si devono ricalcolare i checksum dell’IP e del TCP.
Tunnel:
Nella modalità tunnel l'intero pacchetto IP, compresa l'intestazione, è incapsulato nel corpo di un nuovo pacchetto IP con un'intestazione IP completamente diversa. La modalità tunnel è utile quando il tunnel arriva in un posto diverso dalla sua destinazione finale. Il tunnel di solito arriva a una macchina con un gateway sicuro, per esempio il firewall dell'azienda. Facendo terminare il tunnel su questa macchina sicura, il pacchetto è mandato in chiaro al destinatario sulla LAN dell'azienda. Il firewall si occupa di decifrare il messaggio. La modalità tunnel è utile anche nella situazione in cui si vuole aggregare un insieme di connessioni TCP, per poi gestirle come un unico flusso cifrato. In questo modo si evita che un intruso possa avere informazioni sul traffico: per esempio chi sta mandando dei pacchetti, a chi li sta mandando e quanti ne sta inviando (Analisi del traffico).

Casi Pratici di uso dell'IPSec:


•   due diverse sedi comunicano tramite un tunnel reso sicuro,
•   gli utenti esterni (telelavoro, utenti in viaggio, etc.) accedono alla rete aziendale tramite un canale sicuro, attraverso Internet non è possibile “vedere” il contenuto dei pacchetti.

Vantaggi e Svantaggi dell'IPSec:



IPsec è il miglior protocollo di sicurezza IP disponibile al momento. Il suo punto debole è però la sua complessità. IPsec contiene troppe opzioni e lascia troppa flessibilità al suo utilizzatore, mette a disposizione vari metodi per ottenere lo stesso risultato. Questa complessità addizionale ha un effetto devastante sugli standard di sicurezza.
La trappola della complessità
Il nemico peggiore della sicurezza è la complessità. Fallimenti semplici sono semplici da evitare e spesso anche semplici da gestire. Con la complessità invece non si sa come comportarsi. Sistemi complessi mostrano di solito più fallimenti. La complessità non solo rende impossibile la creazione di un sistema sicuro, ma rende il sistema difficile da gestire. IPsec è troppo complesso per essere sicuro. Il progetto chiaramente cerca di supportare differenti situazioni con opzioni diverse. Ciò lo rende veramente complicato. Anche la documentazione è difficile da capire. IPsec ha due modi operativi: AH ed ESP. AH offre l'autenticazione, ESP l'autenticazione, la cifratura o entrambi. Esistono quindi 4 diversi
modi per due macchine che vogliono comunicare tra loro usando l'IPsec: transport/AH, tunnel/AH, transport/ESP, tunnel/ESP. Principalmente le funzionalità della modalità tunnel sono un sovra insieme delle funzionalità della modalità transport. L'unico vantaggio di transport è la dimensione minore del pacchetto. Con l'attuale sviluppo della banda larga si potrebbe eliminare del tutto la modalità transport. Lo stesso discorso vale per ESP e AH. Con una leggera modifica a ESP, includendo il controllo dell'intestazione IP, si potrebbe eliminare anche AH, alleggerendo la complessità del progetto. Un'altra debolezza di IPsec è l'ordine in cui compie l'autenticazione e la cifratura. IPsec esegue prima la cifratura e poi autentica il testo cifrato.
Tipico attacco a IPsec
– supponiamo che due interlocutori abbiano stabilito una SA (che chiameremo SA1) e la usino per trasferire informazioni cifrate con il protocollo ESP (che chiameremo ESP1.)
– finita la trasmissione, SA1 è cancellata.
– supponiamo ora che qualche ora dopo i due interlocutori abbiano di nuovo la necessità di scambiare dati sensibili.
– se il ricevente usa lo stesso Security Parameter Index (l'identificatore della connessione) della ricezione precedente un critto-analista potrebbe introdurre un pacchetto prelevato dalla trasmissione precedente.
– il ricevente controlla l'autenticazione e la trova valida, procede alla decrittazione del messaggio, presumibilmente con una chiave diversa da quella precedente, e si trova con dei dati spazzatura che potrebbero influire sulla stabilità del sistema.
Quest’attacco si potrebbe evitare introducendo l'autenticazione di tutto ciò che è usato per determinare il significato del messaggio.
Ciononostante, utilizzando un algoritmo robusto di cifratura dei dati e stando attenti ai dettagli, si riesce a trasmettere i dati in modo abbastanza sicuro. Non esiste un'alternativa valida che rimpiazza IPsec utilizzando IPv4, l'attuale protocollo standard per le trasmissioni su Internet. Nello sviluppo di Ipv6, il nuovo protocollo per le trasmissioni Internet, si sta dando maggiore importanza alla sicurezza e quindi ci sarà da aspettarsi un supporto nativo alle funzioni di crittografia e di autenticazione sicura.
Riferimenti e approfondimenti:
1. Articolo Ipsec-How to su Pluto.it  | http://www.pluto.it/files/ildp/traduzioni/ipsec-howto
2.Wikipedia | http://it.wikipedia.org/wiki/IPsec
3. Presentazione Powerpoint di Fabrizio Grossi | Microsoft TechNet
4.Tesina di Claudio Alberto Pisapia e Emanuel Weitschek | VPN e Sicurezza: IPSec
5.Articolo di Antonio Magri sull'IPSec | http://www.amagri.it/sicurezza_ms_windows/vpn/ipsec
6. Presentazione Powerpoint di Tommaso Peccorela | Unifi

Potrebbero interessarti anche :

Ritornare alla prima pagina di Logo Paperblog

Possono interessarti anche questi articoli :

Dossier Paperblog

Magazine