IPSec Internet Protocol Security - UTN

Anuncio
IPSec
Internet Protocol Security
Internetworking
UTN Regional La Plata
Ing. Luis E. Barrera
Año 2007
Antecedentes y Definiciones

IPSec es un conjunto de estándares del IETF que proporciona
servicios de seguridad a la capa IP y a todos los protocolos
superiores basados en IP (TCP, UDP, ICMP, entre otros). Este
estándar surge para abordar las carencias graves de seguridad
existentes en el Protocolo IP.

Anterior al surgimiento de IPSec los problemas de seguridad se
abordaban con soluciones propietarias que dificultaban la
comunicación entre los distintos entornos empresariales. La falta de
interoperabilidad fue el principal freno para el establecimiento de
comunicaciones seguras.

IPSec hoy día esta incorporado en todos los equipos de
comunicaciones, como así también en las últimas versiones de los
sistemas operativos mas utilizados.

IPSec tienen como finalidad integrar en IP funciones de seguridad
basadas en criptografía proporcionando Confidencialidad,
Integridad y Autenticidad de paquetes IP a través del uso de un
conjunto de algoritmos de encriptación como por ejemplo:
tecnologías de clave Pública (RSA), algoritmos de cifrado simétrico
(DES, 3DES, etc..), algoritmos de hash (MD5, SHA-1) y certificados
digitales.

Al ser diseñando en forma modular permite seleccionar de entre un
conjunto de algoritmos deseados sin afectar a otras partes, y lo que
es aun mas importante, permite utilizar o incorporar nuevos
algoritmos que se desarrollen en el futuro dando la característica de
versatilidad del estándar IPSec.
Componentes y modos de uso.

Componentes principales:
 AH (Authentication Header)
 ESP (Encapsulating Security Payload)
 IKE ( Internet Key Exchange)

IPSec provee:
 Chequeo de Integridad.
 Autenticación.
 Encriptación (Confidencialidad).

Puede ser usado:
 De extremo a extremo o end-to-end.
 Para establecer Túneles seguros entre Gateways
Asociación de seguridad
Es una conexión lógica unidireccional (simplex) entre dos sistemas
IPSec. Se lo identifica por la terna:
(Security Parameter Index, IP destination, Security Protocol).
SPI: valor de 32 bits que identifica los diferentes SAs que tienen misma
dirección destino y protocolo de seguridad. El SPI se transporta en
el header del protocolo de seguridad que se utilice (AH o ESP).
Tiene significado local únicamente, definido por el creador del SA.
Los valores entre 1 y 255 están reservados por el IANA (Internet
Assigned Numbers Authority).
IP: Dirección IP destino.
Security Protocol: Pueden ser AH o ESP.

Un SA puede ser establecido tanto en modo túnel como en modo
transporte.

Como dijimos un SA es de característica Simplex, con lo cual para
una comunicación bidireccional entre dos sistemas IPSec debemos
definir 2 SAs, uno en cada dirección.

Un SA proporciona servicios de seguridad al tráfico que transporta a
través de AH o ESP, pero NO ambos. Para una conexión que
necesita ser protegida por ambos dos SAs deben ser definidas.
Tunneling
Consiste en encapsular un protocolo en otro. Es una técnica muy
usada en redes de conmutación de paquetes. En IPSec tunelizar es
encapsular IP en IP.

En general la tunelización es usada para transportar tráfico de un
protocolo sobre una red que no soporta ese protocolo directamente.
En el caso de IPSec la tunelización tiene un propósito muy distinto
y es el de proporcionar protección total al paquete IP que es
encapsulado.

Autentication Header (AH)

Garantiza integridad y autenticación de los paquetes IP.

No proporciona confidencialidad, los datos transmitidos pueden ser
vistos por terceros.

AH inserta una cabecera de autenticación entre el header IP
estándar (IPv4 o IPv6) y los datos transportados (TCP, UDP, ICMP)
o un paquete IP completo.

Al ser un nuevo protocolo IP, el IANA le asignó el numero decimal
51.

AH asegura integridad y autenticidad de los datos transportados y
de la cabecera IP, excepto los campos variables: TOS, TTL, flags,
offset y checksum.
Funcionamiento de AH

Next header: campo de 8 bits que identifica el tipo de datos que
contiene el payload, por ejemplo 6 si se transporta TCP, 17 si se
transporta UDP, etc.. Esto en modo transporte, recordando que en
modo túnel el payload es otro paquete IP completo. En el header IP se
coloca en el campo Protocolo el nro. 51 que identifica a AH.

Payload length: campo de 8 bits que contiene la longitud de el header
AH expresado en palabras de 32 bits, menos 2.

Reserved: campo de 16 bits reservado para uso futuro. Toma el
valor 0.

Security parameter index (SPI): Parámetro de 32 bits. Ya definido
en Asociación de Seguridad.

Sequence number: campo de 32 bits. Contador monótono
creciente.

Authentication data: campo de longitud variable que contiene el
(ICV: Integrity check value). El ICV para cada paquete se calcula
con el algoritmo seleccionado en la inicialización de la SA.
Cualquier algoritmo MAC (Message Authentication Code) puede ser
utilizado para calcular el ICV. La especificación requiere que HMACMD5 y HMAC-SHA-1 deben ser soportados.

Los campos que se modifican en la cabecera IP (TTL, TOS, etc.) se
consideran con valor 0 para el cálculo del ICV.

Las ventajas de usar AH en modo transporte es el bajo coste de
procesamiento, pero tiene la desventaja de que los campos del
header IP que se modifican en transito no son autenticados.

Si se necesita autenticar estos campos entonces se debe usar el
modo túnel.
Encapsulating Security Payload

