En telefonía IP normalmente se tiende a separar las redes de voz (teléfonos IPs y resto de componentes de la plataforma) de las de datos (PCs, servidores, impresoras, etc.).

El puesto de usuario más característico en estos entornos es un puesto de trabajo conectado a un teléfono IP, y a su vez ese teléfono IP conectado a un único punto de red/switch. De esta manera se usa un único interfaz de un switch por puesto (teléfono + PC) y se ahorra en cableado estructurado.



Ésto es posible porque un puerto de acceso puede manejar dos VLANs: la VLAN de acceso (datos) y la VLAN de voz (auxiliar). Además los switches pueden proporcionar alimentación a los teléfonos vía ethernet (power inline, PoE), priorizar el tráfico de voz con marcado de CoS y, en definitiva, separar lógicamente ambos mundos.

Un ejemplo de configuración de un puerto específico en un modelo Catalyst sería el siguiente:

interface GigabitEthernet1/0/5 switchport access vlan 30 switchport mode access switchport voice vlan 21 authentication control-direction in authentication event fail retry 3 action authorize vlan 40 authentication event server dead action authorize authentication event no-response action authorize vlan 40 authentication event server alive action reinitialize authentication host-mode multi-host authentication order dot1x mab authentication port-control auto authentication violation protect mab dot1x pae authenticator dot1x timeout tx-period 10 dot1x timeout supp-timeout 10 dot1x max-req 1 dot1x max-reauth-req 1 spanning-tree portfast spanning-tree bpduguard enable spanning-tree guard root
Con esta configuración cuando un PC se conecte a la red a través del teléfono accederá a la VLAN de datos principal (30) o de invitados (40) dependiendo del resultado de la autenticación 802.1x.

Si por el contrario es un teléfono IP de Cisco el que se conecta a la red, el terminal enviará un paquete CDP (Cisco Discovery Protocol) a la dirección multicast 01:00:0c:cc:cc:cc (0x0802) para unirse a la VLAN de voz, incluso sin necesidad de autenticación 802.1x ya que Cisco autoriza directamente al teléfono si no dispone de suplicante }:-)

Ahora bien, existen numerosas razones por las que alguien puede querer llegar a ganar acceso no autorizado desde su PC a la VLAN de voz, y seguramente ninguna de ellas buena...



La técnica más común para este VLAN hopping es capturar los paquetes CDP del teléfono IP y reenviarlos a través de un interfaz con el id de la VLAN adecuada (802.1q tagging). Es decir, imitar el comportamiento de un teléfono IP.

Si dispones de un sistema Linux puedes utilizar tcpdump y tcprelay o, mejor aún, la herramienta VoIP Hopper que automatiza todo el trabajo. Si es así sigue alguno de estos enlaces y olvida esta entrada [...].

[...] ahora bien, si sigues leyendo seguramente es porque en tu PC de trabajo sólo dispones de Windowsy no tienes un live-cd a mano con la distro apropiada, o porque eres un amante de Micro$oft (sobre gustos colores) o porque eres curioso.. yo que sé...

Verás que no es complicado realizarlo. De hecho me sorprende que no haya ya un tutorial en Internet para hacerlo enteramente bajo Windows (o no haya sabido encontrarlo), así que vamos a ello:

- Lo primero que haremos es conectar nuestro PC a la red sin pasar por el teléfono VoIP y realizar una captura de paquetes para inspeccionar los anuncios CDP. Si el puerto del switch está configurado con una VLAN de voz, se anuncia el identificador de la VLAN configurada. Como podéis observar abajo, el switch dice que estamos conectados al puerto GigabitEthernet 1/0/14 y el número de VLAN de voz es el 21:



- Ahora volvemos a conectar el teléfono al punto de red y esperamos que vuelva a estar en línea. Después conectamos el portátil de nuevo al puerto de datos del teléfono y abrimos de nuevo Wireshark para capturar los únicos paquetes CDP que veremos ahora que estamos conectados al teléfono, los enviados por el propio teléfono:



Como veis estos paquetes CDP son cuidadosamente construidos con todos los valores apropiados para la VLAN de voz.

- A continuación exportamos un paquete a formato libpcap y modificamos en el fichero .cap con nuestro editor hexadecimal favorito los valores de la MAC y el device ID, sin olvidarnos de ajustar el checksum:



- El siguiente paso es preparar nuestro interfaz de red desactivando todos los protocolos que no usaremos y asignándolo a la VLAN correspondiente:




También es posible crear y utilizar adaptadores virtuales adicionales con soporte VLAN tagging mediante un controlador multiplexor (MUX) NDIS IM o un controlador de protocolo NDIS. Si bien previamente necesitarás compilar el driver según la arquitectura del sistema y la versión de sistema operativo y luego firmarlos... una ardua pelea con el Windows Driver Kit (WDK) que nos daría de sobra para otra extensa entrada del blog...

- Volviendo al turrón, como ya habíamos configurado nuestra conexión local con el identificador correcto de la VLAN de voz sólo nos queda reenviar el paquete .cap. Además tendremos que hacerlo cada 60 segundos para simular el comportamiento normal de un teléfono IP de Cisco, tarea fácil con la herramienta gratuita Colasoft Packet Player:



- Finalmente conectamos nuestro portátil directamente a la red y, después de unos segundos de incertidumbre, comprobamos que el DHCP de VLAN de voz nos ha asignado una IP:

Adaptador de Ethernet Conexión de área local: Sufijo DNS específico para la conexión. . : Dirección IPv4. . . . . . . . . . . . . . : 10.x.x.177 Máscara de subred . . . . . . . . . . . . : 255.255.x.0 Puerta de enlace predeterminada . . . . . : 10.x.0.1
Y que podemos alcanzar otros teléfonos:



¡Estamos dentro! Desde la perspectiva de los switches nuestro portátil será como un teléfono IP normal conectado a un puerto, con su modelo y número de serie correspondiente. Y ojo que si los administradores tienen habilitado auto-registro nuestro equipo hará su aparición estelar en el Call Manager consumiendo licencias (DLUs)...

- Próxima parada: explorar la red de voz, buscar dispositivos IP vulnerables, modificar configuraciones atacando el servidor TFTP, modificar GARP, hacer ARP spoofing y capturar llamadas, etc.

¡Hasta la próxima!

Fuente: De cómo saltar a la VLAN de voz con Windows y dos "pedrás" : hackplayers