30
IPSec Internet Protocol Security Internetworking UTN Regional La Plata Ing. Luis E. Barrera Año 2007

IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

Embed Size (px)

Citation preview

Page 1: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

IPSecInternet Protocol Security

InternetworkingUTN Regional La Plata

Ing. Luis E. Barrera

Año 2007

Page 2: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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.

Page 3: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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.

Page 4: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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

Page 5: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

Asociación de seguridadEs 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.

Page 6: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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.

Page 7: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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.

Page 8: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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.

Page 9: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

Funcionamiento de AH

Page 10: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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.

Page 11: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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 HMAC-MD5 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.

Page 12: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:
Page 13: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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.

Page 14: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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.

Page 15: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

Como funciona ESP

Page 16: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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.

Page 17: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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.

Page 18: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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.

Page 19: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

ESP en Modo Transporte

Asi como AH, ESP puede ser usado en dos maneras. Modo Túnel

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

Page 20: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

ESP en Modo Túnel

Page 21: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

Modo transporte y modo túnel de ESP

Page 22: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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.

Page 23: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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.

Page 24: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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.

Page 25: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

Fases de la negociación IKE

Page 26: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

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.

Page 27: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

Aplicaciones Prácticas de IPSec

Interconexión segura de redes locales.

Page 28: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

Acceso seguro de usuarios remotos

Page 29: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

Extranet

Page 30: IPSec Internet Protocol Security - | UTN - Facultad ...frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/IPSec-clase.pdf · conjunto de algoritmos de encriptación como por ejemplo:

Referencias:

1. Santiago Pérez Iglesias. Análisis del protocolo IPSec: el estándar de seguridad en

IP. Telefónica Investigación y Desarrollo.

2. RedBook. TCP/IP Tutorial and Technical Overview. IBM.

3. RFC 2402. AH.

4. RFC 2406. ESP.

5. RFC 2409. IKE.

6. RFC 4301. Security Architecture for the Internet Protocol