T3.
VPNs
IPSec es un conjunto de protocolos que añade seguridad en la Capa IP (Capa 3). La ventaja es la
transparencia: Protege cualquier comunicación sin tocar el sw de las aplicaciones.
- ESP (Encapsulating Security Payload): Cifra la información con algoritmos de cifrado. Ofrece
confidencialidad (encriptación), integridad, autenticación (opcional, ya que lo proporciona ya AH),
protección contra ataques de reproducción, NO proporciona autenticación de encabezado de
reenvío, Autenticación ESP opcional (solo tiene sentido si ESP extiende AH)
- AH (Authentication Header): Autentica y asegura la integridad con algoritmos de autenticación.
Ofrece autenticidad e integridad (con hashes como MD5 o SHA-1), integridad (nadie puede
capturar un paquete y reenviarlo para hacerse pasar por ti) y no repudio.
* AH autentica TODO el paquete, incluidos los campos fijos de la cabecera IP, ignorando solo los que
cambian al viajar, como el TTL.
- Gestión de claves: Con protocolos como ISAKMP o PKI para negociar las llaves de cifrado.
Todo este intercambio se basa en la SA (Security Association): Acuerdo de seguridad entre endpoints de
la comunicación.
Además, tiene varios modos de operación: Modo Transporte (se usa la cabecera IP original y solo se
protegen los datos (sin túnel). Es típicamente usado por hosts (endpoints)) y Modo Túnel (El paquete
original se encapsula dentro de uno nuevo, ocultando la IP de origen real. Lo usan los gateways).
- Paquete en IPsec modo transporte: IP Header – AH Header – AH Auth. Data – TCP Header y Payload
- Paquete en modo túnel al principio se le añade una nueva IP Header para proteger lo de detrás.
- Cabecera AH: Next Header (indica lo que viene después), Payload Length (tamaño de la
cabecera), SPI (identificador de la SA), Seq. Number Field (contador de paquetes. evita ataques de
reproducción), ICV (firma digital basada en hash).
- Cabecera ESP (va delante de la AH si va): SPI (identificador de la SA), Seq. Number Field.
(contador de paquetes), Datos ESP (datos encriptados), Cola ESP (incluye el padding (relleno para
que el tamaño del paquete cuadre con el algoritmo) y el Next Header), Datos autenticación ESP
(firma final opcional para auten.).
Es posible usar AH y ESP simultáneamente mediante la adyacencia de transporte, donde la cabecera
AH debe preceder y encapsular a la cabecera ESP para garantizar la autenticación sobre el cifrado. A
diferencia de AH, ESP en Modo Transporte no autentica la cabecera IP externa, protegiendo únicamente
la carga útil y dejando la cabecera exterior sin validación de integridad.
IPsec – Gestión de claves
Aunque IPsec puede funcionar con claves estáticas preconfiguradas manualmente, es mucho más
seguro reemplazarlas periódicamente mediante un sistema dinámico. Para lograr esto se usa IKE
(Internet Key Exchange): Protocolo estándar encargado de negociar tanto el intercambio periódico de
claves como los propios protocolos de seguridad (AH o ESP).
- IKE es una combinación de 3 protocolos distintos: ISAKMP (marco general de gestión), Oakley
(generación de claves y protección de identidad) y SKEME (permitir el intercambio anónimo y refresco
rápido de claves).
Fases IKE
- 1º fase: se crea un canal de gestión seguro y bidireccional (SA ISAKMP) para proteger las propias
conversaciones de IKE. Se ejecuta solo una vez: Disp. negocian algoritmos, intercambian claves base y
se autentican entre pares.
- 2º fase: Se negocian las claves específicas para los datos del usuario con Diffie-Hellman y una
propiedad llamada PFS (Perfect Forward Security): Las claves nuevas no dependen de las antiguas,
evitando dependencias que pudiesen ser explotadas. Esta fase se repite periódicamente por seguridad.
* Duración de la clave IPsec < duración de la clave IKE.
IPsec ESP
Para saber que hacer con cada paquete, IPsec usa dos BDs: La primera es la SPD (Security Policy
Database): Almacena políticas generales definidas estáticamente (similar a una ACL). La segunda es la
SAD (Security Association Database), una BD dinámica que contiene los datos técnicos reales de las
conexiones vivas en ese momento.
strongSwan
Herramienta sw Linux para gestionar el sistema IKE. El kernel implementa IPsec y mueve los paquetes
y strongSwan implementa IKE hablando con el kernel para gestionar las SAs.
- Permite configurar los 3 tipos principales de VPN: host-host (PC-PC), net-net (sede-sede) y
roadwarrior (empleado remoto conectándose a la oficina).
- Aunque soporta AH y ESP, NO soporta los dos a la vez.
OpenVPN
VPN basada en TLS, donde TLS asume el mismo rol que IKE desempeña en IPsec, encargándose de la
negociación inicial. El tráfico se encamina a través de una interfaz virtual TUN/TAP y viaja sobre UDP en
lugar de TCP (es decir, el tráfico de datos encapsulado no va cifrado mediante TLS, ya que este se limita
a gestionar el canal de control).