La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

VoIP (In)security Jose Luis Verdeguer (aka Pepelux)

Presentaciones similares


Presentación del tema: "VoIP (In)security Jose Luis Verdeguer (aka Pepelux)"— Transcripción de la presentación:

1 VoIP (In)security Jose Luis Verdeguer (aka Pepelux) Twitter: @pepeluxx
Mail: Blog: Web: Agradecimientos a: Jesús Pérez Rubio @jesusprubio Hola a todos, yo soy Jose Luis, vengo desde Alicante, y él es Jesús, que estudia aquí en la FIC. Vamos a dar una charla sobre la seguridad de la VoIP. En primer lugar vamos a explicar brevemente qué es la VoIP y qué es Asterisk, para la gente que no lo conozca. Veremos también dos posibles escenarios de sistema de VoIP. Y luego, Jesús mostrará las herramientas más utilizadas para atacar este tipo de sistemas. Realizaremos también algunas demos en directo que esperamos que os gusten. Antes de comenzar … pregunta … ¿cuántos conocen Asterisk?

2 ¿Qué es la VoIP? VoIP (Voice over IP) = Voz sobre IP = VozIP = Telefonía IP. Wikipedia: Conjunto de recursos que hacen posible que la señal de voz viaje por Internet. Definición: El término VoIP se refiere a un conjunto de recursos que permiten utilizar el protocolo IP para que la voz se transporte a través de Internet, en forma digital, y mediante paquetes. La VozIP o VoIP o Voz sobre IP o Telefonía IP son diferentes términos para definir lo mismo, un conjunto de recursos que nos permiten mantener conversaciones de voz a través de Internet. En realidad tenía pensado hablar un poco sobre los protocolos más utilizados y entrar un poco más en detalle en lo que se refiere a teoría, pero por falta de tiempo y ya que esta parte es muy aburrida, he terminado quitándola.  Espero que no se pierda nadie!

3 ¿Qué es la VoIP? Protocolos más utilizados para la negociación:
SIP (Session Initiation Protocol): Se encarga de negociar las comunicaciones. Sintaxis similar a HTTP. Posibilidad de cifrado mediante TLS. IAX / IAX2 (Inter Asterisk eXchange): Alternativa a SIP. Creado por Asterisk. H.323 Protocolos para la comunicación: RTP (Real-time Transport Protocol): Utilizado para la transmisión de información en tiempo real (audio y vídeo).

4 Servidores VoIP Como he comentado antes, vamos a centrar la charla en Asterisk, ya que es el más extendido, pero existen muchas soluciones para montar un sistema de VoIP, unas gratuitas, otras de pago, con más o menos prestaciones, pero en definitiva, hacen lo mismo y usan los mismos protocolos.

5 Diferentes distribuciones de Asterisk
Al igual que ocurre con Linux, hay muchas adaptaciones diferentes de Asterisk. Todas con una misma base, pero orientadas a diferente público. Es decir, un Asterisk puro, lo vamos a compilar con los módulos que necesitemos y, mediante un editor de textos o a través de bases de datos, vamos a ir generando cada fichero o cada tabla de configuración según nuestras necesidades. Sin embargo, hay otras distribuciones en las que con 2 clikcs tienes Linux y Asterisk montado … eso sí, con una serie de configuraciones por defecto que, no sólo no serán las más óptimas para nuestras necesidades, sino que además puede dejarnos servicios y usuarios por defecto que permitan a un atacante colarse sin mucha dificultad.

6 Escenario 1: Instalaciones locales
Vamos a analizar 2 posibles escenarios. Por un lado, un sistema básico de Asterisk, montado en una red local, por ejemplo, una oficina, un hotel, etc.  En este caso, los teléfonos conectarán con el servidor a través de la red local y, el servidor se encargará de enrutar las llamadas hacia el exterior, bien usando una tarjeta PSTN que conecte con una línea convencional, o bien mediante un trunk, a través de Internet, con un proveedor de VoIP. Servidor Asterisk montado en una red local (oficina, hotel, etc) Teléfonos IP conectados al servidor Asterisk Tarjeta PSTN para conectar las líneas telefónicas (o SIP-trunk con un operador de VoIP)

