PDF Redes de Comunicaciones en PDF.
Subsecciones

9.5 Esquemas de seguridad

Las diferentes técnicas criptográficas (algoritmos de cifrado y resumen, intercambio de claves, autenticación de equipos y usuarios y firma electrónica) vistas hasta ahora se combinan para crear diferentes esquemas de seguridad y protocolos de comunicación segura.

9.5.1 SSL y TLS

TLS (Transport Layer Security) es un protocolo estándar basado en SSL (Secure Sockets Layer), desarrollado por Netscape. TLS permite establecer comunicaciones seguras punto-a-punto por encima de la capa de transporte de la red (generalmente TCP/IP). TLS otorga autenticación (mediante PKI), confidencialidad e integridad. La autenticación puede ser unilateral (por ejemplo en un entorno web cliente-servidor) o bilateral, ya sea utilizando PKI, TLS-PSK o SRP.

Durante el inicio de la comunicación los extremos negocian el algoritmo de cifrado simétrico a utilizar, realizan el intercambio (o acuerdo) de clave y acuerdan los algoritmos de firma a utilizar. Una vez establecida la comunicación se utiliza el algoritmo de clave simétrica (con la clave acordada) para cifrar la comunicación y el algoritmo de firma para generar los códigos de autenticación de los mensajes (MAC: Message Authentication Codes o kHMAC).

Los algoritmos más utilizados en TLS son:

9.5.2 IKE

IKE (Internet Key Exchange) o IKEv2 (la versión 1 es obsoleta) permite la creación de conexiones de seguridad que utiliza DH para el intercambio de claves y PSK, PKI o Kerberos para la autenticación de las partes. Permite negociar el cifrado simétrico y la firma de mensajes.

IKE funciona sobre UDP y, entre otros, es utilizado por ISAKMP y EAP-IKE.

9.5.3 ISAKMP (Internet Security Association and Key Management Protocol)

Es un esquema utilizado en IPSec para establecer comunicaciones seguras (crear asociaciones de seguridad) y renovar periódica y automáticamente la clave del cifrado simétrico entre las partes. ISAKMP generalmente utiliza IKE para crear la asociación de seguridad y negociar el algoritmo de cifrado y firma, aunque puede utilizar otros protocolos.

9.5.4 WEP, WPA (TKIP) y WPA2

El esquema de seguridad inicial de 802.11 se llamó WEP (Wired Equivalent Privacy) y se basaba en el algoritmo de cifrado de flujo RC4 y una clave pre-compartida (PSK: Pre-Shared Key).

El esquema original (WEP-40) para generar la clave de flujo de RC4 (64 bits) utiliza una clave PSK de 40 bits que se concatena con una cadena de 24 bits que identifica la red (vector de inicialización).

Tras aliviar las restricciones legales a los algoritmos de cifrado (año 2000) se comenzó a usar una clave de 128 bits (WEP-104). Sin embargo los problemas de WEP con RC4 tienen mucho que ver con el vector de inicialización y la obtención de la clave de flujo, por lo que el aumento de la clave no es útil ya que el sistema sigue siendo inseguro.

WPA (Wi-Fi Protected Access) comenzó a utilizarse en 2003. Esta especificación se basaba también en RC4 con PSK pero utiliza TKIP (Temporal Key Integrity Protocol) para mejorar la seguridad. TKIP realiza un control de integridad de los paquetes (ya que en los ataques algunos paquetes se alteraban sin llegarlos a descifrar), un conteo de los mismos y utiliza una función para obtener la clave de RC4 mezclando la clave de usuario con el vector de inicialización de la red (en vez de realizar una simple concatenación).

El sistema 802.11i final, conocido como WPA2, apareció en 2004. Permite utilizar nuevos mecanismos de distribución de la clave (comoEAP), autenticación basada en PSK o en servidores (como servidores RADIUS) y CCMP (basado en AES) para cifrado. CCMP (Counter-mode with Cipher-block-chaining Message-authentication Protocol), es opcional en WPA y sustituye totalmente a TKIP y WEP (obsoletos) en WPA2. CCMP utiliza AES tanto para la mantener la confidencialidad como para verificar la integridad.

La configuración habitual recomendada es WPA2 con clave precompartida (AES-PSK) -en entornos domésticos o PyMES- o WPA2 con servidores RADIUS (EAP-TLS) en entornos corporativos.

9.5.5 EAP, LEAP y PEAP

EAP (Extensible Authentication Protocol) es un esquema de autenticación utilizado en PPP y redes inalámbricas, siendo el esquema oficial de WPA y WPA2. No es un mecanismo de autenticación sino que define formatos de mensajes y mecanismos de autenticación para distintos protocolos (conocidos como EAP-MD5, EAP-SIM, EAP-AKA, EAP-TLS, EAP-IKEv2, EAP-TTLS...). Cada protocolo encapsula mensajes EAP.

El objetivo de EAP es generar una clave inicial llamada PMK (Pair-wise Master Key) a partir de la cual establecer la comunicación. Para ello básicamente realiza la autenticación de los extremos y el intercambio de claves para el algoritmo de cifrado acordado.

