
Generador de palabras de alto rendimiento con un conjunto de caracteres configurable por posición.
Generador de palabras de alto rendimiento con un conjunto de caracteres configurable por posición
Intenta todas las combinaciones de un espacio de claves dado, igual que en el ataque de fuerza bruta, pero más específico.
La razón para hacer esto y no ceñirse a la fuerza bruta tradicional es que queremos reducir el espacio de claves candidatas a uno más eficiente.
Aquí hay un ejemplo. Queremos descifrar la contraseña: Julia1984
En el ataque de fuerza bruta tradicional necesitamos un conjunto de caracteres que contenga todas las letras mayúsculas, todas las minúsculas y todos los dígitos (también conocido como "mixalpha-numeric"). La longitud de la contraseña es 9, por lo que tenemos que iterar a través de 62^9 (13.537.086.546.263.552) combinaciones. Supongamos que desciframos a una tasa de 100M/s, esto requiere más de 4 años para completarse.
En el ataque por máscara conocemos a los humanos y cómo diseñan contraseñas. La contraseña anterior coincide con un patrón simple pero común. Un nombre y un año agregados al final. También podemos configurar el ataque para probar solo letras mayúsculas en la primera posición. Es muy poco común ver una letra mayúscula solo en la segunda o tercera posición. En resumen, con el ataque por máscara podemos reducir el espacio de claves a 522626262610101010 (237.627.520.000) combinaciones. Con la misma tasa de descifrado de 100M/s, esto solo requiere 40 minutos para completarse.
No hay ninguna. Algunos podrían argumentar que el ejemplo anterior es muy específico, pero eso no importa. Incluso en el ataque por máscara podemos configurar nuestra máscara para usar exactamente el mismo espacio de claves que el ataque de fuerza bruta. La cuestión es que esto no puede funcionar al revés.
Por cada posición de los candidatos de contraseña generados necesitamos configurar un marcador de posición. Si una contraseña que queremos descifrar tiene longitud 8, nuestra máscara debe consistir en 8 marcadores de posición.
Hay cuatro parámetros de línea de comandos para configurar cuatro conjuntos de caracteres personalizados.
Estos parámetros de línea de comandos tienen cuatro atajos análogos llamados -1, -2, -3 y -4. Puede especificar los caracteres directamente en la línea de comandos.
Un ataque por máscara es siempre específico para una longitud de contraseña. Por ejemplo, si usamos la máscara ”?l?l?l?l?l?l?l?l” solo podemos descifrar una contraseña de longitud 8. Pero si la contraseña que intentamos descifrar tiene longitud 7, no la encontraremos. Por eso tenemos que repetir el ataque varias veces, cada vez agregando un marcador de posición a la máscara. Esto se automatiza de forma transparente usando la bandera ”--increment”.
Actualmente, es el generador de palabras más rápido del mundo. Aquí hay algunas estadísticas:
Para evitar irregularidades durante las pruebas, toda la salida fue a /dev/null.
Los siguientes comandos crean los siguientes candidatos de contraseña:
comando: ?l?l?l?l?l?l?l?l
espacio de claves: aaaaaaaa - zzzzzzzz
comando: -1 ?l?d ?1?1?1?1?1
espacio de claves: aaaaa - 99999
comando: password?d
espacio de claves: password0 - password9
comando: -1 ?l?u ?1?l?l?l?l?l19?d?d
espacio de claves: aaaaaa1900 - Zzzzzz1999
comando: -1 ?dabcdef -2 ?l?u ?1?1?2?2?2?2?2
espacio de claves: 00aaaaa - ffZZZZZ
comando: -1 efghijklmnop ?1?1?1
espacio de claves: eee - ppp
Simplemente ejecute make
Binarios para Linux, Windows y OSX: https://github.com/jsteube/maskprocessor/releases