7 ¿Quién monta Asterisk? Empresas de telecomunicaciones:
Expertos en telefonía pero … … con conocimientos informáticos escasos. Pocos conocimientos de Linux. Pocas nociones sobre seguridad. Instalaciones en oficinas sustituyendo las centralitas convencionales. Renovarse o morir. Bien es cierto que algunas de las empresas que montan sistemas de VoIP son informáticas o son expertas en este tipo de instalaciones, pero la gran mayoría de los casos nos encontramos con empresas de telecomunicaciones que han pasado de montar centralitas analógicas o digitales a la VoIP para poder subsistir. Un sistema de VoIP es gratuito, se monta en un PC y tiene muchas más prestaciones que una centralita convencional. Todo esto unido a una época de crisis, lo convierten en la mejor opción si tienes la necesidad de cambiar de centralita. El problema de muchas empresas de telecomunicaciones es que son expertos en telefonía pero con escasos conocimientos de informática, mucho menos de Linux y, si nos metemos en temas de seguridad, ya ni hablamos.

8 Principales problemas
Instalaciones por defecto del sistema operativo: Servicios abiertos no necesarios. Trabajo siempre desde la cuenta de root. Cuentas sin contraseña o con claves demasiado obvias. Servidores con sistemas antiguos que nunca se actualizan. Instalaciones básicas de Asterisk: Contraseñas poco seguras. Configuración y cuentas por defecto. Planes de llamada poco restrictivos. Sistemas administrados por web. Redes locales inseguras: Conexiones inalámbricas. Equipos con fallos de seguridad. En el mejor de los casos, veremos empresas que instalan un Linux siguiendo el manual, descargan y compilan una versión estable de Asterisk y listo. Hay otras que directamente cogen una ISO de Freepbx o similar, que te instala todo directamente mientras te tomas un café (Linux, Asterisk, Mysql, Apache, ...). Luego, por un lado, las instalaciones son muy pobres. Te aseguras de que vaya y listo, sin preocuparte de cerrar servicios innecesarios (tanto en Linux como en Asterisk) de forma frecuente, de poner contraseñas seguras (¡total! es una red local). Por otro lado, no se actualiza nunca el sistema. Si no vas a cobrar más, ¿para que cambiar algo que funciona? Además, no se tiene cuidado en configurar bien los planes de llamada (horarios, restricción de llamadas internacionales, canales de salida, etc). Y si a todo esto le sumamos la posibilidad de que la empresa trabaje con redes wifi ....

9 Problemas de los Front-end
Los principales problemas de tener un frontend de código abierto son los mismos que podamos tener en un Wordpress o un Joomla. A diferencia de que aquí en lugar de defacearnos, nos roban dinero. Si vas a tener un sistema de administración vía web para tu PBX, asegúrate de o tener acceso desde el exterior. Algunas empresas más listas crearán una VPN o un túnel por SSH para administrar a sus clientes, pero seguro que hay muchas que directamente dejan accesible el servicio web desde Internet. Y ante una empresa que administra decenas o cientos de clientes, ¿se va a poner una contraseña diferente para cada PBX? o se pone el nombre de la empresa o una genérica para todos sus clientes.

10 What is happening? Aquí podemos ver un ejemplo que encontré en un foro, en el que una empresa, española por cierto, comenta que tiene un Elastix y que a pesar de que su centralita se encuentra en una red local, tras un firewall y que únicamente se pueden acceder desde un IP local, se están haciendo llamadas a un 905, que no deben ser muy baratas ...

11 What is happening? En este otro ejemplo, podemos ver a otra empresa que, casualmente también tiene un Elastix, que comenta algo similar. Tiene una centralita en una oficina, en la que trabajan de lunes a viernes y, como podéis ver, hay más tráfico los fines de semana que entre semana ... y eso que asegura que la oficina está vacía sábados y domingos.

12 What is happening? En este caso se ha hackeado un Trixbox y el atacante ha llegado a modificar el dialplan, como se ve, haciendo que no se registre en el CDR la llamada, de forma que localmente parece que no ahcemos gasto, pero luego nuestro proveedor nos pasará la factura de llamadas ...

