En este blog informático está reflejada mi experiencia en el mundo de la informática. Mis publicaciones serán sobre seguridad informática e Internet. Las técnicas y herramientas aquí explicadas son para fomentar la seguridad de la información dentro de la filosofía del hacking ético. En línea desde 2005.

Interceptar conversaciones VoIP.

Es posible interceptar conversaciones en el protocolo VoIP porque las secuencias de datos de voz son transmitidas generalmente en el protocolo IP por medio del protocolo de transporte RTP. Este protocolo proporciona las funciones de transferencia convenientes para transmitir datos en tiempo real tales como: datos audio, de vídeo o de simulación, servicios de red en multicast o en unicast. La voz se envía comprimida en codecs que se utilizan para convertir las secuencias de datos en el lado del transmisor y receptor. El RFC-3551 describe cómo los datos audio y de video se pueden llevar dentro de RTP y también definen un sistema de decodificadores estándares y sus nombres, cuando está utilizado dentro de RTP.

Para capturar conversaciones utilizamos un sniffer que extrae los parámetros como: puertos de RTP, direcciones IP de la sesión de RTP del emisor y receptor y los tipos dinámicos del códec de la sesión del SIP que precede los datos flujo en RTP. Después captura y descifra las corrientes audio de RTP codificadas con los codecs. Una vez descifrado el audio se guarda en archivos de sonido en el disco duro. Los programas sniffer para VoIP puede descifrar y grabar las conversaciones que estén codificadas en los codecs soportados, por dichos programas.

Capturar conversaciones desde la plataforma Windows.

Utilizando una famosa y polivalente utilidad Cain & Abel, que puede decodificar los flujos de audio RTP codificados con los siguientes códecs: G711 uLaw, G771 aLaw, ADPCM, DVI4, LPC, GSM610, Microsoft GSM, L16, G729, Speex, iLBC, G723.1, G726-16, G726-24, G726-32, G726-40, LPC-10. También implementa un modulo para envenenamiento de la cache ARP para evitar las limitaciones de tráfico broadcast impuestas por los switch. Los switch solo envían paquetes entre los host que están incluidos en su tabla ARP, limitando así el broadcast entre emisor y receptor, con el envenenamiento ARP se consigue mediante una técnica denominada ataque man-in-the-middle, falsear la MAC del atacante para poder recibir ese broadcast y capturar las conversaciones VoIP entre el emisor y receptor.

Para comenzar a interceptar el tráfico con Cain & Abel pinchamos en el botón “Start/Stop Sniffer” situado a la izquierda en la barra de herramienta. Seleccionamos la pestaña Sniffer de la parte superior, y después pinchamos en la pestaña VoIP de la parte inferior. El sniffer capturara las conversaciones colocándolas por orden de captura en una lista. Cuando se pare el sniffer podemos reproducir los archivos generados en formato WAV, que se alamcenaran en la ruta de instalación del programa, si la elegida en la instalación es la ruta por defecto seria la siguiente: “C:\Archivos de programa\ Cain\VoIP”.

Si queremos utilizar la técnica de envenenamiento ARP solo tendremos que pinchar con el sniffer activado el botón “Start/Stop APR”, seleccionar la pestaña APR de la zona inferior de la pantalla y pulsar en el signo “+” en la barra de herramientas. Se despliega un menú en el que hay que elegir en la zona izquierda donde se encuentran las IP de los equipos de la red, los equipos que quieres interceptar, que aparecerán en la zona derecha, para finalizar pulsamos OK y ya estaría funcionando el envenenamiento ARP.

Capturar conversaciones desde otras plataformas.

Utilizando Voipong que intercepta las las comunicaciones VoIP en la red que utilizan los protocolos: SIP, H323, Cisco's Skinny Client Protocol, RTP y RTCP. Decodifica los flujos de audio codificados con el códec G711 convirtiéndolos al formato WAV. Está escrito en C para mayor eficacia y funciona sobre las plataformas: Solaris, Linux y FreeBSD.

