Seguridad en VoIP

Post on 18-Dec-2014

3.474 views 1 download

description

Análisis sobre el estado del arte de la seguridad en sistemas VoIP

Transcript of Seguridad en VoIP

http://www.irontec.com

Seguridad en VoIP

irontec

Irontec VoIP <vozip@irontec.com>

http://www.irontec.com

Introducción

Carlos Cruz Luengo <carlos@irontec.com> 3

Introducción

● En los últimos años los sistemas VoIP han experimentado un auge debido a sus bondades:

– Flexibilidad– Precio– Funcionalidades avanzadas (conferencias,

desvíos,etc.)– Ventajas de tener tu propia centralita

● Los entornos corporativos son los que más han apostado por la migración

Carlos Cruz Luengo <carlos@irontec.com> 4

Introducción

● Como suele ser habitual, ese aumento ha atraído la atención de 'los malos'

● Los ataques también han aumentado por lo 'jugoso' del premio:

– Hackear una centralita IP permite hacer llamadas a costa del dueño de la infraestructura

– Los hay incluso que montan un negocio a su costa

Análisis de los protocolos

Carlos Cruz Luengo <carlos@irontec.com> 6

Protocolos involucrados

● La debilidad del sistema dependerá de los protocolos que implemente

● El sistema será tan seguro como el más débil de sus protocolos

● También habrá que tener en cuenta la seguridad de los equipos y su entorno

● Analizamos ahora una llamada VoIP 'clásica'

Carlos Cruz Luengo <carlos@irontec.com> 7

Protocolos involucrados

● Este diagrama muestra un flujo SIP clásico:

Carlos Cruz Luengo <carlos@irontec.com> 8

Protocolos involucrados

● SIP, Session Initiation Protocol (RFC 3261):

– Protocolo human readable del nivel de aplicación, similar a HTTP

– Encargado del establecimiento, mantenimiento y finalización de las llamadas

– Normalmente viaja, en claro, sobre UDP (puerto 5060)

– Existen otros protocolos de señalización, pero...● SIP es el más utilizado (~ estándar de facto)● En esta presentación, nos centraremos en SIP

Carlos Cruz Luengo <carlos@irontec.com> 9

Protocolos involucrados

● RTP, Real-time Transport Protocol (RFC 3550):

– A pesar del nombre, protocolo del nivel de aplicación empleado para transferir el flujo de voz

– Utiliza los puertos UDP que acuerda el protocolo SIP (vía SDP)

– Puede ir directamente de usuario a usuario o atravesar varios media-proxies (para tratar el NAT)

– No provee ningún tipo de cifrado

Carlos Cruz Luengo <carlos@irontec.com> 10

Debilidad de los protocolos

● La ausencia de cifrado en ambos protocolos convierte una simple captura en una situación comprometida:

– Conversaciones privadas al descubierto– Contraseñas de autenticación de los terminales– Secretos corporativos, personales, etc.

● A esto hay que añadir el hecho de que los terminales IP reciben su configuración (incluyendo contraseñas) por TFTP, en claro

– Se le conoce como provisioning

Tipos de ataques

Carlos Cruz Luengo <carlos@irontec.com> 12

Tipos de ataques

(1) Ataques a la Confidencialidad/Privacidad:● Las conversaciones privadas, pasan a estar

grabadas, lo que puede dar pie a chantajes, airear secretos personales/corporativos, etc.

● La técnica empleada, conocida como eavesdropping, consiste en capturar paquetes SIP o RTP mediante un sniffer para su posterior análisis/reproducción

● Para capturar desde el mismo segmento de red, se utiliza ARP Spoofing para situarse entre ambos interlocutores (MITM, Man-In-The-Middle)

Carlos Cruz Luengo <carlos@irontec.com> 13

Tipos de ataques

(2) Ataques a la disponibilidad:● La telefonía es un recurso valioso, en muchas

empresas vital para el desempeño de su actividad

● Hay ataques que buscan impedir el correcto funcionamiento del sistema:● DoS Exploits: paquetes malformados para

provocar errores (VoIP fuzzing)– INVITE con content-length negativo, etc.

● DoS Flood: Inundación de paquetes (DDoS si es de forma distribuida)

– Saturacion mediante RTP – Mensajes BYE y CANCEL conocido el Call-ID

● Media and signalling mangling: introducir jitter, modificar paquetes SIP, manipular negociación de codecs, etc.

Carlos Cruz Luengo <carlos@irontec.com> 14

Tipos de ataques

(3) Ataques a la Autenticidad:● Los terminales IPs registrados no tienen porqué

ser los que cree el servidor (Caller-ID Spoofing):● REGISTER hijacking (capturar paquete

REGISTER de usuario legítimo y enviarlo tal cual salvo por el campo CONTACT, donde pones tu IP)

● REGISTER cracking: consiste en capturar paquetes REGISTER y realizar un ataque de diccionario para intentar reventar el débil sistema de autenticación por defecto (Message Digest (MD5) authentication).

– Las herramientas SIPdump y SIPcrack lo consiguen en cuestión de minutos:

Carlos Cruz Luengo <carlos@irontec.com> 15

Tipos de ataques

● Detectamos los paquetes REGISTER con SIPdump:

● Y luego crackeamos la contraseña partiendo de un archivo con contraseñas típicas:

Carlos Cruz Luengo <carlos@irontec.com> 16

Tipos de ataques

(4) Toll Fraud:● Buscan hacerse pasar por un terminal autorizado

