1 TEMA 2 Protocolos de Autenticación en redes

Anuncio
Seguridad en Sistemas Distribuidos
TEMA 2
Protocolos de Autenticación
en redes
José M. Sierra
José María Sierra
Departamento de Informática
Universidad Carlos III de Madrid
1
Seguridad en Sistemas Distribuidos
Aspectos de seguridad
o La autenticación remota supone un reto para la
seguridad
o Deben evitarse los ataques de repetición
o Mantener la confidencialidad de los secretos
o Canales seguros para la autenticación
o Mecanismos de sincronización temporal o empleo
de contenidos que permitan asegurar la frescura
de la comunicación (nonce)
José M. Sierra
2
Seguridad en Sistemas Distribuidos
KERBEROS
José M. Sierra
oFiabilidad
oSeguridad
oEscalabilidad
oTransparencia
3
Seguridad en Sistemas Distribuidos
KERBEROS
o Diseñado para permitir el acceso de
usuarios a servicios.
o Red Distribuida
o Existen tres amenazas principales:
o Suplantación .
o Ip-spoofing.
o Ataques de repetición.
José M. Sierra
4
Seguridad en Sistemas Distribuidos
KERBEROS
o Su funcinamiento se base en el empleo de
un servidor de autenticación (AS) que
participa en la autenticación entre usuarios
y servidores
o Basado en criptografia simétrica
o Se establece una solución a un problema
muy habitual de seguridad
o Empleado desde su diseño hasta nuestros días.
o Dos versiones: v4 y v5
José M. Sierra
5
Kerberos Version 4
Seguridad en Sistemas Distribuidos
o Terminología empleada:
o C = Client
o AS = authentication server
o V = server
o IDc = identifier of user on C
o IDv = identifier of V
o Pc = password of user on C
o ADc = network address of C
o Kv = secret encryption key shared by AS an V
o TS = timestamp
o || = concatenation
José M. Sierra
6
Seguridad en Sistemas Distribuidos
Autenticación básica
1) C  AS:
IDc || Pc || IDv
2) AS  C:
Ticket
3) C  V:
IDc || Ticket
Ticket = EKv[IDc || Pc || IDv]
◦
José M. Sierra
Problemas:
◦ Cada solicitud al servidor V precisa de la ejecución del protocolo
completo (y la intervención del usuario)
◦ Envío de la contraseña en claro (Pc)
7
Autenticación básica mejorada
Seguridad en Sistemas Distribuidos
o Protocolo en tres fases
o autenticación de usuario, autorización de tipo
de servicio, autorización de un servidor
o Conceptos emergentes
o Además de AS aparece TGS (ticket granting
server y el TGT (ticket granting ticket)
o El TGT permite el uso del TGS
o El TGS permite el uso de un Servicio
determinado
José M. Sierra
8
Autenticación básica mejorada
Seguridad en Sistemas Distribuidos
Obtención del Ticket-Granting Ticket
(1)
C  AS:
IDc || IDtgs
(2)
AS  C:
EKc [Tickettgs]
Tickettgs= EKtgs[IDc||ADc||IDtgs||TS1||Tiempo de vida1]
Obtención del Service-Granting Ticket
(3) C  TGS:
(4) TGS  C:
IDc|| IDv ||Tickettgs
Ticketv
TicketV= EKv[IDc||ADc||IDV||TS2||Tiempo de vida2]
Obtención del Service
(5) C  V:
José M. Sierra
IDc||Ticketv
9
Autenticación básica mejorada
Seguridad en Sistemas Distribuidos
o Problemas:
o Tiempo de vida asociado al ticket-granting ticket
o Si es muy corto  continua petición al usuario
o Si es muy largo  ventajas para el ataque de repetición
o El atacante podria utlizar el ticket de servicio antes
de que caduque
o Suplantación de los Servidores
José M. Sierra
10
Autenticación en Kerberos v4
Seguridad en Sistemas Distribuidos
Obtención del Ticket-Granting Ticket
(1) C  AS:
IDc || IDtgs||TS1
(2) AS  C:
EKc [Kc,tgs||IDtgs||TS2||Tiempo de vida2||Tickettgs]
Tickettgs= EKtgs[Kc,tgs ||IDc||ADc||IDtgs||TS2||Tiempo de vida2]
Obtención del Service-Granting Ticket
(3) C  TGS:
IDv ||Tickettgs ||Authenticatorc
(4) TGS  C:
EKc,tgs [Kc,v|| IDv || TS4 || Ticketv]
Authenticatorc = EKc,tgs [IDc||ADc || TS3 ]
TicketV= EKv[Kc,v ||IDc||ADc||IDV||TS4||Tiempo de vida4]
Obtención del Servicio
(5) C  V:
IDc||Ticketv ||Authenticatorc
(6) V  C: EKc,v [TS5+1]
José M. Sierra
Authenticatorc = EKc,v [IDc||ADc || TS5]
11
Seguridad en Sistemas Distribuidos
TEMA 2. Parte 2
Protocolos Seguros de Acceso
José M. Sierra
12
Seguridad en Sistemas Distribuidos
Introducción
o Túneles de encapsulación de protocolos
(Tunneling)
o La transmisión de paquetes de datos de un
determinado protocolo encapsulados en otro, de
manera que el contenido del paquete original
puede llegar inalterado a su destino, creando
una conexión virtual extremo a extremo a través
de una red.
o En distintos niveles de la pila de red:
José M. Sierra
o Nivel 2 (Enlace):, PPP, PPTP, L2F, L2TP, MPLS, ...
o Nivel 3 (Red): L2TP, MPLS, IPSEC, GRE, ...
13
Introducción
Seguridad en Sistemas Distribuidos
o Repaso al protocolo PPP
o Es un protocolo para encapsular IP por línea
serie que corrige las deficiencias de SLIP.
o Consta de tres partes:
José M. Sierra
o Especificación de la encapsulación de paquetes
o Protocolo de Control de Enlace (LCP), para
establecer, configurar y testear el enlace.
o Familia de Protocolos de Control de Red (NCPs), para
poder especificar distintas familias de protocolos de
niveles superiores y sus parámetros.
14
Seguridad en Sistemas Distribuidos
Protocolos de nivel 2
o Incluyen servicios de seguridad previos al
establecimiento de la comunicación
José M. Sierra
IP
PPP
Layer-2
Layer-2
Point-to-Point
Transport
Forwarding
Tunneling
Protocol (L2TP)
(L2F)
IP
Protocol (PPTP)
15
Protocolos de nivel 2
Seguridad en Sistemas Distribuidos
o PPTP (Point-to-Point Tunneling Protocol):
o Protocolo desarrollado por Microsoft y normalizado
por la IETF (RFC 2637)
o Permite el tráfico seguro de datos desde un cliente
remoto a un servidor corporativo privado
o PPTP soporta múltiples protocolos de red (IP, IPX,
NetBEUI… )
o L2F (Layer 2 Forwarding):
o Protocolo desarrollado por Cisco Systems
o Precursor del L2TP
o Ofrece métodos de autenticación pero carece de
cifrado de datos
José M. Sierra
16
Protocolos de nivel 2
Seguridad en Sistemas Distribuidos
o L2TP (Layer 2 Tunneling Protocol):
o Estándar aprobado por la IETF (RFC 2661)
o Mejora combinada de PPTP y L2F
o No posee cifrado o autentificación por
paquete, por lo que ha decombinarse con otro
protocolo de seguridad
o Combinado con IPSec ofrece la integridad de
datos y confidencialidad exigidos para una
solución VPN
o Permite el encapsulado de distintos protocolos
(IP, IPX,NetBEUI…)
José M. Sierra
17
Seguridad en Sistemas Distribuidos
Seguridad en el protocolo PPTP
o PPTP proporciona dos servicios de
seguridad básicos:
o Autenticación
o Confidencialidad
o PPTP Utiliza la seguridad de PPP para
asegurar las comunicación sobre el túnel
o Autenticación de usuario PPP (PAP, CHAP, MSCHAP, MS-CHAPv2, EAP).
o Confidencialidad y cifrado PPP (MPPE). RC4 con
claves de 40 o 128 bits.
José M. Sierra
18
Seguridad en el protocolo PPTP
Seguridad en Sistemas Distribuidos
o Comunicación en PPTP de dos tipos
o Control
o Creación de un control de conexión PPTP
o Conexión lógica que representa el túnel PPTP.
o El servidor utiliza el puerto TCP 1723 y el cliente un puerto
dinámico.
o Determina los ID de la cabecera GRE entre cliente y servidor
que identifican el túnel PPTP específico.
o Mantenimiento del control de conexión PPTP
o Finalización del control de conexión PPTP
o Datos
José M. Sierra
o Encapsulado y transmisión de datos PPP mediante (GRE).
Generic Routing Encapsulation
19
Seguridad en el protocolo PPTP
Seguridad en Sistemas Distribuidos
o Autenticación
o Password Authentication Protocol (PAP).
o Envía la password en texto claro.
o Shiva Password Authentication Protocol
(SPAP).
o Utiliza cifrado reversible.
o Challenge Handshake Authentication Protocol
(CHAP)
José M. Sierra
o Reto-respuesta enviado con la función resumen
MD5
20
Seguridad en el protocolo PPTP
Seguridad en Sistemas Distribuidos
o Autenticación
o MS-CHAP v1
José M. Sierra
o Lan Manager hash function
o La clave se transforma en una cadena de 14 bytes
o Minúsculas  Mayúsculas
o Cifrado con DES de una constante usando cada mitad de 7 bytes
como clave  2 cadenas de 8 bytes
o • Windows NT hash function
o La clave se transforma en una cadena de 14 bytes
o Se convierte a Unicode
o Se usa MD4  hash de 16 bytes
o A Tener en cuenta
o Conversión a mayúsculas
o Ausencia de condimento (SALT) en el almacenamiento de claves
21
Seguridad en el protocolo PPTP
Seguridad en Sistemas Distribuidos
o Proceso de autenticación en MS-CHAP
o El cliente solicita un reto
o El servidor envía un reto de 8bytes aleatorios
o El cliente añade 5 bytes a cero al valor obtenido del
hash (Lan Manager y WindowsNT)
o Divide los 21 bytes en 3 claves que son usadas para
cifrar con DES el reto  24 bytes (para cada opción
Lan Manager y Windows NT)
o El servidor analiza uno de los dos bloques de 24 bytes
(determinado por el cliente)
o MS-CHAP v2
o Mejoras de seguridad (no se envía el Lan Manager de
la contraseña del usuario)
o Sigue siendo tachado de inseguro
José M. Sierra
22
Seguridad en el protocolo PPTP
Seguridad en Sistemas Distribuidos
o Cifrado en PPTP
o Protocolo MPPE (Microsoft Point-to-Point
Encryption)
o Cifrado de flujo a través del algoritmo RC4
o 128 bits de semilla tomados de la aplicación de
SHA1 sobre el hash (Windows NT) de la contraseña
de usuario y 64 generados durante la negociación
MS-CHAP
o Cada 256 paquetes PPTP, se recalcula una semilla
nueva a través de la clave antigua y la clave original.
o Siguen existiendo debilidades en MPPE
José M. Sierra
o P.e.: puede evitarse el cambio de clave cada 256
paquetes
23
Seguridad en el protocolo L2TP
Seguridad en Sistemas Distribuidos
o El estándar permite que se pueda utilizar la seguridad de
PPP para asegurar las comunicación sobre el túnel.
o Autenticación PPP (PAP, SPAP, CHAP, MS-CHAP, ...)
o Confidencialidad y cifrado PPP (MPPE).
o Autenticación con EAP Extensible Authentication
Protocol
o Soporta varios tipos de Autenticación
o EAP-MD5: Desafió/Respuesta.
o EAP-TLS: Basado en cerificados digitales
o EAP-RADIUS: Mecanismo proxy de reenvió de datos en un formato
EAP especifico a un servidor RADIUS
o PEAP: Protected EAP
o Proteje las negociaciones EAP envolviéndolas con TLS.
o L2TP/IPSEC
José M. Sierra
24
Descargar