Anda di halaman 1dari 8

1 / 32

iic3252 - Criptografa y Seguridad


Computacional
Captulo 15 - IPSec
Departamento de Ciencia de la Computacin
Ponticia Universidad Catlica de Chile
3 / 32
Conceptos Bsicos
IPSec es una especicacin de mecanismos que permiten
ofrecer seguridad en comunicaciones a travs de una red
IP.
Control de acceso, integridad, autenticacin,
condencialidad, proteccin contra replay.
Es independiente de los algoritmos criptogrcos que se
usen.
IPSec fue diseado como parte del protocolo IPv6
Despus fue agregado a IPv4.
4 / 32
Componentes bsicos de IPSec
Authentication Header (RFC 2402)
Provee autenticacin de origen e integridad de datos.
Soporta anti replay en forma parcial.
Es apropiado cuando se requiere autenticacin pero no
condencialidad.
ESP (Encapsulating Security Payload) (RFC 2406)
Provee condencialidad de trco IP y/o autenticacin
como AH.
5 / 32
Componentes bsicos de IPSec
ISAKMP (Internet Security Association and Key Management
Protocol) (RFC 2408)
Dene cmo dos entidades pueden establecer un canal
seguro, autenticado de comunicacin, intercambiar
informacin de llaves y negociar servicios de seguridad.
Especica el qu, no el cmo (algoritmos especcos).
IKE (Internet Key Exchange protocol) (RFC 2409)
Protocolo para negociar dinmicamente SAs en IPSec.
Basado en la especicacin ISAKMP.
Implementa parcialmente los protocolos OAKLEY (RFC
2412) y SKEME (Secure Key Exchange Mechanism) y
agrega otras dos formas de intercambio propias.
6 / 32
Security Association (SA)
Es un concepto bsico de IPSec.
Dene las medidas de seguridad que se deben aplicar a
paquetes basado en:
Quin los manda, adnde van, y el tipo de datos que llevan.
Pueden ser denidas estticamente por el administrador
Pero lo normal es que se negocien dinmicamente.
Una SA se dene en forma nica por:
Direccin IP de destino, SPI (Security Parameter Index) y el
nmero de protocolo (AH = 51, ESP = 50).
Es unidireccional, por eso la direccin IP de origen no
forma parte de la denicin de la SA.
7 / 32
Modos de operacin de SAs
Modo Transporte
Diseado para proteger los protocolos sobre IP (TCP, UDP,
etc.).
Slo puede ser usado por un host con IPSec.
Modo Tnel
Permite encapsular un paquete IP (el paquete completo se
convierte en el campo data de un nuevo paquete).
Esto permite cifrar y/o aplicar otras medidas de seguridad
al paquete.
Puede ser usado por hosts y gateways con IPSec.
8 / 32
Modo Transporte
Header
IP Ori-
ginal
Datos
Header
IP Ori-
ginal
Header
de Se-
guridad
Datos
9 / 32
Modo Tnel
Header
IP Ori-
ginal
Datos
Nuevo
Header
IP
Header
de Se-
guridad
Header de Seguridad
Header
IP Ori-
ginal
Datos
10 / 32
Bases de Datos de SAs
Cada nodo IPSec debe mantener dos bases de datos:
La base de datos de Polticas de Seguridad (SPD), y
La base de datos de SAs (SAD)
SPD contiene las polticas denidas por el administrador
segn las necesidades de seguridad del trco IP que
entra y sale del nodo.
SAD contiene los parmetros de todas las SAs activas.
11 / 32
SAD
Cada SA est registrada en la SAD con los siguientes
parmetros:
Su SPI (Security Parameter Index)
El protocolo de la SA (ESP o AH)
El modo de la SA (Transporte o Tnel)
Un contador secuencial
Ventana anti replay
La MTU del enlace
Las direcciones IP fuente y destino de la SA
El algoritmo de autenticacin a usar y su llave
El algoritmo de cifrado a usar y su(s) llave(s)
El tiempo de vida de la SA
12 / 32
Procesamiento de Paquetes
Paquetes entrantes
Para encontrar la SA en la SAD, se hace un match de 3
valores:
Direccin IP de destino, protocolo IPSec, y SPI.
La direccin IP de destino y el protocolo IPSec se obtienen
del paquete IP. El SPI se obtiene del header AH o ESP.
Si se encuentra una SA, se aplican al paquete entrante los
servicios de seguridad especicados en la SA.
El paquete pasa a ser procesado por las reglas de la SPD.
13 / 32
Procesamiento de Paquetes
Paquetes salientes
Se procesan segn las reglas de la SPD primero.
Si el paquete hace un match con una regla que especica
IPSec, se busca la SAD para ver si ya existe una SA
establecida.
Si hay una SA, se aplica al paquete saliente.
Si no hay una SA, se negocia una y se almacena en la
SAD despus de negociada.
14 / 32
SPD
La SPD es una lista ordenada de polticas de seguridad
que se deben aplicar a paquetes IP.
Cules algoritmos de cifrado usar, etc.
Se almacena en el dispositivo IPSec y es mantenida por el
administrador de polticas, que puede ser:
Un usuario, el administrador o una aplicacin externa.
Una poltica en la SPD tiene dos componentes:
Selectores: conjunto de parmetros y valores o rangos de
valores para esos parmetros (campos en el header IP o
credenciales de autenticacin obtenidas de certicados
digitales).
Accin: qu hacer con este tipo de paquete (aplicar IPSec,
botar el paquete o dejarlo pasar en claro).
15 / 32
SPD . . .
Como la SPD es una lista ordenada de polticas, la
primera poltica en la lista con la que hace un match es la
que se aplica al paquete.
Hay una poltica por defecto que se aplica si no se
encontr ninguna en la SPD. Generalmente, se bota el
paquete.
Como la SPD debe ser consultada por cada paquete IP
entrante y saliente, se convierte en el cuello de botella de
un nodo IPSec.
No es fcil indexar la SPD.
16 / 32
Ejemplo de polticas en la SPD
Paquetes entrantes
Direccin IP fuente = 172.16.1.2 IPSec (ESP, 3DES, SHA-1)
distinguished_name = Jens Hardings IPSec (ESP, 3DES, MD5)
Direccin IP destino = 192.168.10.15 Cleartext
Cuando una poltica contiene selectores que no son campos
del paquete IP (como e-mail, DN, etc.), deben ser traducidas a
direcciones IP durante la negociacin IKE.
17 / 32
AH (Authentication Header)
NH (8 bits) Largo (8 bits) Reservado (16 bits)
Security Parameter Index (SPI) (32 bits)
Nmero de Secuencia (32 bits)
Datos de autenticacin (variable)
NH (Next Header)
= campo Protocolo
en header IP origi-
nal
Largo del header
AH en palabras de
4 bytes menos 2
Nmero asignado
por el nodo IPSec
destino
Parte en 0 y se le
suma 1 con cada
paquete.
ICV (Integrity Che-
ck Value) depende
del algoritmo de
hash debe ser ml-
tiple de 4 bytes
18 / 32
AH
AH provee autenticacin de los datos en el paquete IP y lo
que se pueda autenticar del header IP.
Los campos que son mutables (porque pueden cambiar
durante el viaje) son:
Tipo de Servicio (TOS)
Offset de fragmento
Flags de fragmentacin
Tiempo de vida (TTL)
Checksum del Header
Cuando se reciben fragmentos IP, no se puede aplicar AH
hasta que todos los fragmentos lleguen y se rearme el
paquete original.
19 / 32
ESP (Encapsulating Security Payload)
Header
IP
Header
ESP
Datos Trailer ESP
Autenticacin
ESP
Security Parameter
Index (SPI) (32 bits)
Nmero de Secuencia
(32 bits)
Relleno
(0 255 bytes)
Largo del
relleno
(8 bits)
Next
Header
(8 bits)
Datos de autenti-
cacin (variable)
20 / 32
ESP . . .
Campos iguales que en AH en header ESP, trailer ESP,
Autent. ESP:
SPI, Nmero de Secuencia, Next Header, Datos de
Autenticacin.
Si el tamao del paquete resultante es mayor que la MTU,
se debe fragmentar
ESP se aplica al paquete completo, despus se fragmenta.
El receptor debe rearmar el paquete antes de procesarlo.
21 / 32
IKE (Internet Key Exchange)
ESP y AH especican cmo los servicios de seguridad se
deben aplicar a los paquetes IP de acuerdo a las SAs
negociadas.
IKE (RFC 2409) permite negociar dinmicamente SAs
para IPSec.
Porqu negociar SAs?
No tiene sentido preestablecer todas las posibles SAs si no
existe trco que las use.
Las SAs no pueden durar demasiado tiempo porque se
corre el peligro que se ataquen las llaves de la SA. Esto
implica cambiar llaves y renegociar la SA peridicamente.
22 / 32
IKE e ISAKMP
IKE est basado en el marco denido en ISAKMP (RFC
2408)
Un mensaje ISAKMP es un paquete UDP (puerto 500):
Header
UDP
Header
ISAKMP
Data 1
ISAKMP
Data 2
ISAKMP
Data n
ISAKMP
Cookie del iniciador (8 bytes)
Cookie del respondedor (8 bytes)
Cookie del respondedor (8 bytes)
Header
ISAKMP
Versin
Mayor
Versin
Menor
Tipo
Interc.
Flags
Largo del mensaje
23 / 32
Fases in ISAKMP
ISAKMP dene dos fases para negociar una SA:
Fase 1 se negocia a nivel ISAKMP y se establece
una SA ISAKMP (no confundir con SA IPSec)
bidireccional.
Fase 2 se negocia una SA para otro protocolo (IPSec
en este caso) usando la SA ISAKMP creada
en la fase 1. Mltiples SAs IPSec pueden ser
negociadas con una sola SA ISAKMP
establecida entre dos nodos IPSec.
ISAKMP dene dos modos de negociacin para la fase 1:
modo normal y modo agresivo.
24 / 32
ISAKMP Fase 1: modo normal
Iniciador Respondedor
Ofrecimiento de
posibles SAs
Round 1
SA Aceptada
Material para intercam-
bio de llaves e informa-
cin adicional (nonce)
Round 2
Material para intercam-
bio de llaves e informa-
cin adicional (nonce)
Material de au-
tenticacin
Round 3
Material de au-
tenticacin
25 / 32
ISAKMP Fase 1: modo normal
Round 3 ofrece tres formas de autenticacin:
Secreto compartido Se genera una llave secreta derivada del
secreto compartido para crear el hash con llave,
que se usa para autenticarse.
Firma digital Se intercambian identidades, llaves pblicas y
propuesta de SAs rmadas digitalmente.
PKI Se intercambian identidades, nonce, y hash con
llave, todos cifrados con la llave pblica del otro
nodo que se obtiene de un certicado digital.
26 / 32
ISAKMP Fase 1: modo agresivo
Iniciador Respondedor
Ofrecimiento de
posibles SAs, material
de llave, Nonce, ID
SA Aceptada, material
de llave, Nonce,
ID, autenticador
Autenticador
El intercambio de autenticadores no est cifrado.
27 / 32
IKE, Fase 2
Al completarse la Fase 1, en modo normal o agresivo, se
establece una SA ISAKMP bidireccional que se usar para
proteger la negociacin de SAs en la Fase 2.
En la Fase 2, se negocian SAs que requieran servicios
como IPSec o cualquier otro que quiera negociar
parmetros y material de llaves.
Como la negociacin es sobre un canal seguro (la SA
ISAKMP establecida en la Fase 1), se denomina modo
rpido.
28 / 32
IKE, Fase 2: modo rpido
Iniciador Respondedor
Ofrecimiento de
posibles SAs, material
de llave, Nonce, ID
SA Aceptada, material
de llave, Nonce,
ID, autenticador
Hash
La identidad de los nodos ya se veric en la Fase 1.
Los intercambios est protegidos por la SA ISAKMP.
Los ID que se intercambian en la Fase 2 son los selectores
que se usan en la SPD de IPSec.
Cuando se establece la SA IPSec, existe independiente de
la SA ISAKMP, y sta ltima puede desaparecer.
29 / 32
Llaves Maestras
La llave secreta generada por el intercambio
Dife-Hellman en la fase 1 se llama llave maestra ISAKMP.
La llave secreta generada por el intercambio
Dife-Hellman en la fase 2 se llama llave maestra del
usuario.
IKE usa los modos de intercambio y grupos denidos en el
estndar Oakley.
30 / 32
Oakley (RFC 2412)
Protocolo para generar llaves que usa DH para
intercambiar llaves secretas con seguridad.
Dene 3 modos de intercambio de llaves:
Modo agresivo requiere 3 mensajes para la negociacin y
la identidad de los nodos no est protegida.
Modo conservador requiere 6 mensajes para la
negociacin y la identidad de los nodos est
protegida.
Modo rpido se usa cuando ya existe una llave antigua
(de algn intercambio previo), requiere slo 3
mensajes, y la identidad est protegida.
Dene 5 grupos para intercambios DH.
Cada grupo dene el par p y g
31 / 32
Procesamiento de paquetes en IPSec
Paquetes entrantes
Se extrae el protocolo (ESP o AH), el SPI y la direccin IP
de destino (puede estar en el header IP o en el header
ESP o AH).
Se busca la SA correspondiente en la SAD. Si no existe,
se genera un error.
Se procesa el paquete segn lo que diga la SA y se
devuelve el paquete desencapsulado.
El paquete desencapsulado se compara con las reglas en
la SPD. Si no se permite su paso, se bota.
El paquete se pasa a la capa superior (aplicacin).
32 / 32
Procesamiento de paquetes en IPSec
Paquetes salientes
Se busca en la SPD un regla que calce con el paquete. Si
no hay match, se bota y se genera un error.
Se determina si existe una SA ya establecida para este
paquete.
Si no existe, se negocia y establece una nueva SA. El
paquete puede ser botado mientras se negocia la SA.
Si ya exista una SA o si se estableci una SA nueva,
IPSec debe procesar el paquete segn los parmetros de
la SA.
El paquete resultante se retorna para ser transmitido por la
red.

Anda mungkin juga menyukai