Seguridad en P2P SIP
Contenidos 1. 2. 3. 4. 5.
Introducci贸n Voz sobre IP Protocolo SIP Redes P2P P2P-SIP 1. Aspectos de seguridad 2. Soluciones de seguridad
6. Dratfs IETF 7. Conclusiones 漏 2009 evalues
Seguridad en Sistemas de Informaci贸n
2
Apartado 1.1. Introducci贸n
漏 2009 evalues
Seguridad en Sistemas de Informaci贸n
3
Introducción • Crecimiento de las comunicaciones multimedia en Internet • SIP protocolo para la gestión de comunicaciones multimedia sobre IP ( VoIP, IM, etc ) • Propuestas para la utilización de SIP en una arquitectura P2P. • Una configuración de tipo P2P impone nuevas vulnerabilidades en la seguridad en las comunicaciones SIP – Ausencia de autoridad central de autenticación
• Análisis de los aspectos de seguridad más relevantes de la arquitectura P2P-SIP
© 2009 evalues
Seguridad en Sistemas de Información
4
Apartado 2.1. Voz Sobre IP
漏 2009 evalues
Seguridad en Sistemas de Informaci贸n
5
Voz sobre IP • Transmisión de voz sobre redes de conmutación de paquetes • Ventajas: – – – –
Coste de facturación y mantenimiento. Aprovechamiento del ancho de banda no utilizado de la red datos Integración de servicios: videoconferencia, multiconferencia, etc. Mejoras de movilidad.
• Desventajas: – Coste inicial despliegue arquitectura – Problemas de seguridad
© 2009 evalues
Seguridad en Sistemas de Información
6
Voz sobre IP
漏 2009 evalues
Seguridad en Sistemas de Informaci贸n
7
Voz sobre IP: Fases de una llamada •
•
• •
Establecimiento de la conexión. – Uso de SIP para traducir el número privado de un usuario o su identificador de recurso universal ( URI ) a su dirección IP correspondiente. – Negociación de los parámetros de la sesión mediante mensajes SDP ( Session Description Protocol ) encapsulados en SIP. Conversación. – La voz es digitalizada, segmentada y encapsulada en paquetes mediante RTP ( Real-time Transfer Protocol ), que lleva asociado el protocolo RTCP ( Real-time Transfer Control Protocol ) para el control de la conexión. – Ambas protocolos usa UDP como sustrato. Finalización de la conexión. Mediante SIP.
© 2009 evalues
Seguridad en Sistemas de Información
8
Voz sobre IP: Fases de una llamada •
•
• •
Establecimiento de la conexión. – Uso de SIP para traducir el número privado de un usuario o su identificador de recurso universal ( URI ) a su dirección IP correspondiente. – Negociación de los parámetros de la sesión mediante mensajes SDP ( Session Description Protocol ) encapsulados en SIP. Conversación. – La voz es digitalizada, segmentada y encapsulada en paquetes mediante RTP ( Real-time Transfer Protocol ), que lleva asociado el protocolo RTCP ( Real-time Transfer Control Protocol ) para el control de la conexión. – Ambas protocolos usa UDP como sustrato. Finalización de la conexión. Mediante SIP.
© 2009 evalues
Seguridad en Sistemas de Información
9
Voz sobre IP: Fases de una llamada
漏 2009 evalues
Seguridad en Sistemas de Informaci贸n
10
Apartado 3.1. Protocolo SIP
漏 2009 evalues
Seguridad en Sistemas de Informaci贸n
11
SIP: Session Iniciation Protocol •
Estándar para gestión de sesiones interactivas
•
Su arquitectura sigue un modelo cliente-servidor utilizando mensajes de petición/respuesta. Peticiones:
•
– – – – – –
•
INVITE - Inicia la señalización de una sesión BYE - Finaliza una sesión REGISTER - Se registra en el Servidor de Registro ACK – Asentimiento CANCEL – Cancelar la petición solicitada OPTIONS – Solicitar ciertas características
Respuestas: – Códigos de 3 dígitos al estilo HTTP
© 2009 evalues
Seguridad en Sistemas de Información
12
SIP: Session Iniciation Protocol •
Entidades: – Agente de Usuario (UA): Terminal de comunicación SIP – Servidor Proxy SIP: Reenvía peticiones desde el UA hasta otro servidor Proxy SIP – Servidor de Registro: Acepta peticiones de registro de los usuarios y las almacena en la base de datos de localización – Base de datos de localización: Almacena los registros de los usuarios – Servidor de Redireccionamiento: Responde a una petición de localización de un usuario cuando se encuentra fuera del dominio con la URI correcta a contactar.
© 2009 evalues
Seguridad en Sistemas de Información
13
SIP: Session Iniciation Protocol •
Ejemplo de Funcionamiento:
DNS
Base de Datos Localización
6
4
2
7 5 Internet 10
Proxy 3
Agente Usuario B © 2009 evalues
Registro
Proxy
8 1 9
Agente Usuario A Seguridad en Sistemas de Información
14
SIP: Riesgos de Seguridad • Ataques al sistema de registro. Autenticación del origen de las peticiones. • Hacerse pasar por un servidor. Autenticación de los servidores. • Alteración de mensajes. Confidencialidad, integridad y autenticación de mensajes. • Cierre de sesiones. Autenticación del origen. • Ataques de denegación de servicio ( DOS ). Autenticación de mensajes, buena planificación de la arquitectura de red, evitar mensajes multicast.
© 2009 evalues
Seguridad en Sistemas de Información
15
SIP: Mecanismos de Seguridad • Autenticación de Señalización mediante HTTP Digest. Provee de autenticación a los nodos participantes. • Seguridad mediante S/MIME contenido en SIP. Proporciona autenticación, integridad y confidencialidad. • TLS. Proporciona integridad, confidencialidad y no repudio a los mensajes SIP. • IPSEC. Provee de autenticación, integridad y confidencialidad a los mensajes SIP.
© 2009 evalues
Seguridad en Sistemas de Información
16
Apartado 4.1. Redes P2P
漏 2009 evalues
Seguridad en Sistemas de Informaci贸n
17
Redes P2P •
•
•
•
Las redes P2P son sistemas distribuidos sin ningún control centralizado o estructura jerárquica, dónde el programa corriendo en todos los nodos es equivalente en funcionalidad. Siguen un modelo completamente diferente al de los sistemas clienteservidor. Su característica principal es que todos los nodos participan en la red utilizando y ofreciendo servicios al mismo tiempo. No hay ninguna entidad central controladora y la red se auto organiza de un modo dinámico. Además de las redes P2P puras existen otros tipos de redes que también son consideradas P2P, pudiendo incluir servidores centralizados ( redes P2P híbridas ) o supernodos. Dos tipos: – –
Redes P2P no estructuradas. Gnutella. Redes P2P estructuradas. CAN, Chord, Pastry, Tapestry.
© 2009 evalues
Seguridad en Sistemas de Información
18
Redes P2P: Chord • Los nodos reciben un identificador ( node-ID ) de m bits que se obtiene calculando el hash de la dirección IP del nodo. • La misma función hash es utilizada para calcular los identificadores ( Key-ID ) de cualquier recurso de información que se vaya a almacenar en la red. • Utiliza un añillo virtual donde los nodos se ordenan en el sentido de las agujas del reloj, desde 0 hasta 2m-1, de acuerdo con su node-ID como estructura para el encaminamiento de mensajes y la búsqueda de claves. • Cada nodo es responsible de todas key-ID que son iguales o menores que su node-ID, pero mayores que el node-ID de su predecesor en el anillo.
© 2009 evalues
Seguridad en Sistemas de Información
19
Redes P2P: Chord • Ejemplo de búsqueda de key-ID: 120
node-ID 17 7
127
node-ID 105
0
108
¿key-ID 90?
17
19 105
90
24
Lo tengo! (3) El nodo 105! (4)
key-ID 90? (2)
32
key-ID 90? (1)
80
44
node-ID 44
node-ID 80 64
77 68
© 2009 evalues
Seguridad en Sistemas de Información
20
Apartado 5.1. P2P SIP
漏 2009 evalues
Seguridad en Sistemas de Informaci贸n
21
P2P SIP • La robustez y sencillez de la arquitectura peer-to-peer (P2P) – Utilización del protocolo SIP en una arquitectura de tipo P2P.
• Propuestas para la utilización de redes P2P en conjunción con el protocolo SIP – Se utilizan DHT en lugar de servidores, para registrar y localizar la identificación de un usuario (SIP-URI) – Planteamientos parecidos: • Función resumen para el cálculo de identidades: SHA-1 • Protocolo para búsqueda distribuida: Chord
© 2009 evalues
Seguridad en Sistemas de Información
22
P2P SIP • Ventajas: – – – –
Robustez Escalabilidad Mayor Tolerancia a Fallos Sencillez de configuración y mantenimiento.
• Desventajas: – Nuevos retos de seguridad – Tiempo de localización de recursos
© 2009 evalues
Seguridad en Sistemas de Información
23
Apartado 5.2. P2P SIP: Aspectos de seguridad
漏 2009 evalues
Seguridad en Sistemas de Informaci贸n
24
Aspectos de seguridad en P2P-SIP • Problemas de seguridad para la arquitectura P2P-SIP: – Su carácter abierto permite fácil entrada de atacantes en el sistema – Su carácter distribuido permite una fácil distribución de contenido hostil, incluso por parte de usuarios honestos – La ausencia de una autoridad central hace de la autenticación un problema difícil de resolver – Funcionamiento ineficiente del sistema
• Necesidad: – Evaluar principales ataques y soluciones propuestas
© 2009 evalues
Seguridad en Sistemas de Información
25
Aspectos de seguridad en P2P-SIP •
Ataques en la asignación de identificadores – Hipótesis: La asignación de identificadores node-ID no puede ser controlada por un atacante – Pero: • Un atacante puede conseguir un determinado identificador si elige una dirección IP cuyo hash sea el node-ID deseado – Si el node-ID deseado es 321 – Node-ID = hash [dirección IP] – Calculo hash cambiando la dirección IP hasta que el resultado sea el node-ID deseado, 321.
VULNERABILIDAD © 2009 evalues
Seguridad en Sistemas de Información
26
Aspectos de seguridad en P2P-SIP •
Ataques en el encaminamiento – Un nodo puede realizar ataques: • Denegación de servicio – Impedir el acceso a cierta información
• Man-in-the middle – Alterar o falsificar las respuestas SIP
– Detección de búsqueda errónea con encaminamiento iterativo: • En la iteración i comprobar que: – node-ID(i) < key-ID – node-ID(i) > node-ID(i -1)
• Es posible vulnerarlo
© 2009 evalues
Seguridad en Sistemas de Información
27
Aspectos de seguridad en P2P-SIP •
Recursivo node-ID 108 120
Nodo Atacante
107
node-ID 17 7
127
node-ID 105
key-ID 107? (3)108 105
0
¿key-ID 107?
17
19
La tengo! (4)
90
24
El nodo 108! (5) El nodo 119! (6) key-ID 107? (2)
32
key-ID 107? (1)
80
44
node-ID 44 node-ID 80 64
77 Nodo Atacante
© 2009 evalues
68
Seguridad en Sistemas de Información
28
Aspectos de seguridad en P2P-SIP •
Iterativo
node-ID 119 node-ID 108 120
Nodo Atacante
107
7
node-ID 106 127
0
108
Nodo Atacante node-ID 105
node-ID 17
¿key-ID 119,107?
17
19
El nodo 119! (2)
ok
105
24
node-ID 32
key-ID 107? (1) 32
90
80 44
node-ID 80 64
77 Nodo Atacante
© 2009 evalues
68
Seguridad en Sistemas de Información
29
Aspectos de seguridad en P2P-SIP • Ataques de Reenvío – Consiste en retrasar o reenviar una transmisión válida. – Un atacante podría, por ejemplo, capturar una transmisión válida del registro de un recurso por parte de un nodo. – Pasado algún tiempo, debido a la estructura cambiante de la red, el recurso podría cambiar de ubicación. – El atacante podría reintroducir en la red el mensaje antiguo capturado haciendo pensar a los nodos participantes que el recurso se encuentra en su antigua ubicación. – Posible solución: Uso de marcas de tiempo ( timestamps )
© 2009 evalues
Seguridad en Sistemas de Información
30
Aspectos de seguridad en P2P-SIP • Ataques Sybil – Un atacante puede introducir en un sistema P2P sin una entidad central autorizadora un conjunto de nodos maliciosos • Pérdida de seguridad • Degradación del funcionamiento – Ataque usual: • Una petición que llega a uno de los nodos maliciosos, se reenvía en cadena a otros nodos maliciosos, provocando que la petición lanzada no se resuelva – Posible soluciónes: Encaminamiento basado en “nivel de confianza”. Cryptopuzzles. © 2009 evalues
Seguridad en Sistemas de Información
31
Aspectos de seguridad en P2P-SIP • Encaminamiento basado en “nivel de confianza” – Cada nodo mantiene un historial de los nodos a los que han lanzado peticiones – Nivel de confianza – Evalúa el nivel de confianza de los nodos disponibles y dirige su petición al de mayor nivel
© 2009 evalues
Seguridad en Sistemas de Información
32
Aspectos de seguridad en P2P-SIP • Ataques en el arranque de un nodo – Necesidad de contactar con un nodo de arranque antes de unirse a la red. • Intercambio de mensajes con su predecesor y sucesor para actualizar sus tablas de encaminamiento. – Problemas de seguridad si el nodo de arranque contactado y/o los nodos predecesor o sucesor del nodo a ingresar son maliciosos: • Contaminación de la tabla de encaminamiento del nuevo nodo.
© 2009 evalues
Seguridad en Sistemas de Información
33
Aspectos de seguridad en P2P-SIP • Nodos “free riding” – Utilizan los servicios de la red sin proporcionar ningún servicio a la red • Utilizan el registro y la localización • Desechan otros mensajes SIP – Problemas: • Amenaza para la disponibilidad de recursos • Pérdida de funcionalidad de la red
© 2009 evalues
Seguridad en Sistemas de Información
34
Aspectos de seguridad en P2P-SIP • Anonimato – Facilidad en la obtención de perfiles de búsqueda de determinadas informaciones • Un atacante puede situarse intencionadamente en algún lugar del anillo para registrar el acceso a un elemento de la red – Las cabeceras SIP contienen información del emisor – Soluciones: • En encaminamiento recursivo – Reemplazar las cabeceras en cada salto realizado en la red – No se puede conocer el emisor real de la petición © 2009 evalues
Seguridad en Sistemas de Información
35
Apartado 5.3. P2P SIP: Soluciones de seguridad
漏 2009 evalues
Seguridad en Sistemas de Informaci贸n
36
Algunas Soluciones Propuestas • Principales problemas de seguridad para la arquitectura P2PSIP: – Autenticación: Ausencia de una autoridad central – Propuestas: • Autoridades de certificación (CA) • Sistemas de reputación • Auto-certificación
© 2009 evalues
Seguridad en Sistemas de Información
37
Algunas Soluciones Propuestas • Autoridades de Certificación: – Previenen la falsificación de identidades – Asignan identificadores aleatorios a cada nodo que se incorpora a la red – Reforzar la seguridad con una PKI¿?¿?¿? – Problemas: • La red depende de la funcionalidad de la Autoridad de Certificación, para el ingreso de nodos en la red • Punto centralizado de vulnerabilidad • No son fácilmente escalables • Algunas de las ventajas de las redes P2P desaparecen
© 2009 evalues
Seguridad en Sistemas de Información
38
Algunas Soluciones Propuestas • Sistemas de Reputación: – Forma de autenticación distribuida que asigna valores de confianza a los nodos – Minimiza el problema de los nodos “free riding” • Solo aquellos nodos que mantengan un buen nivel de reputación por servicios prestados a la red podrán utilizar los servicios de la red. – Tradicionalmente implementados para los sistemas de compartición de ficheros, se basan: • Autoridad central – Integración de un sistema de reputación distribuida en una red P2P-SIP es un problema abierto © 2009 evalues
Seguridad en Sistemas de Información
39
Algunas Soluciones Propuestas • Auto-certificaciones: – Generación de identidades auto-certificadoras • Puede ser verificada sin hacer uso de una tercera entidad de confianza – Ejemplo: • La asociación de una clave pública a una identidad puede verificarse matemáticamente si la identidad se representa como el hash de la clave pública.
© 2009 evalues
Seguridad en Sistemas de Información
40
Algunas Soluciones Propuestas
• Ejemplo de Auto-Certificaciones node-ID 44 key-ID 41
La key-ID 41 está en el node-ID 44
SIP-URInode 44
firma
hash(kpública)
kprivada{key-ID 41}
Key-ID 41
SIP-URI hash(kpública)
¿SIP-URI = SIP-URInode44?
kpública{firma}
node-ID=32 41 © 2009 evalues
Seguridad en Sistemas de Información
41
Apartado 6.1. Drafts IETF
漏 2009 evalues
Seguridad en Sistemas de Informaci贸n
42
Drafts IETF – DSIP ( Distributed Session Initiation Protocol ) – RELOAD ( Resource Location And Discovery ) – P2PP ( Peer-to-Peer Protocol )
© 2009 evalues
Seguridad en Sistemas de Información
43
DSIP
• Encapsulando los mensajes P2P en mensajes SIP. • Calculo de los identificadores usando SHA1 • Dos modelos de seguridad diferenciados: – Secreto Compartido: Pequeñas redes. – PKI: Entornos grandes.
© 2009 evalues
Seguridad en Sistemas de Información
44
RELOAD
• Define un nuevo protocolo binario para la creación y el mantenimiento de la red P2P. • Servidor de Enrolamiento: Le asigna a cada nodo un certificado y un node-ID. Uso de clave compartida cuando no existe un servidor de enrolamiento en la red. • Modelo de seguridad “Hop-by-Hop” usando DTLS o TLS, además de una sesión segura SIP “end-to-end”. © 2009 evalues
Seguridad en Sistemas de Información
45
P2PP • Define un nuevo protocolo binario para la creación y el mantenimiento de la red P2P. • Diferencia entre peers ( pertenecen a la red P2P-SIP) y clientes. • Servidor de enrolamiento y autenticación (E&A) para la autenticación de usuarios y asegurarse que los identificadores de nodo e usuario sean únicos. El servidor puede encontrarse en un peer. La autenticación se realiza usando PKCS#10 sobre TLS . En caso de no existir un E&A central se usan certificado autofirmados. © 2009 evalues
Seguridad en Sistemas de Información
46
P2PP • Servidor de bootstrap que ayude a peers o clientes a encontrar las direcciones de otros participantes de la red a la hora del arranque. Puede encontrarse en el mismo sistema que el E&A. También puede situarse en un peer. • Servidor de diagnostico que se encargue de evaluar puntos conflictivos de la red. • Modelo de seguridad “Hop-by-Hop” usando DTLS o TLS, además de una sesión segura SIP “end-to-end”.
© 2009 evalues
Seguridad en Sistemas de Información
47
Apartado 7.1. Conclusiones
漏 2009 evalues
Seguridad en Sistemas de Informaci贸n
48
Conclusiones • Crecimiento de las comunicaciones multimedia en Internet • SIP protocolo para la gestión de comunicaciones multimedia sobre IP – Propuestas para la utilización de SIP en una arquitectura P2P • P2P-SIP
• Una configuración de tipo P2P impone nuevas vulnerabilidades en la seguridad en las comunicaciones SIP – Ausencia de autoridad central de autenticación
• Carencia de seguridad y perturbaciones en el funcionamiento • Análisis de los aspectos de seguridad más relevantes de la arquitectura P2P-SIP
© 2009 evalues
Seguridad en Sistemas de Información
49