WPS-Qi

Autor: peluzza

WPS-Qi

WPS Python Suite

Si python tiene un zen, WPS tiene un chi (Qi), y adoro los nombres recursivos, así que si no se me ocurre algo mejor, este será su nombre .

WPS-Qi Es una herramienta de auditoría wireless que actualmente solo realiza ataques por WPS, aunque en un futuro inmediato tambien auditará WPA/WPA2.

A estas alturas te estarás preguntando: Si hay docenas de scripts de ataque con estas características, ¿por que utilizar WPS-Qi?
Seguramente no aporta nada nuevo desde la perspectiva del usuario “típico” de este tipo de aplicaciones. Si tú te encuentras en este tipo de usuarios, te recomiendo encarecidamente que le eches un ojo a otros trabajos más que consolidados y con más funcionalidades y soporte, como son GOYScript de GOYfilms y BullyWPSDialog de Geminis_demon.

Pero desde la perspectiva del desarrollador ofrece nuevas vías y medios para futuros proyectos:

Sus mejores cartas son:

  • Desarrollado INTEGRAMENTE en python, totalmente modular y con codigo totalmente reutilizable.
  • Soporte COMPLETO* para openwrt (linux en tu router!).
  • Bully como motor de ataque, con soporte completo, ataque configurable y feedback en tiempo real.
  • GPL v.3.
  • TODO sucede en una sola ventana de terminal. Nada de abrumadores datos en pantalla.
  • Todos los programas externos son subprocesos de wps-qi, por lo que funciona en modo sandbox.
  • No requiere sesión gráfica, funcional desde línea de comando.
  • tiene colorines!!!! Grin
  • CASI** Multiplataforma.  Azn

* Gracias al trabajo de sephir0t00
** Aunque el código es multiplataforma, bully solo funciona en linux. En el futuro se dará soporte a reaver, que aunque ya no es mantenido por su creador bajo GPL, sí que funciona en otros sabores UNIX.

Ataque por WPS:
En el estadio actual, ataque por fuerza bruta con bully. Estoy estudiando todos los trucos para intentar adaptar al máximo el ataque al objetivo ANALIZANDO SU RESPUESTA a través del stdout de Bully. Por ejemplo, los primeros ataques tendrán un tiempo de espera corto que se adaptará en función de lo que tarde en estar de nuevo “receptivo” el router, e iré incluyendo cuantos trucos, pines por defecto, routers sin checksum, etc que vaya encontrando o me vayáis chivando.

ATENCION!: Ejecutar este programa mata todos lo procesos que puedan causar conflictos con la ejecución del script, es decir, que te desconectará de la red. Próximamente se utilizará un método menos agresivo, distinguiendo qué proceso pueden o no matarse.

ATENCIÓN!: Este es una herramienta de auditoría wireless, no una herramienta para gorronear a tus vecinos. Si quieres internet, harás muy bien en pagártela. No me responsabilizo del uso que des a esta herramienta ni del código que resulte de su modificación.

INSTALACIÓN:

Recomiendo obtener la última versión desde mi repositorio:

Código:
git clone https://peluzza@bitbucket.org/peluzza/wpsqi.git

Por ahora el script tiene las siguientes dependencias:
python – de serie en casi todas las distros (menos openwrt… ¬ ¬ )
easy_install
aircrack-ng
wash (por ahora no tengo substituto propio, pero todo se andará)
bully

Si utilizais wifislax ya teneis todo lo que hace falta. Solo se necesita instalar un módulo externo de python, es tan sencillo como ejecutar

Código:
“easy_instal netifaces”

y ya está, solo queda ejecutar el archivo wps-qi.py con privilegios de root.
para ejecutarlo podeis hacerlo ejecutable

Código:
“chmod 775 wps-qi.py”
./wps-qi.py

o bien ejecutarlo a través del interprete de python

Código:
sudo python wps-qi.py

Próximamente, instrucciones para ejecutarlo en openwrt.

BUGS CONOCIDOS:

Hasta ahora el código está muy limpio hasta que llega el momento de ejecutar bully. Me ha dado muchos dolores de cabeza un pequeño problema con la captura del stdout, por lo que llega un poco tarde y todavía no esta todo lo depurado que quisiera, en futuras actualizaciónes la información en pantalla será tan limpia como el resto de programa. Es mi tarea para estos días.

Es posible modificar el script manualmente para modificar el ataque de bully, por ahora solo para los que saben lo que hacen. Más informacion en el README.md

Espero impacientemente vuestro feedback a través de este hilo.

CÓDIGO FUENTE:
https://bitbucket.org/peluzza/wpsqi/src

AGRADECIMIENTOS: A todos los que desarrolláis herramientas de auditoría, pero en especial:

Brian Purcell: Por el desarrollo de bully y por ser un tipo tan majo (thanks pal Wink ).
GOYfilms: Por su magnífico GOYscript, inspiración y motivo por el que existe wps-qi.
Geminis_demon: Por ser un gran betatester y maestro, y por su genial bullyWPSdialog.
sephir0t00: Por su gran aportación portando el módulo de python netifaces a openwrt.
jar229: Por su buen saber en openwrt y por los buenos firmwares que salen de su horno.

En fin, en los próximos días iré publicando pantallazos, y calculo que este fin de semana libere la primera alpha de lo que hoy día es funcional.


Stay Tuned…