ESP provee chequeo de integridad, autenticación y encriptación de
paquetes IP.

El servicio de chequeo de integridad y autenticación se usan en
conjunto.

La encriptación puede ser usada independientemente de los otros
servicios. Es MUY RECOMENDABLE que si se a seleccionado el
uso de la encriptación también se utilice la autenticación y el
chequeo de integridad. Si se usa solamente la encriptación, un
intruso puede falsear paquete con la intención de montar un ataque
de criptoanálisis.

ESP tiene asignado el número de protocolo 50 asignado por IANA.
Como funciona ESP
Formato del paquete ESP

Como vemos el formato es mas complejo que el de AH. En ESP
tenemos un Header ESP, un Trailer ESP y un ESP Authentication
Data.






Security Parameter Index (SPI): Campo de 32 bits. Ya definido e
AH y SA.
Sequence number: Campo de 32 bits monótono creciente.
Payload data: Carga útil del protocolo indicado en Next header a
ser encriptada.
Padding: Debido a que varios algoritmos criptográficos necesitan
como entrada de datos bloques de tamaño definido, para completar
y alcanzar el tamaño de dichos bloques se utiliza este campo de
relleno.
Pad length: Campo de 8 bits que indica en bytes el tamaño del
campo padding. Siempre esta presente y si es 0 entonces indica
que no hay relleno.
Next header: Campo de 8 bits que indica el tipo de datos que es
transportado en el campo payload.

Authentication data: Este campo de longitud variable contiene el
ICV (Integrity check value) calculado para el ESP desde el SPI
hasta el next header inclusive. Es un campo opcional, solamente se
incluye en el caso de que el chequeo de integridad y la
autenticación hayan sido seleccionados en el establecimiento del
SA. Las especificaciones de ESP requiere que al menos dos
algoritmos de autenticación sean soportados, HMAC con MD5 y
HMAC con SHA-1.
Es importante aclarar que debido a que tanto el campo Next
Header como el Payload están cifrados, cualquier atacante que
intercepte un paquete no podrá saber si el contenido es TCP o UDP
u otro protocolo. Esto es normal debido a que es el objetivo que se
persigue y que es el de ocultar la información a terceros no
autorizados.
Asi como AH, ESP puede ser usado en dos maneras. Modo Túnel
y Modo Transporte.
ESP en Modo Transporte
En modo transporte ESP no proporciona ni encriptación ni autenticación
de la cabecera IP.
•Esta es una desventaja ya que paquetes falsos pueden ser entregados a
ESP para su procesamiento.
•La ventaja radica en que en modo transporte se tiene un bajo costo de
procesamiento.
ESP en Modo Túnel
Modo transporte y modo túnel de ESP
Protocolo IKE

Hemos visto que ambos extremos en una Asociación de Seguridad
deben tener conocimiento tanto de las claves como del resto de la
información necesaria para enviar y recibir paquetes AH o ESP.
Además ambos nodos deben estar de acuerdo en los algoritmos
criptográficos a emplear como también de los parámetro de control.

Estas operaciones se pueden realizar mediante una configuración
manual o mediante algún protocolo de control que se encargue de
la negociación automática de los parámetros necesarios. Este
protocolo es IKE (Internet Key Exchange).

El IETF definió el protocolo IKE tanto para la gestión automática de
claves como el establecimiento de SAs. Su uso no se limita a IPSec
sino que es un estándar que puede ser usado por otros protocolos
como OSPF y RIPv2.

IKE es un protocolo hibrido que surge de la integración de dos
protocolos complementarios: ISAKMP y Oakley.
 ISAKMP: Define en forma genérica el protocolo de
comunicación y la sintaxis de los mensajes que se utilizan
en IKE.
 Oakey: Especifica la lógica de cómo se realiza de forma
segura el intercambio de clave entre dos partes que no se
conocen previamente.

El objetivo principal de IKE consiste en establecer una conexión
cifrada y autenticada entre dos entidades, sobre la cual se negocian
los parámetros necesarios para establecer una Asociación de
Seguridad en IPSec.
Fases de la negociación IKE

Primera Fase: ambos nodos establecen un canal seguro y
autenticado.
 El canal seguro se logra mediante un algoritmo de cifrado
simétrico y un algoritmo HMAC. Las claves derivan de una
clave maestra que se obtienen mediante el algoritmo de
intercambio de claves Diffie-Hellman.
 Existen varios métodos de autenticación. Los dos mas
usados son:
Método del secreto compartido: cadena de caracteres
que únicamente conocen los extremos y que a través de
alguna función hash cada extremo demuestra al otro que
conoce el secreto sin revelar su valor.
Certificados Digitales: Se utilizan dos claves, una
privada y otra pública.

Segunda Fase: el canal seguro IKE es usado para negociar los
parámetros de seguridad específicos asociados a un protocolo
determinado, en nuestro caso IPSec.
Fases de la negociación IKE
Servicios de Seguridad ofrecidos por IPSec.

Integridad y autenticación del origen de datos.

Confidencialidad.

Detección de repeticiones.

Control de acceso: autenticación y autorización.

No repudio.
Aplicaciones Prácticas de IPSec
Interconexión segura de redes locales.
Acceso seguro de usuarios remotos
Extranet
Referencias:
1.
2.
3.
4.
5.
6.
Santiago Pérez Iglesias. Análisis del protocolo IPSec: el estándar de seguridad en
IP. Telefónica Investigación y Desarrollo.
RedBook. TCP/IP Tutorial and Technical Overview. IBM.
RFC 2402. AH.
RFC 2406. ESP.
RFC 2409. IKE.
RFC 4301. Security Architecture for the Internet Protocol
Descargar