13 ¿Y si nos hackean? Ante un robo de cuenta:
Llamadas gratis hasta la próxima factura. Pero, ¿y si el atacante tiene acceso al sistema?: Posibilidad de alterar los planes de llamadas. Creación de nuevos usuarios. Desvío de llamadas. Alteración del identificador de llamada. Escuchas ilegales. ¿Y si el atacante es un hacker experimentado?: Recompilación de Asterisk con un backdoor. Si nuestro sistema Asterisk ha sido comprometido, a no ser que monitoricemos las llamadas con cierta frecuenta, algo poco habitual, no nos daremos cuenta hasta que, pasado el mes, nos llegue la factura de teléfono.  Todo esto si la finalidad del atacante es realizar llamadas, porque si se limita a espiar conversaciones, por ejemplo, es muy probable que ni nos demos cuenta en mucho tiempo. Además, ante un hackeo de cuentas, lo más que hará la empresa que lleva el servicio técnico va a ser cambiar las contraseñas de usuario y revisar la configuración, pero, ¿y si han metido un backdoor? ¿o si han sustituido algún módulo de asterisk que, por ejemplo, permita registrar un usuario oculto o llamar sin necesidad de validación?

14 La ignorancia es el mayor de los problemas
¿Y qué si me hackean una cuenta y hacen algunas llamadas? ¡ En sólo unas horas la factura puede ser bestial ! Si no tiene límite de llamadas concurrentes, podrían hablar decenas de usuarios a la vez. Mucha gente, no es consciente realmente las consecuencias de tener tu sistema comprometido. Cada cuenta SIP tiene configurados una serie de canales simultáneos para realizar o recibir llamadas. Lo normal es poner 2, uno para hablar y otro por si quieres atender una segunda llamada o hacer un desvío. Pero, ¿para que necesitas poner 10 o 20 canales en una cuenta?

15 La ignorancia es el mayor de los problemas
¿Y qué si me hackean una cuenta y hacen algunas llamadas? ¡ En sólo unas horas la factura puede ser bestial ! Si no tiene límite de llamadas concurrentes, podrían hablar decenas de usuarios a la vez. Y os preguntaréis, bien, si tenemos una cuenta hackeada con 20 canales, ¿cómo vamos a hablar con 20 personas a la vez? pues muy fácil. En lugar de enganchar un teléfono a esa cuenta, enganchamos un Asterisk con 20 teléfonos. Así podrán llamas 20 personas de forma simultánea.

16 Asterisk: ficheros básicos
Sip.conf: Extensions.conf:

17 Escuchar una conversación
Cómo escuchar una conversación: Basta con añadir al plan de llamadas (dialplan): 9999 => Extensión que marcamos para acceder 1234 => Nuestra contraseña Realizamos una llamada interna al 9999 y tras poner nuestra clave, marcamos la extensión que queremos espiar.

18 Grabar una conversación
Cómo grabar una conversación: En el dialplan de la extensión añadimos: 100 => Extensión que monitorizamos. h => Ejecutamos un script al finalizar la llamada. Guardamos la llamada en /tmp. Con un script podemos convertirla a MP3 y mandarla por mail.

19 Demo: Asegurando el acceso al sistema
Vamos a ver un ejemplo de lo que se podría hacer, ante un sistema comprometido, en el que hemos modificado el plan de llamadas. En este caso, suponemos que tras llamar escuchamos una locución con un menú de 2 opciones y tras comprometer el sistema, hemos insertado una tercera opción, oculta, que tras marcarla nos pedirá nuestra IP y puerto de conexión, abriendo una shell remota para acceder al sistema.

20 Demo: Asegurando el acceso al sistema

21 Demo: Asegurando el acceso al sistema

