viernes, 22 de julio de 2011

Generador Wep

Saludos Mundo Libre.



Huawei HG520b, HG520c y HG530

Ya en artículos Anteriores he platicado también de este proceso pero en esa ocasión fue la web donde podemos desencriptar las clavez wep/wap que son por defecto de fabricacion de cualquier módem y tambien cuenta con una herramienta para descargar , pero nunca esta de mas la investigación de nuevas herramientas disponibles en la red y por eso se agradece a los programadores de esta herramienta y alentarlos a la creación de mas manuales y herramientas .

Es posible generar la WEP/WPA default de los módems Huawei modelos HG520 y HG530. El propósito de este post es explicar la forma en la que desarrollamos un generador para estos dispositivos.


Los módems Huawei modelos HG520b y HG520c cuentan con un software para generar su contraseña WEP y SSID predeterminados a partir de su dirección MAC. El nombre de este software es mac2wepkey y se encuentra disponible en su interfaz de TELNET.

Es posible cambiar la dirección MAC de nuestro módem para generar la WEP prederterminada de otro módem del cual conozcamos su dirección MAC.

Obtener la WEP predeterminada de un HG520 a partir de su MAC usando TELNET

Esto fue publicado en los foros de la Comunidad Underground de México por adiaz en Agosto del 2010. Los últimos meses hemos estado investigando para obtener el algoritmo para desarrollar nuestro generador y por fin lo hemos logrado!

El primer paso fue generar algunas listas de poca longitud, de 100 a 200 lineas, y buscar en ellas algún patrón. Lo primero que notamos fue que la WEP tomaba valores del 30 al 39 y del 61 al 66. Estos valores corresponden a los números 1 al 9 y a las letras a-f en codificación ASCII.

WEP y SSID predeterminados en módems Huawei

Al analizar las listas notamos que tenían partes que se repetían en pares, así que formando una lista fue posible predecir el SSID y WEP consecutivo. Al observar esto concluimos que no utilizaba ningún algoritmo de cifrado complejo. Después de analizar los bits y la manera en que cambian, en pares, supimos que podía ser XOR.

Primero se generaron listas generando los valores con un módem, estas listas se generaron por cada byte de la MAC, ejemplo:


Cuando introducimos la MAC 00:00:00:00:00:00 obtenemos el SSID Base (5aba) y WEP Base (6434376537).

Para reducir la cantidad de listas generadas aplicaremos la funcion XOR. La función XOR es una operación de doble sentido definida de la siguiente forma: a^b=d y b^d=a. Como existen patrones repetidos en las listas, al aplicarles XOR con la Base fue posible obtener más listas repetidas y de esa forma simplificar a una cantidad menor de listas. Como se les aplico la función XOR para generar listas repetidas es necesario volver a aplicar la función XOR Base para obtener el valor final.

Considerando que se generan 9 bytes (cuatro del SSID y cinco de la WEP) por cada posición de la MAC tenemos un total de 108 (12x9) listas. Se pueden consultar las 108 listas a las cuales ya se les aplico XOR Base en http://hochoa.pastebin.com/Vjf8wt1i

La siguiente es la lista de la primera posición de la MAC (Ej. 52:00:00:00:00:00) como su valor es 5 utilizaremos el valor de la posición 6 de cada lista :

SSID-A [0, 14, 10, 4, 8, 6, 2, 12, 0, 14, 10, 4, 8, 6, 2, 12]
SSID-B [0, 8, 0, 8, 3, 11, 3, 11, 6, 14, 6, 14, 5, 13, 5, 13]
SSID-C [0, 0, 3, 3, 2, 2, 1, 1, 4, 4, 7, 7, 6, 6, 5, 5]
SSID-D [0, 11, 12, 7, 15, 4, 3, 8, 14, 5, 2, 9, 1, 10, 13, 6]
WEP-A [0, 13, 10, 7, 5, 8, 15, 2, 10, 7, 0, 13, 15, 2, 5, 8]
WEP-B [0, 5, 1, 4, 6, 3, 7, 2, 12, 9, 13, 8, 10, 15, 11, 14]
WEP-C [0, 1, 3, 2, 7, 6, 4, 5, 15, 14, 12, 13, 8, 9, 11, 10]
WEP-D [0, 14, 4, 10, 11, 5, 15, 1, 6, 8, 2, 12, 13, 3, 9, 7]
WEP-E [0, 9, 0, 9, 5, 12, 5, 12, 10, 3, 10, 3, 15, 6, 15, 6]