Antes de instalarlo es necesario tener instalada la librería libpcap de captura de paquetes. Después de instalar el programa y libpcap editamos el fichero de configuración del voipong en la ruta por defecto “/usr/local/etc/voipong/voipong.conf”, comprobando que los parámetros sean correctos. Cambiamos los parámetros “soxpath” y “soxmixpath” con la ruta de sox y soxmix respectivamente. Para encontrar las rutas podemos utilizar el comando “whereis”. Modificamos el parámetro “device” en el que tenemos que poner el nombre del interfaz de por la cual interceptamos los paquetes. También modificamos el apartado “outdir” en el especificamos la ruta donde se guardán los ficheros en formato WAV correspondientes a las conversaciones que capturemos.

Una vez configurado podemos ejecutar el programa con la sentecia “voipong”, para un mejor funcionamiento ejecutamos el Voipong en modo debug, para que no trabaje en modo demonio con los modificadores –d4 y –f. Los ficheros en formato WAV con las conversaciones interceptadas los encontraremos en la ruta asignada como “output” en el fichero voipong.conf.

Para realizar el envenenamiento ARP podemos usar la herramienta Arpoison.

Sintaxis:

NAME
arpoison -- arp cache update utility
SYNOPSIS
arpoison -i -d -s -t -r
[-a] [-n number of packets] [-w time between packets]
DESCRIPTION
Arpoison constructs an ARP REQUEST or REPLY packet using the
specified hardware and protocol addresses and sends it out the specified interface.
-i Device e.g. eth0
-d Destination IP address in dotted decimal notation.
-s Source IP address in dotted decimal notation
-t Target MAC address e.g. 00:f3:b2:23:17:f5
-r Source MAC address
-a Send ARP REQUEST
-n Number of packets to send
-w Time in seconds between packets

Para averiguar las direcciones MAC solo tenemos que hacer ping a las maquinas que queremos atacar y encontraremos su MAC visualizando nuestra tabla ARP con “arp -nv -i eth0”.

Como prevenir el ataque.

La mejor forma de prevenir el ataque es encriptando, la clave estaría en elegir un algoritmo de encriptación rápido y eficiente. Las técnicas más eficientes serian: VPN (virtual personal network), el protocolo Ipsec y otro protocolos como ZRTP. El menos conocido es el protocolo ZRTP creado por Phil Zimmermann (creador de PGP), Jon Callas y Alan Johnston, se trata de un protocolo de acuerdo de claves Diffie-Hellman durante el establecimiento de una llamada en el flujo de datos Real-time Transport Protocol (RTP), que ha sido establecido empleando el protocolo de señalización Session Initiation Protocol (SIP), generando un secreto compartido que es usado para las claves en una sesión segura. La gran ventaja de ese protocolo es que no requiere el uso de una infraestructura de calve publica (PKI). El protocolo ZRTP se puede implementar en las plataformas Windows, Linux y Mac OS X; utilizando las aplicación Zfone. Esta aplicación para cifrar comunicaciones VoIP trabaja con la mayoría de los clientes como: X-Lite, Gizmo, Apple iChat AV (audio y video), XMeeting y SJphone; no funciona con Skype debido a que este cliente utiliza protocolos cerrados.

Más información y descarga Cain & Abel:
http://www.oxid.it/cain.html

Manual Cain & Abel:
http://www.oxid.it/ca_um

Más información y descarga Voipong:
http://www.enderunix.org/voipong

Manual Voipong:
http://www.enderunix.org/voipong/manual

Más información y descarga Arposion:
http://www.arpoison.net

Más información y descarga Zfone:
http://zfoneproject.com

IETF protocolo ZRPT:
http://tools.ietf.org/html/draft-zimmermann-avt-zrtp-04
Interceptar conversaciones VoIP. Interceptar conversaciones VoIP. Reviewed by Álvaro Paz on lunes, junio 30, 2008 Rating: 5
Publicar un comentario
Este Blog sobre Seguridad Informática está bajo una licencia de Creative Commons, Álvaro Paz. Con la tecnología de Blogger.