22 Técnicas de ataque Ataque a redes inalámbricas: Aircrack-ng.
Generación de contraseñas de ciertos proveedores (WLAN, Jazztel, Tele2, Ono, ...). Monitorización del tráfico: Tcpdump. Wireshark. Envenenamiento ARP (técnicas de Man in The Middle): ARPspoof. Ettercap. Cain & Abel. Ataque a equipos vulnerables de la red: Metasploit. Las técnicas de ataque son las mismas que en cualquier red local sólo que la finalidad es obtener cuentas de usuarios. Hoy día todo el mundo tiene wifi ya que el mismo proveedor te da el router así. Y si viene Telefónica o Jazztel o quién sea y nos trae un router wifi con un chorizo de contraseña, que pensamos que eso no lo averigua ni el tato, y encima con la comodidad de tenerla anotada debajo del router, ¿quién la va a cambiar? ¿para qué? No voy a explciar las técnicas de ataque a redes wifi ni las numerosas herramientas que averiguan, en segundos, las claves por defecto de casi todos los operadores, pero es algo trivial y, una vez dentro, monitorizando el tráfico, con ataques de envenenamiento ARP y demás, se pueden sacar las cuentas SIP rápidamente.

23 Contramedidas Usar contraseñas seguras:
Tanto en los usuarios de Asterisk como en el servidor. Nuestro sistema: Mantenerlo siempre actualizado tanto Linux como Asterisk. Evitar abrir servicios innecesarios y cuentas por defecto. Crear políticas de llamada personalizadas: Impedir llamadas internacionales si no se necesitan. Restringir el uso a horario de oficina. Reducir el número de canales a 2. Monitorización de llamadas. Usar comunicaciones cifradas (TLS+SRTP) si es posible. No utilizar redes inalámbricas. Para evitar llevarnos sustos, basta con seguir una serie de pautas como usar contraseñas seguras, mantener actualizados los sistemas, evitar el uso de redes inalámbricas a no ser que sepamos bien cómo gestionarlas, crear políticas de llamadas que impidan llamar a destinos no necesarios (por ejemplo, internacionales) o llamar en horario fuera de oficina, monitorizar diariamente las llamadas, etc.

24 Escenario 2: Operadores de VoIP
Desde el punto de vista de un operador de VoIP, aunque he puesto un único servidor en el dibujo, realmente tenemos una infraestructura (servidores SIP, proxys SIP, …) a la que conectan todo tipo de dispositivos: teléfonos IP, gateways, softphones, otros servidores SIP, etc.  Y si a todo esto le sumamos que estamos accesibles a través de todo Internet y que somos vulnerables a escaneos, ataques de fuerza bruta, ataques de denegación de servicio, y demás ... pues nos llueven las ostias por todos los lados. Servidor SIP montado en Internet Conexión de todo tipo de dispositivos, otros servidores SIP, proxys, etc

25 Problemas Principales problemas:
Muchas centralitas inseguras conectadas. Conexiones directas (endpoints) de usuarios finales: Robo de contraseñas (keylogger, troyanos, etc). Accesible desde Internet: Escaneos masivos. Ataques de fuerza bruta. Ataques de denegación de servicio. Exploits remotos. Como he comentado, tenemos todo tipo de dispositivos conectados y muchos de ellos son vulnerables a posibles robos de cuentas, por ejemplo, un softphone en un PC o en un móvil, que ante un keylogger o un troyano, podría ver comprometida su cuenta SIP. O una centralita conectada con muchos dispositivos, que como hemos visto antes, es posible que no sean muy seguras.

26 Contramedidas A nivel de servidor:
Uso de iptables para permitir lo estrictamente necesario. Desactivar los servicios no necesarios. Separar otros servicios en diferentes máquinas (correo, web, bases de datos, ...). Usar VPNs siempre que sea posible. Dentro de lo permitido por Asterisk: Desactivar servicios de Asterisk no necesarios. No usar nombres de usuario que coincidan con la extensión. Uso de contraseñas seguras. Crear políticas de llamada personalizadas. Monitorización de llamadas. Usar comunicaciones seguras (TLS) si es posible. Además: Usar un puerto por defecto diferente Modificar la "huella" del Asterisk. Bloqueo de IPs con un determinado número de registros inválidos. Establecer un límite de gasto mensual por cliente.  Bloqueo de clientes con un consumo excesivo en un corto periodo de tiempo. Usar un frontend propio. En este caso el concepto cambia mucho, al igual que los riesgos, ya que no se trata solamente de nuestra cuenta de teléfono y es muy difícil detectar si una llamada la realiza un usuario o un hacker. Como medias, a parte de todo lo visto anteriormente, , usar contraseñas seguras, desactivación de servicios no necesarios, iptables, fail2ban, monitorización constante de todo lo que ocurra en el sistema, monitorización de llamadas, uso de VPN siempre que sea posible, etc Y por otro lado, es muy recomendable, a nivel de Asterisk, no usar nombres de usuario que coincidan con la extensión, contraseñas seguras, políticas de llamadas personalizadas por cada cliente, comunicaciones seguras cuando sea posible, permitir un número máximo de canales necesario, no más. Además de esto, establecer un saldo mensual máximo por cliente, impedir más de X llamadas internacionales seguidas en una corta franja de tiempo, etc.