para así poder llamar a costa del dueño de la infraestructura (facturas muy cuantiosas)

● El acceso a la red de voz puede facilitar el acceso a la red de datos con el peligro que esto conlleva en un entorno empresarial

● VoIP + PHISHING = VHISHING: Aplicación de la ingeniería social para obtener información confidencial (números de tarjetas de crédito, etc.) por medio de sistemas VoIP

(5) SPIT, SPam over Internet Telephony: ● Papel homólogo al SPAM del correo electrónico,

pero por medio de llamadas de voz

Medidas de seguridad que podemos adoptar

Carlos Cruz Luengo <carlos@irontec.com> 18

Hay que tomar medidas...

● Con todo lo mencionado hasta el momento, queda claro que securizar los sistemas de Telefonía IP es algo imprescindible

● Esta securización hay que abordarla en dos frentes:

✔ Securizar los protocolos.✔ Securizar el equipo y su entorno, optimizar

configuraciones y, en definitiva, adquirir buenas prácticas.

Carlos Cruz Luengo <carlos@irontec.com> 19

Securizar los protocolos

● Securizar SIP, a priori, 3 opciones:– Secure Multipurpose Internet Mail Extensions (S/MIME)

● Añade demasiada complejidad debido al uso de infraestructuras PKI

– IPsec: Seguridad extremo-a-extremo● A diferencia de HTTP, una petición SIP puede dar varios

saltos, cambiando, hasta llegar a destino● Por este motivo necesitamos una seguridad salto-a-

salto, para que los servidores intermedios puedan acceder al contenido cifrado de los paquetes

– SIPS, SIP over TLS: Misma metodología que con HTTP para ofrecer una seguridad salto-a-salto sin tanto overhead como S/MIME

RECOMENDACIÓN

SIPS, comunicación mediante un canal seguro, cifrado y con los extremos autenticados

Carlos Cruz Luengo <carlos@irontec.com> 20

Securizar los protocolos

● El canal de voz también hay que protegerlo, principalmente, 2 opciones:

– SRTP (RFC3711), opción más utilizada. Necesita que SIP vaya sobre TLS para que el negociado de claves que se utilizarán para cifrar los canales de audio no vaya en claro

– ZRTP, opción desarrollada por Phil Zimmermann (creador de Pretty Good Privacy), el negociado de claves se hace en el propio canal RTP utilizando Diffie-Helmann (procedimiento de intercambio de claves en un medio hostil)

RECOMENDACIÓN:

Si queremos cifrar sólo voz, ZRTP y SIP en claro

Si queremos una seguridad más completa, SIPS y SRTP

Carlos Cruz Luengo <carlos@irontec.com> 21

Securizar los protocolos

● Y por último, en caso de que nuestro terminal IP deba recibir la configuración de un servidor (provisioning), hay que evitar:

– TFT o HTTP, ya que estos protocolos transmiten la configuración (normalmente en un archivo xml) en claro, y cualquiera podría capturar dicho archivo y hacerse pasar por nosotros

RECOMENDACIÓN– Provisioning mediante HTTPS (algunos terminales lo

soportan)– Si no lo soporta, plantearse desactivar el

provisioning

Carlos Cruz Luengo <carlos@irontec.com> 22

Securizar el entorno y adquirir buenas prácticas

● Las conclusiones anteriores han de ir acompañadas por una serie de buenas prácticas, entre las que destacan las siguientes:

✔ Firewall perimetral Puerto UDP 5060 (SIP) nunca abierto En caso de Road warriors, acceso mediante VPNs

✔ Detector de Intrusos (IDS) para detectar ataques y escaneos de puertos

✔ Segmentación red de datos/red de voz mediante VLANs✔ Software actualizado al máximo✔ Configuración revisada y mantenida en el tiempo✔ Revisión continua de los logs del sistema✔ Contraseñas robustas en los equipos terminales✔ Telefonos IP con direcciones privadas y sin acceso HTTP✔ Aplicación interesante para checkear la seguridad:

http://www.sinologic.net/proyectos/asterisk/checkSecurity/

Carlos Cruz Luengo <carlos@irontec.com> 23

Securizar el entorno y adquirir buenas prácticas

● También cabe destacar los siguiente puntos en caso de usar Asterisk como PBX:

✔ Opción sip.conf allowguest=no✔ NUNCA utilizar ‘includes’ si no sabemos exactamente qué

estamos haciendo✔ Evitar a toda costa la configuración de todas las

extensiones como nat=yes✔ Comprobar en el log del Asterisk los intentos fallidos de

autenticación y en el caso de varios intentos fallidos desde la misma IP, añadir de forma automática en iptables la dirección IP de nuestro ’supuesto’ atacante (script sipcheck en cron)

Conclusiones

Carlos Cruz Luengo <carlos@irontec.com> 25

Conclusiones

En un entorno cada vez más hostil como Internet y ante un sistema tan 'goloso' como el de VoIP, la seguridad ha de ser una prioridad en el momento de su implementación y mantenimiento

Las soluciones cada vez estarán más maduras, hay que estar al tanto. De lo contrario, Internet nos dará una lección en forma de factura de teléfono desmesurada

Carlos Cruz Luengo <carlos@irontec.com> 26

License

http://creativecommons.org/licenses/by-sa/3.0/

http://www.irontec.com

Seguridad en VoIP

irontec

Irontec VoIP <vozip@irontec.com>

http://www.irontec.com