A raiz que mi anterior aportación de cierta herramienta me llamaron programador de m entre otras cosas . Ha conseguido que la llama de mi vena altruista se ponga alta y os eche una mano con este tema , porque por lo visto no se ha publicado el source de las herramientas (que conste que no es critica es solo extrañeza)
Asi que bien os voy a echar una manita con esto . Hoy no os voy a explicar como conseguir un algoritmo de un router . Sino como hacer un poco de ingenieria inversa a la picaresca sobre alguna tool.
Horas para lograr un algoritmo útil: 14 horas mas o menos
Habilidades necesarias: Soltura en algún lenguaje de programación rápido , usar la cabeza(no para partir nueces).
consejos: usar eclipse a tope.
Bien la manera simple por donde debemos empezar es a analizar la tool . A partir de aquí podemos hacer dos cosas:
-decompilamos codigo (modo pro no aconsejable para no expertos entre los que me incluyo)
-analizamos la salida
Este algoritmo es a vistas algo no extremadamente complicado , por lo tanto al no tener encriptaciones como md5 sha-1 y etc , podemos intentarlo.
En mi caso primero me fije en que bits variaban el código , y ese es mi pequeño regalo , solo influyen el ultimo par del BSSID y todas las cifras menos la primera del ESSID.
A partir de ahí el metodo fue simple pero constante , monte mi programa con mi entrada y mi salida y me fije en algo curioso , con todo a 0 hay una tabla base por llamarla de tal manera , así que la use para ir modificando los valores.
Entonces he ido cifra por cifra aislándolas del resto viendo que modificaban . Una vez que sacas la primera y ves como influye en la tabla puedes ir a por la siguiente.(sacar el minialgoritmo en el que influye una cifra no tiene porque ser trivial, esta es la parte dura)
Al obtener la siguiente , tienes que ver a su vez como interactua la primera que has sacado y así sucesivamente con cada elemento influyente.
Consejos variados:
-olvídate del papel y lápiz , demasiadas cuentas , prográmarlo te ahorrara muchas horas y analiza las salidas de las operaciones que tu impongas .
-No mires el conjunto , ve solucionando los pequeños problemas que se planteen y poco a poco irá saliendo.
Y para finalizar y demostrar que no me he tirado el moco , aparte de que podéis verlo en la aplicación android que he creado (wlan4xx decrypter) , os mostraré una imagen (solo para incredulos):