27 Obteniendo cuentas SIP
Como hemos visto, la finalidad de un atacante es obtener cuentas SIP para realizar llamadas gratuitas.  Muchas veces un servidor SIP va a estar muy protegido, por lo que otra alternativa para obtener cuenta sería atacar los diferentes servicios o dispositivos conectados, donde también nos encontramos con cuentas que pueden usarse para realizar llamadas. Por ejemplo, teléfonos físicos, softphones, impresoras virtuales tipo hylafax, sistemas de click2call, etc.

28 Buscando dispositivos
No hay que olvidar que casi todos los teléfonos VoIP son administrables por telnet o por web. Google hacking (algunos ejemplos): Teléfonos GrandStream: intitle:"Grandstream Device Configuration" Password CallManager: inurl:"ccmuser/logon.asp" Teléfonos Linksys: intitle:"Sipura SPA Configuration" Otros: shodan, nmap, sipvicious, … Muchos teléfonos tienen la clave por defecto y en la pantalla de configuración podemos ver el servidor de validación y los datos del usuario. Aunque parezca mentira, hay muchos teléfonos físicos conectados a Internet con una IP pública.  Mediante búsquedas en Google, Shodan, o con un simple nmap, podemos localizar dispositivos conectados a Internet. Luego Jesús os dará más detalles de esto ...

29 Buscando dispositivos
Ejemplo: teléfono Grandstream conectado a Internet y con la contraseña por defecto: "admin"    x-O En esta imagen vemos un teléfono Grandstream que he localizado mediante una búsqueda en Google, que además de estár conectado a Internet con su IP pública, mantiene la contraseña por defecto ... osea, 'admin'. Si miramos en la configuración de la cuenta, afortunadamente (para el usuario) la contraseña no se muestra, pero podemos obtener, entre otras cosas, el servidor SIP contra el que está validando, el puerto de conexión, el usuario SIP, y los datos personales del usuario (quizás con ingeniería social podamos averiguar más).

30 Buscando dispositivos
- Algunos ejemplos de con contraseñas por defecto. - Éste es un teléfono de la marca Polycom, parecido al Grandstream(que también los hay xD) que enseño Pepelux al principio con los Dorks de Google.  - Vemos los datos para conectarse a su servidor VoIP, en este caso de telefónica. La contraseña, en principio, no la podemos conseguir por eso no podemos llamar. Lo que sí podemos es cambiarle los parámetros, contraseñas y demás para hacerle un Dos , por decirlo de alguna manera  "manual", o cosas más divertidas como cambiarle el fondo de la pantalla del teléfono  ->

31 Buscando dispositivos
... para hacerle un "David Hasselhoff" por ejemplo, ago así xD

32 Sistemas Click-to-Call
Implementados en numerosas webs. ¿Qué podemos hacer?: Llamadas molestas al vecino. Gasto económico a la empresa que ofrece el servicio. En caso de hackeo de la web: Acceso al usuario y servidor SIP. Acceso al usuario y contraseña Manager para este servicio de llamadas externas. Si el manager no está correctamente configurado: Llamadas gratis. Un sistema Click-to-call es el típico botón que aparece en muchas páginas web y que, tras poner tu número de teléfono, de forma instantánea, recibes la llamada de un comercial. Parece que haya un tío mirando todo el día la pantalla y que además al recibir la petición es super rápido tecleando tu número, porque te llama en segundos, pero realmente el funcionamiento es sencillo. Una vez que escribes tu teléfono y pinchas en el botón, se realiza una llamada al comercial. Cuando este descuelga, se realiza una segunda llamada al cliente y se establece la comunicación entre ambos. Y, aparte de poner el teléfono del vecino para putearle un poco, si alguien haclea la web que ofrece el servicio y es capaz de editar el código fuente de esa página, sacará el usuario y contraseña del servicio, que se llama Manager, en Asterisk.

