voip (in)security jose luis verdeguer (aka pepelux) twitter: @pepeluxx mail: [email protected]...

45
VoIP (In)security VoIP (In)security Jose Luis Verdeguer (aka Pepelux) Twitter: @pepeluxx Mail: [email protected] Blog: http://blog.pepelux.org Web: http://www.pepelux.org ---------- Agradecimientos a: Jesús Pérez Rubio @jesusprubio

Upload: hipolito-maradiaga

Post on 31-Dec-2014

16 views

Category:

Documents


3 download

TRANSCRIPT

VoIP (In)securityVoIP (In)security

Jose Luis Verdeguer (aka Pepelux)

Twitter: @pepeluxxMail: [email protected]

Blog: http://blog.pepelux.orgWeb: http://www.pepelux.org

----------Agradecimientos a:Jesús Pérez Rubio

@jesusprubio

¿Qué es la VoIP?¿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.

¿Qué es la VoIP?¿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).

Servidores VoIPServidores VoIP

Diferentes distribuciones de AsteriskDiferentes distribuciones de Asterisk

Escenario 1: Instalaciones localesEscenario 1: Instalaciones locales

• 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)

¿Quién monta Asterisk?¿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.

Principales problemasPrincipales problemas

• Instalaciones por defecto del sistema operativo:

o Servicios abiertos no necesarios.o Trabajo siempre desde la cuenta de root.o Cuentas sin contraseña o con claves demasiado obvias.o Servidores con sistemas antiguos que nunca se actualizan.

• Instalaciones básicas de Asterisk:

o Contraseñas poco seguras.o Configuración y cuentas por defecto.o Planes de llamada poco restrictivos.o Sistemas administrados por web.

• Redes locales inseguras:

o Conexiones inalámbricas.o Equipos con fallos de seguridad.

Problemas de los Front-endProblemas de los Front-end

What is happening?What is happening?

What is happening?What is happening?

What is happening?What is happening?

¿Y si nos hackean?¿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.

La ignorancia es el mayor de los problemasLa 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 !

o Si no tiene límite de llamadas concurrentes, podrían hablar decenas de usuarios a la vez.

La ignorancia es el mayor de los problemasLa 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 !

o Si no tiene límite de llamadas concurrentes, podrían hablar decenas de usuarios a la vez.

Asterisk: ficheros básicosAsterisk: ficheros básicosSip.conf:

Extensions.conf:

Demo: Asegurando el acceso al sistemaDemo: Asegurando el acceso al sistema

Demo: Asegurando el acceso al sistemaDemo: Asegurando el acceso al sistema

Demo: Asegurando el acceso al sistemaDemo: Asegurando el acceso al sistema

Técnicas de ataqueTé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.

ContramedidasContramedidas• 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.

Escenario 2: Operadores de VoIPEscenario 2: Operadores de VoIP

• Servidor SIP montado en Internet

• Conexión de todo tipo de dispositivos, otros servidores SIP, proxys, etc

ContramedidasContramedidas• 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.

Obteniendo cuentas SIPObteniendo cuentas SIP

Buscando dispositivosBuscando dispositivos• No hay que olvidar que casi todos los teléfonos VoIP son administrables por telnet o por web.

• Google hacking (algunos ejemplos):

o Teléfonos GrandStream: intitle:"Grandstream Device Configuration" Password

o CallManager: inurl:"ccmuser/logon.asp"

o 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.

Buscando dispositivosBuscando dispositivosEjemplo: teléfono Grandstream conectado a Internet y con la contraseña por defecto: "admin"    x-O

Buscando dispositivosBuscando dispositivos

Buscando dispositivosBuscando dispositivos

Sistemas Click-to-CallSistemas 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.

Sistemas Click-to-CallSistemas Click-to-Call• Ejemplo de una web con Click-to-Call:

Sistemas Click-to-CallSistemas Click-to-Call• Configuración de manager.conf:

• Si no están bien configuradas las restricciones, podemos llamar desde cualquier lugar.

Sistemas Click-to-CallSistemas Click-to-Call• Ejemplo de una web con Click-to-Call:

Sistemas Click-to-CallSistemas Click-to-Call• Solicitud de llamada a dos números:

HerramientasHerramientas• Muchas ... pero antiguas:

o SIPp (http://sipp.sourceforge.net/)o Voipong (http://www.enderunix.org/voipong/)o Cain & Abel (http://www.oxid.it/cain.html)o Asteroid (http://packetstormsecurity.org/)o Voiper (http://voiper.sourceforge.net/)o SIPDump (http://packetstormsecurity.org/)o Sipcrack (http://www.codito.de/)o Sipsak (http://sipsak.org/)o ...

• 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/)

SipviciousSipvicious• http://code.google.com/p/sipvicious/• Suite GPL• Herramientas:

o svmap: escaner SIP.o swar: identifica extensiones de una PBX.o svcrack: crackea contraseñas SIP.o svreport: gestiona los informes generados.o svcrash: intenta anular el uso de svwar y svcrack.

SipviciousSipvicious• http://code.google.com/p/sipvicious/• Suite GPL• Herramientas:

o svmap: escaner SIP.o swar: identifica extensiones de una PBX.o svcrack: crackea contraseñas SIP.o svreport: gestiona los informes generados.o svcrash: intenta anular el uso de svwar y svcrack.

Immunity Canvas

• VoIPPack (http://www.enablesecurity.com/voippack)• Software privativo• Herramientas: 

o sipscano sipenumerateo sipcracko Sipautohack :)

Una demo del potencial de esta herramienta:

http://enablesecurity.com/products/enablesecurity-voippack-sipautohack-demo/

Wireshark - UCSniffWireshark - UCSniff

• Wireshark (http://www.wireshark.org/)

• UCSniff(http://ucsniff.sourceforge.net/)

VoipongVoipongVoipong (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.

SipsakSipsakSipsak (http://sipsak.org/)

• Herramienta para realizar test sobre SIP.

• Ellos la definen como la navaja suiza del SIP.

Otras herramientasOtras herramientasVoiper (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 36.000 paquetes.

• Efectivo para versiones 1.2 o inferiores.

Cain & Abel (http://www.oxid.it/cain.html)

• Reconstruye capturas de RTP.

Toll fraudToll fraud

http://shadowcommunications.co.uk/• Shadow Communication Ltd• + de 1.500.000 llamadas en 2 meses• + de 11.000.000 euros cobrados• Unas 50 personas implicadas

Toll fraudToll fraud

SPIT / VishingSPIT / Vishing• SPIT: Spam over Internet Telephony

• Vishing: VoIP + phising

Demo: RTP Insert SoundDemo: RTP Insert Sound

Gracias por vuestra atenciónGracias por vuestra atención

¿Preguntas?Twitter: @pepeluxx

Mail: [email protected]

Blog: http://blog.pepelux.orgWeb: http://www.pepelux.org