LEAP (Lightweight Extensible Authentication Protocol) es una versión de EAP creada por Cisco que utiliza MS-CHAP para autenticación de usuarios y actualmente obsoleta por insegura

EAP-PSK utiliza PSK para la autenticación y el intercambio de clave.

EAP-TLS es un esquema poco utilizado ya que requiere que ambas partes utilicen PKI (certificados) para su autenticación. Es universalmente soportado y considerado uno de los más seguros.

EAP-TTLS, conocido a veces únicamente como TTLS (Tunneled Transport Layer Security), es una extensión de EAP-TLS que permite que una de las partes (cliente) se autentique sin necesidad de certificado PKI. El cliente una vez autenticado el servidor crea con él un túnel cuyo uso sirve de autenticación del cliente.

EAP-IKEv2 se basa en IKEv2 para autenticar las dos partes cliente-servidor e intercambiar claves. El servidor puede autenticarse mediante PKI o algoritmos de clave simétrica. El cliente puede autenticarse además mediante una clave de cliente.

PEAP (Protected EAP) es un estándar de la industria similar a EAP-TTLS. Para autenticar las partes se puede utilizar PEAPv0 o v1. Microsoft solo implementa PEAPv0. Para autenticar a los clientes en el servidor se puede utilizar EAP-MSCHAPv2, EAP-TLS, EAP-GTC o EAP-SIM.

La versión más extendida y utilizada, que se conoce símplemente como PEAP, es PEAPv0/EAP-MSCHAPv2.

9.5.6 PGP / OpenPGP / GPG

PGP (Pretty Good Privacy), desarrollado originalmente por Philip Zimmermann en 1991, derivó en el estándar OpenPGP (1997). GPG o GnuPG (GNU Privacy Guard) es una implementación de OpenPGP.

OpenPGP es probablemente el sistema de cifrado personal más utilizado. Nació con el objetivo de cifrar correo-e, a lo que se añadió la firma de mensajes y el cifrado de archivos en disco.

GPG es una utilidad de línea de comandos, pero existen numerosos front-end gráficos y es la herramienta utilizada por múltiples programas para gestionar su cifrado, especialmente clientes de correo y navegadores.

GPG utiliza algoritmos de cifrados libres de patentes como 3DES, AES o Blowfish y ElGamal, mientras que PGP utiliza además algoritmos como IDEA o RSA que tiene restricciones de patentes en algunos países61.

SSH

SSH es un protocolo cliente-servidor que permite la conexión segura con máquinas remotas para abrir sesiones y ejecutar comandos, crear túneles o reenviar puertos TCP y conexiones X11. Además puede trasferir ficheros mediante los protocolos asociados SFTP y SCP. El servidor generalmente escucha en el puerto TCP 22.

SSH-1 es un protocolo monolítico, mientras que SSH-2 es un protocolo de 4 capas: Una de transporte (que incluye el intercambio de claves, cifrado, compresión e integridad), Una de autenticación de usuario (mediante contraseña, clave pública, Kerberos y otros), Una de conexión (que permite múltiples canales en una sola conexión) y una llamada SSHFP DNS que se encarga de las firmas de los servidores (host key fingerprints).

SSH-2 inicialmente utilizaba solo DSA como algoritmo de autenticación de equipos (y opcionalmente usuarios) y el intercambio DH para acordar la clave del algoritmo simétrico. Dado que actualmente RSA ha pasado a dominio público también puede utilizarse en OpenSSH para la autenticación de equipos y usuarios y el intercambio de claves.

SSH utiliza el cifrado asimétrico para la autenticación del servidor y el intercambio de claves (RSA o DSA + DH); el cifrado simétrico para la confidencialidad y los resúmenes para la integridad (mediante MACs: Message Authentication Codes). Además permite comprimir los paquetes para mejorar el rendimiento de la conexión.

 
SSH-1
SSH-2
Cifrado asimétrico RSA RSA, DSA, DH
Cifrado simétrico 3DES, Blowfish, IDEA 3DES, AES, Blowfish, CAST-128, Twofish, IDEA
Resumen MD5, CRC-32 MD5, SHA-1
Compresión zlib zlib
SSH nació como software libre pero cambió a privado como SSH-2 tras la versión 1.2.12. OpenSSH se desarrolló a partir de la última versión libre disponible. Más tarde SSH-2 se propuso como estándar de Internet. OpenSSH incluye:



Notas al pie

...'ises61
GPG permite utilizar IDEA, mediante un plug-in sujeto a restricciones de licencia según países.
2009-05
 
Creative Commons License 2009-05 Güimi (http://guimi.net)
Está permitido copiar, distribuir y/o modificar los documentos bajo los términos de la licencia
"Reconocimiento-Compartir bajo la misma licencia 3.0 España" de Creative Commons.
Puede ver una copia de esta licencia completa.

Redes de Comunicaciones, LAN, WAN, ISO OSI, IP, Ethernet, IEEE 802.11, Wi-Fi, PDH, RDSI, Frame-Relay, xDSL, CATV, VPN, H.323, SIP, Multimedia