33 Sistemas Click-to-Call
Ejemplo de una web con Click-to-Call: El código en PHP para hacer esto es algo muy simple. Se limita a crear un socket que conecta con la IP y puerto del Asterisk, enviando el usuario y contraseña del servicio Manager, la extensión del comercial y el teléfono del interesado.

34 Sistemas Click-to-Call
Configuración de manager.conf: La configuración de este servicio radica en el fichero manager.conf de Asterisk y, en caso de no tener bien establecidas las políticas de seguridad (deny y permit) es posible usar el servicio desde cualquier lugar. Para que esto sea seguro, se deberían incluir únicamente las IPs de las webs que ofrecen el servicio. Además, volviendo a la diapositiva anterior, si en el campo 'Channel' en lugar de SIP/exten ponemos un número de teléfono, se realizará la llamada a ese número, al descolgar se llamará al segundo número y, la factura la pagará el propietario del servicio. Sería algo similar a la siguiente imagen ... Si no están bien configuradas las restricciones, podemos llamar desde cualquier lugar.

35 Sistemas Click-to-Call
Ejemplo de una web con Click-to-Call:

36 Sistemas Click-to-Call
Solicitud de llamada a dos números: Se realiza una primera llamada, al descolgar se realizaría una segunda, y se establecería la comunicación entre ambos.

37 Herramientas Muchas ... pero antiguas:
SIPp (http://sipp.sourceforge.net/) Voipong (http://www.enderunix.org/voipong/) Cain & Abel (http://www.oxid.it/cain.html) Asteroid (http://packetstormsecurity.org/) Voiper (http://voiper.sourceforge.net/) SIPDump (http://packetstormsecurity.org/) Sipcrack (http://www.codito.de/) Sipsak (http://sipsak.org/) ... VOIPSA  (http://www.voipsa.org/Resources/tools.php) Defcon'19: Botnet (moshimoshi) / VPN (http://code.google.com/p/moshimoshi/) VoIP Hopper 2.0 (http://voiphopper.sourceforge.net/) - Hay un montón de ellas pero como vamos justos de tiempo no podemos pararnos con todas, una fuente enorme de recursos es ese enlace a la (VoIP Security Alliance). Casi todas estas herramientas son antiguas y muchas llevan demasiado tiempo sin actualizarse, así que vamos a centrarnos en las que nos gustan a nosotros a la hora de hacer una auditoría. - Lo que sí nos gustaría comentar son algunas excepciones a esto presentadas en la Defcon del año pasado:     - Botnet/VPN: Prueba de concepto que demuestra la posibilidad de implementar una botnet utilizando el protocolo SIP, usando DMTF(señalización por pulsaciones) para enviar los comandos. De ésta forma se podrían evitar firewalls, IDSs y demás. Además, el paper también sugiere algo similar para una VPN.     - VoIP Hopper 2.0: Se presentó la nueva versión, vale para lo que se le suene llamar "VLAN bypassing", que es un vector ataque que trata de saltar de una "virtual LAN". Pepelux mostró antes que eran una de las técnicas de defensa que utiliza algunos switchs gestionables.

38 Sipvicious http://code.google.com/p/sipvicious/ Suite GPL
Herramientas: svmap: escaner SIP. swar: identifica extensiones de una PBX. svcrack: crackea contraseñas SIP. svreport: gestiona los informes generados. svcrash: intenta anular el uso de svwar y svcrack. - Bueno, pues ahora llegamos a las herramientas "de verdad". - La primera es el Sipvicious que es un "suite" para auditar dispositivos SIP. Es GPL y consta de las siguientes herramientas:     - svmap: Sscaner SIP.     - swar: Identificar extensiones de una PBX.     - svcrack: Crackear contraseñas SIP por fuerza bruta.     - svreport: Gestiona los informes generados.     - svcrash: La desarrolló el autor a posteriori como medida de defensa contra Sipvicious, básicamente lo peta. Lo desarrolló el autor porque en una de las versiones antiguas aunque lo bloqueases con sistemas como el fail2ban, el sipvicious seguía enviando infinitamente xD. Además también se detectaron versiones modificadas del sipvicious para evadir IDSs y demás (cambiando el user-agent básicamente, ya que es fácimente reconocible "friendly-scanner") usadas por mafias como las que comentó Pepelux. - Es importante comentar que es mucho más rápido que los escáneres genéricos como el Nmap porque envía un paquete sip y espera pro la respuesta de otro sip en vez de esperar por un error ICMP NOTA: For example, during testing we were able to identify around 200 SIP devices on one particular network, out of a scan of IP addresses in less than 3 minutes. On the other hand when we scanned the same network with nmap version 4.20 (default options for sU scan on port 5060), it took longer than 20 minutes at which point we stopped the scan. - También me gustaría dejar constancia  de algunos "problemillas" que pueden surgir al utilizarlo en Internet, porque en LAN ya sabemos que todo funciona muy bien ;). Es lo que usé yo para escanear, simplemente un script en bash, que tengo en el blog:     - Si  vas a escanear distintos rangos imprescindible el uso de sesiones e informes que nos ofrece el software para organizar un mínimo la información.     - Es recomendable escanear los puertos siguientes porque hay gente que los cambia y puedes encontrar alguno más.     - Si alguno configuró un Asterisk ya sabrá que no se lleva  muy bien con NAT  por temas del protocolo SIP, que no vamos a analizar aquí  por  falta de tiempo. Simplemente decir que es necesario especificarle la IP externa con el parámetro "-x"  y redirigir el puerto 5060 (y succesivos si se utilizan varias instancias de forma simultánea) ya que son los que usa el Sipvicious de salida por defecto. Yo lo que hago, para evitar problemas, es  meterlo en la DMZ, los routers de casa ya casi todos traen la opción actualmente.     - Al usar el svreport para obtener el resultado del escaneo tarda muchísimo en hacer la resolución de DNS así que mejor desactivarla.       - Por último, comentar que hay dispositivos que no reconoce y los marca como "unknow", así que para no perder ninguna información del escaneo "por lo que pudiera pasar" ;) es recomendable guardar una captura de la interfaz, con tcpdump  por ejemplo. - El script "de andar  por casa" que utilicé para todo esto los  pondré en el  blog esta semana por si alguien se aburre, para que no pierda el tiempo.

