Un breve resumen para poner en antecedentes: Hace relativamente poco tiempo el portal de seguridad SeguridadWireless publicó que habían conseguido descubrir el algoritmo por el cual se generaban las claves por defecto de los routers Comtrend (concretamente el modelo CT-5365) que distribuyen masivamente a sus clientes Telefónica y Jazztel.
La publicación se hizo de una forma un tanto oscura, mediante una web que permitía averiguar la clave de la red Wifi introduciendo los datos de cualquiera de los routers mencionados anteriormente, (identificados por WLAN_XXXX en el caso de Telefónica y JAZZTEL_XXXX en el caso de Jazztel). Sin estar aun demasiado claros los motivos, a las pocas horas de la presentación, la web fue cerrada aduciendo motivos de 'fuerza mayor'.
El problema es que, una vez que prendes según que mechas, luego es difícil ponerles freno y evitar que exploten. Un usuario presumiblemente de lampiweb destapó la caja de pandora publicando otra web con la misma funcionalidad que el anterior, pero con una salvedad: publicó el algoritmo y varias pruebas de concepto en diferentes lenguajes de programación.
Personalmente creo que revelar al mundo que existe una vulnerabilidad lo suficientemente grave como para poder comprometer su privacidad o integridad y tratar de hacerlo 'de tapadillo', no es el camino correcto.
Tenemos un ejemplo bastante reciente: Firesheep, todos sabíamos que un buen número de paginas web, por comodidad, ahorro de costes o dejadez, dejaban en una situación muy precaria la seguridad de sus usuarios, pero hizo falta la aparición de Firesheep para que la situación diese un giro. Muchos sitios se hicieron eco y a raíz de ello, Hotmail y posteriormente Facebook, dieron el paso correcto de añadir SSL a sus comunicaciones.
En esta línea Luis Delgado (colaborador habitual de este blog) ha programado WIFI Auditor, herramienta para Windows que simplifica el proceso de explotación de la vulnerabilidad y ejemplifica bastante bien el problema.
El funcionamiento de la herramienta es extremadamente sencillo:
Cuando abres la aplicación te muestra las redes disponibles. Al hacer click sobre el botón, 'Auditar' la aplicación comprueba qué redes son vulnerables y te las muestra junto con su clave por defecto. Finalmente, basta con seleccionar una y hacer clic en el botón 'conectar' para que automáticamente Windows se conecte a la red, sin necesidad de que el usuario haga nada.
La aplicación utiliza netsh para todo el proceso. Cuando el usuario selecciona una red y se conecta, la aplicación genera un perfil con todos los datos de la red y lo importa bajo el nombre 'WIFI Auditor' y posteriormente se conecta con él.
Actualmente la aplicación se encuentra en su versión 0.1c., por lo que cualquier problema/sugerencia sería bueno que la comentaseis. Para futuras versiones, la idea sería añadirle nuevos algoritmos de redes vulnerables con los que la clave se obtenga de forma "inmediata".
La aplicación la podéis encontrar aquí.
Para ejecutarla necesitáis tener instalado Java.
Además, por comodidad, se ha creado un instalador. Aun así, la aplicación es 'portable', por lo que basta con bajarse WIFIAuditor.jar y ejecutarlo.
El código fuente de la aplicación lo podéis encontrar aquí.
Podéis ver una demo en el siguiente vídeo:
[*] Referencias
UPDATE: Wifi Auditor solo está soportado para Windows Vista/7, MacOS (10.5 y sup) y Linux
71 comments :
Muy buen post, bastante útil no tardare en utilizarlo!!
Gracias al autor.
No me detecta ninguna red. ¿Puede ser debido a esto?
C:\Documents and Settings\Administrador>netsh wlan show network mode=BSSID
No se encuentra el comando: wlan show network mode=BSSID
Mi sistema es un Windows XP
El programa no es muy portable (al menos para Gnu/Linux o MacOSX) si se utilizan binarios o llamadas a binarios de windows. Por ejemplo al cmd.exe:
$ java -jar WIFIAuditor.jar
Exception in thread "main" java.io.IOException: Cannot run program "cmd.exe": java.io.IOException: error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:475)
at java.lang.Runtime.exec(Runtime.java:610)
at java.lang.Runtime.exec(Runtime.java:448)
at java.lang.Runtime.exec(Runtime.java:345)
at Main.main(Main.java:17)
Caused by: java.io.IOException: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.(UNIXProcess.java:164)
at java.lang.ProcessImpl.start(ProcessImpl.java:81)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:468)
... 4 more
De todas formas, apoyo y felicito la decisión de publicar el código fuente, ya que alguien con tiempo o interesado puede fácilmente modificarlo y enviar un parche al autor, o incluso hacer forks (en python seria sencillo).
Saludos
A través de meneame he encontrado la versión shell:
http://pof.eslack.org/2011/02/04/algoritmo-para-generar-claves-wpa-de-las-redes-wlan_xxxx-y-jazztel_xxxx/
He tenido que poner el en código el $(tempfile) a mano, pero por lo demás te dice las claves de las wifis posiblemente vulnerables cercanas. Le faltaría añadir las WLAN_XX, comprobar si efectivamente son vulnerables y que te puedas conectar. Si me animo le doy un empujón, y si alguien quiere mejorarlo, pues que lo haga y avise.
Como siempre, muy buena herramienta!!
muchas gracias!
No tardaras en usarlo ni tu ni muchos.
Me gustaría saber que pensaríais o haríais si alguien colgara un cartel por vuestro barrio de como abrir la puerta de vuestra casa con un simple alambre, sin antes avisaros para cambiar la cerradura, quizás os pensaríais lo que estáis haciendo.
Algunas cosas no se justifican con el tan aclamado derecho a la información.
No todo vale, se esta exponiendo a los usuarios.
El .jar no funciona correctamente:
r.jar
Exception in thread "main" java.io.FileNotFoundException: net (El sistema no pue
de encontrar el archivo especificado)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.(Unknown Source)
at java.io.FileReader.(Unknown Source)
at Main.main(Main.java:21)
@mcklaw
Es porque el programa hace uso de netsh y en windows xp no está actualizado y por tanto no permite administrar redes inalámbricas...
Voy a añadir la opción de introducir manualmente el ESSID BSSID y que te genere la clave, al menos de forma temporal hasta que lo haga funcionar en WXP...
@shakaran
con portable me refería a que no necesita instalación, pero como decía, solo es posible utilizarlo en Windows (y al parecer solo Vista/7 por problemas con netsh), el problema ya no es cmd.exe sino posteriormente netsh.exe (y como bien dices, la ejecucion de comandos es facilmente portablea linux/mac) Si te animas tienes el SRC ;)
@Ultimo_Anonimo
El error lo causa la aplicacion al intentar abrir el fichero net (que contiene el volcado de la información de las redes disponibles). Estás con Windows XP, ¿no?. Porque con Windows VIsta/7 funciona sin problemas
Teneis la nueva versión (0.2) subida!
Ahora te da la opción de obtener el passphrase por defecto de forma manual (menu 'Manual'>'Redes WLAN_XXXX')... Asi que si tenéis WXP al menos podéis obtenerlo así.
@Anónimo de 7 de febrero de 2011 10:50
Lo que no deberían muchas empresas es tener subcontratados determinados departamentos.
Esto ha sido de todo menos Reverse.
Perdon por mi ignoracia pero como lo hago funcionar en mi windows xp. Que instalo? ya que no veo ningun archivo para ejecutar, solo el que me lo instala en el movil. Muchas gracias.
La pag. no responde. Hay algun mirror o donde pueda encontrar el programa?
@Anónimo: A mi si me funcionan todos los enlaces de descarga :=? Cual es el que exactamente no te funciona a ti ?
El del instalador.
Te confirmo que yo consigo bajarlo sin problemas, tal vez tengas alguna extensión que esté bloqueando el .exe ??
Ya verifique que no se esten bloqueando los exes, tampoco puedo bajar el .jar. Es mas no me responde ni el link de ldelgado.es
Puede estar bloqueando por zonas?
Aca lo he tenido bloqueado pero lo estoy consiguiendo de otra pc. Gracias =
Cada vez que intento utilizar el programa me aparece el mensaje "No se han podido detectar redes inalámbricas." He probado en distintos lugares obteniendo el mismo resultado. La versión 0.2 esta OK? Alguien obtuvo resultados?
Ya lo suponía, pero la herramiento lo ha confirmado! Mi router es vulnerable. A canviar el pass toca.
GRACIAS
@Anonimo (penultimo comentario):
Como ya he dicho, actualmente solo funciona en Windows Vista/7 por los problemas de la desactualización de netsh. Si utilizas WXP siempre te va a salir ese mensaje y solo puedes obtener la contraseña de forma manual (vamos, como en los demás scripts, copiando la essid y el bssid).
La v0.2 lo que ha hecho es añadir la opción manual y evitar otros errores...
A lo largo de la semana publicaré la versión 0.3 que será compatible con Linux y quedarán pendientes MAC y WXP (por si alguno quiere ayudar ;D)
excelente post y excelente herramienta
Me encantan este tipo de cosas, y encima con el detallazo de dar el codigo fuente, que grande :)
Deberíais abrir un miniforo para los momentos en los que publicáis las herramientas!!
Un saludo.
Nueva versión! Añadido soporte a MacOS (10.5 y sup) y Linux! http://bit.ly/h6JwTa
Hola, muchas gracias por el gran trabajo que haces, he bajado la ultima version para mac, pero no se que tengo que hacer ejecuto el programa, con el airpport activado, pero no me encuentra ninguna red el wifi auditor, me falta algun paso? saludos
Lo he probado esta mañana en un
MacOS 10.6 y no me ha dado problemas (supongo que estaras usando Leopard o S.Leopard ¿verdad?).
Prueba a ejecutar manualmente el comando:
/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -s >> net
¿Te crea un archivo con el volcado de las redes? Si te lo crea y sigue fallando habrá que seguir investigando (ejecutar con permisos de administrador aunque no debería hacer falta, etc)
Para la ejecución de los comandos en Mac, se utiliza de intermediario un script (si no no era posible volcar la salida de un comando a un archivo) por lo que podrías ver si te lo crea.
Aun asi prueba lo que te he dicho y sino te compilo una versión con trazas por todos lados para que detectemos el problema ;)
Hola, muchas gracias por responder, llevo poco tiempo en mac y no tengo mucha idea, he hecho lo que me has puesto, hoy he arrancado el programa y me ha detectado redes disponibles, pero a la hora de dar al boton Auditar Redes, me dice que no hay ninguna red vulnerable disponible, sabiendo que la mia de mi router y el de mi hermano que vive un piso mas arriba son compatibes con las mac 64:68......, manual funciona perfecto, pero automatico no consigo que funcione, muchas gracias, saludos
Perdona soy el de antes que se me olvidaba, si estoy usando snow leopard ultima version, saludos
Bueno, eso significa que el problema no está en la ejecución de comandos.
Cuando se le da a 'Auditar redes', la aplicación comprueba, para cada una de las redes detectadas, que su essid sea WLAN_XXXX o JAZZTEL_XXXX y que además la mac del router pertenezca a uno de los rangos de Comtrend (64:68:0C entre otros). Si te salta ese mensaje, es porque ninguna de las redes ha pasado la validación (si quieres haz las pruebas activando la opción 'Ver todas' del menu 'Redes').
Segun comentas, te funciona de forma manual introduciendo tu el ESSID y BSSID, ¿correcto? Entonces debería funcionar de forma automática porque ambos utilizan la misma función (es mas, al hacerlo manualmente lo que hace es agregar esa info al array de redes disponibles y las audita). Cuando lo haces manualmente, ¿tras darle a conectar se te conecta sin problemas? (si no se conectase estaríamos otra vez con problemas de ejecucion de comandos, en este caso el networksetup)
¿Estas seguro de que el ESSID y BSSID pasan la validacion que te he comentado antes?
Hola, en modo manual funciona bien y me añade la red en la pantalla principal, la red con la que lo hago en manual es la mia que es de JAZZTEL_XXXX y la mac empieza por 64:68:0C, al intentar conectarme con el Wifi Auditor a la red despues de sacar manualmente la contraseña, que la saca perfectamente me intento conectar pero tampoco se conecta me crea un archivo script.sh que pone networksetup -setairportnetwork airport JAZZTEL_XXXX null supongo que donde pone null tendria que poner la contraseña, pone conectando a JAZZTEL_XXXX pero nada, sin embargo me conecto directamente desde el menu del airport elijo la red me pide la contraseña la pongo y sin problemas, y en la manera automatica me sale la red pero como he puesto antes me pone no hay ninguna red vulnerable, saludos
Enviame un correo a wifiauditor@ldelgado.es y vemos que va fallando. Cuando lo tengamos solucionado lo posteamos aquí.
hola...el algoritmo esta casi bien..y digo porque a mi al menos me saca un CERO de menos al principio de a clave y me sobra al final un 2. Imagino que esta casi bien..solo para su conocimiento. es una Wlan_xxxx
El algoritmo utilizado es el mismo que se publicó, por lo que no es cosa de la aplicación.
Si alguien más reporta tu mismo fallo podríamos sacar dos claves, la actual y otra con un 0 delante (y por tanto sin el último dígito).
hola buenas tardes luis y compañia, tengo un imac 10.6 6 y claro la aplicación que has creado tiene extension . exe propia de windows , no me funciona, me podrias explicar un poco los pasos a seguir, muchisimas gracias. David
Buenas, he probado en windows vista 32 bits y me dice que no hay ninguna red disponible.
Alguna solucion?
Gracias
Para todos los que os de problemas en Vista/7, simplemente tenéis que ejecutar la aplicación con permisos de administración (en la próxima actualización se avisará en el mensaje de alerta).
Con respecto a tu caso, se ha publicado tanto la versión con instalador (setup.exe) como la versión portable (WIFIAuditor.jar).
Tienes todos los archivos en:
http://www.ldelgado.es/?wifiauditor
hola buenas , una pregunta , con windows 7 home basic funciona ? porque lo hemos probado y nos sale mensaje de error
gracias
Nueva versión subida (0.31)!
- Arreglado un par de fallos (comprobación de actualizaciones, progress bar)
-Añadido al mensaje de error de las redes no disponibles el que se ejecute con privilegios de administrador (por si a alguien no se le ocurre al ver que falla)
Hola quería darte las gracias por esta herramienta interesante.
Pero.... ¿Cómo se hace en xp?¿me lo podrias explicar si no es mucha molestia?
Pues a mi con permisos de administrador me da el mensaje de que no puede encontrar redes nada mas ejecutarlo, tanto en win7, como en otro ordenador con vista.
Porque puede ser?
y para android???
La aplicación está soportada para Windows Vista/7, MacOS (10.5 y sup) y Linux. Para cualquier otro sistema operativo, solo funcionará el modo manual (como cualquier otro script).
Si os da problemas en alguno de los sistemas soportados, ejecutar la aplicacion con privilegios de administrador (en Windows 'Modo administrador') o ejecutarla desde un directorio como p.e el escritorio.
La aplicación no está disponible para Android, tenéis alternativas como Wifi Reminder o SWifi.
Lo he instalado en el escritorio y funciona sin problemas, pero antes no habia manera. Gracias Luis.
Hola.
No sé qué me ocurre. Me descargo el programa, me decargo la máquina virtual de Java para mi ordenador (WIN 7) y cuando instalo con el setup el archivo con extensión .jar no hace nada. Me pregunta Windows con qué programa lo quiero abrir. Si ya me he instalado la máquina de Java, debería reconocerlo y ejecutarlo de inmediato, ¿no?. Si me pudiérais echar una mano os quedría muy agradecido.
Saludos
@Proteo:
Comprueba que la aplicación se abre ejecutando desde la consola (en el mismo directorio) "java -jar WIFIAuditor.jar".
Si la aplicación se abre sin problemas no tienes más que crear un acceso directo que ejecute dicha orden, poniendo el path absoluto de la aplicación.
Estoy intentando utilizar la aplicación, la instalo sin problemas pero al iniciarla me pone que no hay redes que ejecute como administrador. Lo que pasa es que no encuentro la manera de hacerlo ya que con el botón derecho del ratón no da opción de hacerlo y tampoco me deja colocando un acceso directo en el escritorio.
Cuál puede ser la solución??
Otra cosa el modo manual sólo vale para redes que se llamen wlan_abcd o también para wlan_ab.
Gracias y espero respuesta.
@Roberto:
Si no puedes ejecutarlo en modo administrador simplemente copia el archivo WIFIAuditor.jar a cualquier carpeta en la que no vayas a tener problemas de privilegios (p.e el escritorio) y ejecutala desde ahí.
Hola, he creado un modulo para el wifiway 2, el programa carga bien, el problema es que me dice que no hay ninguna red disponible, y eso que estoy a 2 metros de la mia.
En manual muy bien, no tengo ninguna a mi alcance, pero tengo datos de una de mi hermano y si que da la clave.
Que puedo hacer para que escanee redes.
@Clon_Del_Eden
Cuando la aplicación lanza el msgbox de que no hay redes disponibles es porque no ha podido crear el archivo con el volcado de redes. ¿Estas ejecutando la aplicación como root?
El modo manual sólo es válido para wifis wlan_abcd o también es válido para wifis wla_ab????
Las wifis jazztell_abcd también se puede obtener la clave???
Muchas gracias por resolver mis dudas.
@Roberto:
Solo sirve para las redes WLAN_XXXX y JAZZTEL_XXXX (vamos, que las de jazztel tambien)
Luis dijo...
¿Estas ejecutando la aplicación como root?
Como puedo ejecutar una aplicacion desde slax como root?
Simplemente he hecho el modulo y funciona, pero no escanea redes como te dije, dime algo y lo pruevo.
Un saludo.
buenas, enhorabuena al autor. No sé si habrá implementado ya los routers zyxel con MAC que empieza por 00:1f:a4:xx:xx:xx
el algoritmo es público: http://lampiweb.com/foro/index.php/topic,5595.msg37153.html#msg37153
MD5 (MAC acabada en ESSID en minusculas)
por ej: WLAN_FFFE
MAC: 00:1f:a4:ff:ff:ff
sería MD5 (001fa4fffffe)
Acabo de publicar una nueva versión (0.32) compatible con las redes WLAN_XXXX con routers Zyxel.
http://www.ldelgado.es/?wifiauditor
Gracias al ultimo anonimo y a @jlalcazar por avisarme.
Hola luis ,e probado con las jasteel me da la clave pero cuando se la meto me da un mensaje de error diciendo que esa calve nos es valida ya que es minima de de 128bit y tal tal,...
Hola tengo windows 7 y cuando abro Wifi Auditor me dice: "no se pueden encontrar las redesinalambricas disponibles", tengo java actualizado y si me localiza clables en manual metiendo el nombre y la Mac alguien me podria decir porque falla o como solucionarlo.
Soy novato y no entiendo mucho gracias
Hola tengo windows 7 y cuando abro Wifi Auditor me dice: "no se pueden encontrar las redesinalambricas disponibles", tengo java actualizado y si me localiza clables en manual metiendo el nombre y la Mac alguien me podria decir porque falla o como solucionarlo.
Soy novato y no entiendo mucho gracias
Hola, muchas gracias por el gran trabajo que haces, he bajado la ultima version para mac, pero no se que tengo que hacer ejecuto el programa, con el airpport activado, pero no me encuentra ninguna red el wifi auditor, me falta algun paso? saludos
Me encantan este tipo de cosas, y encima con el detallazo de dar el codigo fuente, que grande :)
Ya lo suponía, pero la herramiento lo ha confirmado! Mi router es vulnerable. A canviar el pass toca.
GRACIAS
Te confirmo que yo consigo bajarlo sin problemas, tal vez tengas alguna extensión que esté bloqueando el .exe ??
@Anónimo: A mi si me funcionan todos los enlaces de descarga :=? Cual es el que exactamente no te funciona a ti ?
Teneis la nueva versión (0.2) subida!
Ahora te da la opción de obtener el passphrase por defecto de forma manual (menu 'Manual'>'Redes WLAN_XXXX')... Asi que si tenéis WXP al menos podéis obtenerlo así.
El programa no es muy portable (al menos para Gnu/Linux o MacOSX) si se utilizan binarios o llamadas a binarios de windows. Por ejemplo al cmd.exe:
$ java -jar WIFIAuditor.jar
Exception in thread "main" java.io.IOException: Cannot run program "cmd.exe": java.io.IOException: error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:475)
at java.lang.Runtime.exec(Runtime.java:610)
at java.lang.Runtime.exec(Runtime.java:448)
at java.lang.Runtime.exec(Runtime.java:345)
at Main.main(Main.java:17)
Caused by: java.io.IOException: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.(UNIXProcess.java:164)
at java.lang.ProcessImpl.start(ProcessImpl.java:81)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:468)
... 4 more
De todas formas, apoyo y felicito la decisión de publicar el código fuente, ya que alguien con tiempo o interesado puede fácilmente modificarlo y enviar un parche al autor, o incluso hacer forks (en python seria sencillo).
Saludos
No me detecta ninguna red. ¿Puede ser debido a esto?
C:\Documents and Settings\Administrador>netsh wlan show network mode=BSSID
No se encuentra el comando: wlan show network mode=BSSID
Mi sistema es un Windows XP
hola yo tengo el windwos 7, y cuando intento instalarlo teniendo puesto ya el java no se me instala ni me pone el archico en el escritorio, explicarme si hago algo mal porfavor!!!!
El instalador crea la carpeta WIFI Auditor en el directorio "Program Files" y en el menu de inicio pero no crea ningún acceso en el escritorio (lo he configurado así). En vez de instalarlo (si ves que te complicas o es un uso puntual) puedes descargarte simplemente el archivo WIFIAuditor.jar y ejecutarlo con doble click.
Yo tengo el mismo problema en w7. Le doy doble clic y alucina, me abre la interfaz de nokia. Si lo abro con winrar me salen tres carpetas pero nunca la cónsola que veo en el video...
Me auto respondo. He instalado el programita jarfix y ya me abre bien con java, pero no encuentra redes porque dice que tengo que abrirlo con permisos de administrador. Sin embargo, mi ordenador no me da esa opción aunque lo marque con el raton..?
Una forma de ejecutarlo con permirsos de administrador es el crear un acceso directo con la ruta "java -jar RUTA\WIFIAuditor.jar" y en las opciones avanzadas activar "Ejecutar como administrador"
Si no quieres complicarte la vida copia el archivo JAR al escritorio (o cualquier carpeta de tu usuario) y ejecutalo desde ahí, así no te dará problemas.
Gracias. Ahora sí.
Publicar un comentario