La siguiente es la lista para la segunda posición de la MAC (Ej. 52:00:00:00:00:00) como el valor de la segunda posición de la MAC es 2 utilizaremos el valor correspondiente a la posición 3 de cada lista:

SSID-A [0, 5, 11, 14, 7, 2, 12, 9, 15, 10, 4, 1, 8, 13, 3, 6]
SSID-B [0, 5, 11, 14, 2, 7, 9, 12, 12, 9, 7, 2, 14, 11, 5, 0]
SSID-C [0, 0, 0, 0, 4, 4, 4, 4, 0, 0, 0, 0, 4, 4, 4, 4]
SSID-D [0, 8, 1, 9, 3, 11, 2, 10, 5, 13, 4, 12, 6, 14, 7, 15]
WEP-A [0, 14, 13, 3, 9, 7, 4, 10, 6, 8, 11, 5, 15, 1, 2, 12]
WEP-B [0, 13, 10, 7, 4, 9, 14, 3, 10, 7, 0, 13, 14, 3, 4, 9]
WEP-C [0, 4, 8, 12, 0, 4, 8, 12, 0, 4, 8, 12, 0, 4, 8, 12]
WEP-D [0, 1, 3, 2, 6, 7, 5, 4, 15, 14, 12, 13, 9, 8, 10, 11]
WEP-E[0, 1, 3, 2, 4, 5, 7, 6, 12, 13, 15, 14, 8, 9, 11, 10]

Como las demás posiciones de la MAC tienen valor 0, el valor correspondiente a la primer posición en todas las listas es 0 así que la ecuación final para obtener el primer byte del SSID es:

6^11^0^0^0^0^0^0^0^0^0^0^(5 base)= 8                [SSID=8A9F]


De las 108 listas encontramos que existen 16 listas que se repiten, que ahora marcamos con la letra A (A1, A2, A3...) y 33 listas que no se repiten que marcamos con la letra N (N1, N2...) para un total de 49 listas únicas.

A continuación realizaremos un ejemplo real utilizando la MAC(x): 81:23:45:AB:CD:EF y las listas simplificadas.

A cada byte corresponde una lista diferente.

La lista SsidA contiene las listas necesarias para obtener el primer caracter del SSID. El primer byte de la MAC corresponde a la lista N1.


El valor del primer byte es 8, si lo relacionamos en la lista N1, su valor corresponde a 0.

De la misma manera obtenemos cada valor para los 12 bytes de la MAC con su lista correspondiente.


Ya que tenemos los 12 valores se les aplica XOR agregando el valor del primer byte del SSID Base (5aba).


Esto da como resultado 1, que viene siendo el primer byte del SSID(x). Se repite este proceso para las 4 listas del SSID y obtenemos:



Para obtener los valores de la WEP el proceso es el mismo. Primero obtenemos, para el primer byte de la MAC, todos los valores correspondientes.


Al tener los 12 valores se les aplica XOR agregando el valor del primer byte de la WEP Base (6434376537). El primer byte corresponde a 64 en ASCII que viene siendo d en HEXADECIMAL y al convertirlo a DECIMAL su valor es 13.


Obtenemos como resultado 4. Al convertirlo a ASCII nos da 34 que corresponde al primer byte de la clave WEP.

Repetimos este proceso para las 5 listas de los bytes de la WEP y obtenemos como resultado la WEP default:



Hemos desarrollado el generador en varios lenguajes, en esta ocasión compartiremos la versión de python: mac2wepkey.py







                                                                              





Segir Leyendo desde su fuente:


Fuente:


Investigacion:

Investigación realizada por Humberto Ochoa

Descarga : 

http://www.websec.mx/blog/ver/mac2wepkey_huawei


Exelente Aplicacion

Saludos Mundo Libre.

No hay comentarios:

Publicar un comentario