39 Sipvicious Immunity Canvas http://code.google.com/p/sipvicious/
Suite GPL Herramientas: svmap: escaner SIP. swar: identifica extensiones de una PBX. svcrack: crackea contraseñas SIP. svreport: gestiona los informes generados. svcrash: intenta anular el uso de svwar y svcrack. Immunity Canvas VoIPPack (http://www.enablesecurity.com/voippack) Software privativo Herramientas:  sipscan sipenumerate sipcrack Sipautohack :) Una demo del potencial de esta herramienta: - En este caso estamos ante una herramienta de pago, de los creadores de Immnumity Debugger. El precio del Inmunity Canvas ronda los 1000$ de primeras, mas renovaciones, más el precio del VoIPPack que es como se llama el módulo que incluye las funcionalidades que nos interesan. - Es de Sandro Gauci, el mismo del sipvicious, de hecho fue él el que me dio algunos los consejos de antes. - Las herramientas son parecidad excepto una salvedad: sipautohack: Hace todo lo anterior él solito para que sea cómodo a los pentesters, la verdad está muy guapa porque a mayores aprovecha muchos más vectores de ataque que va añadiendo poco a poco, ejemplo: aprovechar vulnerabilidades en los paneles de control para agregar los usuarios ahí directamente. ;)

40 Wireshark - UCSniff Wireshark (http://www.wireshark.org/) UCSniff
(http://ucsniff.sourceforge.net/) - Otro tipo de ataque sobre un sistema comprometio es el "eavesdropping", que es el sniffing de toda la vida pero centrándonos en los protocolos que usan los sistemas VoIP. - Tenemos varias herramientas, entre las más conocidas:     - El típico Wireshark que identifica los paquetes RTP e incluye la posibilidad de recomponer y reproducir conversaciones de audio.     - El sniffer más completo para VoIP es el UCSniff que soporta voz, códigos DMTF e incluso "VLAN hopping" para algunos dispositivos Cisco, además es el único que soporta la captura de vídeo, esos de la imagen son sus creadores.    

41 Voipong Voipong (http://www.enderunix.org/voipong/)
- Sniffer para VoIP programado en C. Funciona en Solaris, Linux y FreeBSD. - Lo que hace básicamente es detectar las llamadas sobre VoIP que estén usando el codec G711 y guardarlas en formato WAV en el directorio que especifiquemos.

42 Sipsak Sipsak (http://sipsak.org/)
Herramienta para realizar test sobre SIP. Ellos la definen como la navaja suiza del SIP.

43 Sipcrack - Sipdump Sipcrack (http://www.codito.de/)
Herramienta para crackear contraseñas SIP obtenidas con una captura PCAP. SIPDump (http://packetstormsecurity.org/files/54829/SIPcrack-0.2.tar.gz.html) Permite monitorizar y capturar autenticaciones. También puede obtenerlas de un fichero PCAP.

44 Otras herramientas Voiper (http://voiper.sourceforge.net/)
Juego de fuzzers para testear un servidor SIP. Asteroid (http://packetstormsecurity.org/files/view/51618/asteroidv1.tar.gz) Ataques DoS mandando paquetes. Efectivo para versiones 1.2 o inferiores. Cain & Abel (http://www.oxid.it/cain.html) Reconstruye capturas de RTP.

45 Toll fraud http://shadowcommunications.co.uk/ Shadow Communication Ltd
+ de llamadas en 2 meses + de euros cobrados Unas 50 personas implicadas - Lo primero y más evidente "llamar", Pepelux explicó lo sencillo que sería montar una centralita pirata para usar como trunks todos los sistemas comprometidos. - Aquí pusimos algunos ejemplos "graciosos" para los dueños de las centralitas. Fijaros en una tarde de "despiste" la que te pueden liar y en más tiempo pues ya veis ahí... :| - Quisimos destacar el caso en concreto de shadowncommunications, era una organización ya desmantelada que se dedicaba a robar minutos y revenderlos, eran 42 tíos que hicieron perder a los propietarios de los sistemas que utilizaban hasta 11 millones de euros. Tenían todo montado de forma muy "profesional" como podéis ver aquí xD ->

46 Toll fraud - con unas señoritas muy wapas en la portada de la web (que aún sigue online, no me pregunteis porqué) y como podréis suponer, con unos muy buenos precios. xD

47 SPIT: Spam over Internet Telephony Vishing: VoIP + phising
SPIT / Vishing SPIT: Spam over Internet Telephony Vishing: VoIP + phising - Queríamos incluir también estos dos casos por ser cada vez más comunes:     - SPIT: Es igual que el SPAM por correo pero al teléfono, puede ser un sms o en forma de llamada.     - Vishing: Es más o menos lo mismo pero añade un factor de ingeniería social para intentar engañar a la víctima para que facilite algún tipo de información sensible. Ej: Llamada del banco para confirmar el PIN de tu tarjeta. - No es nada difícil spoofear un caller id en SIP por lo que tu teléfono te podría estar mostrando el número de teléfono de tu oficina y mandarte introducir el PIN por teclado capturando los códigos DMTF y almacenándolo, antes de despedirse amablemente por supuesto. ;) - Estos ataques no son nuevos en VoIP, pero sí es mucho más barato realizarlos (gratis xD). En este caso la configuración del Asterisk para montar una centralita pirata sería más sencilla aún que la de antes.

48 Demo: RTP Insert Sound Vamos a ver cómo es posible inyectar tráfico RTP en una conversación. Para ello, realizaremos un ataque MITM con Ettercap y mediante un sencillo script (para no andar con el Wireshark) veremos cuando se establece una llamada, mostrándonos la IP y puerto de conexión para el tráfico RTP. Con estos datos y el rtpinsertsound, vamos a inyectar sonido en una conversación entre los dos interlocutores.

49 Gracias por vuestra atención
¿Preguntas? Mail: Blog: Web:


Descargar ppt "VoIP (In)security Jose Luis Verdeguer (aka Pepelux)"

Presentaciones similares


Anuncios Google