
Todos sabemos que descifrar contraseñas es muy importante en el campo de la ciberseguridad. Entonces siempre pensamos que para descifrar contraseñas tenemos que hacer un ataque de diccionario o fuerza bruta. Pero si la contraseña no está en nuestra lista de contraseñas, el ataque de diccionario no funcionará y la fuerza bruta tardará demasiado en descifrar una contraseña (a veces incluso más de una década).
Para resolver este problema del generador de contraseñas de fuerza bruta, existe una herramienta de los creadores de HashCat (una conocida herramienta para descifrar contraseñas). Esta herramienta se llama MaskProcessor. ¿Qué hace MaskProcessor ahora? Es un potente generador de palabras con un juego de caracteres configurable por posición, que prueba todas las combinaciones desde un determinado espacio clave como en un ataque de fuerza bruta, pero más precisamente. Entonces, ¿en qué se diferencia de los ataques de fuerza bruta?
La razón para hacer esto y no apegarnos a la fuerza bruta tradicional es que queremos reducir el espacio de claves para candidatos a contraseñas a uno más eficiente.
He aquí un solo 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 letras minúsculas y todos los dígitos (también conocido como «mixalpha-numérico»). 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. Digamos que nos agrietamos a una velocidad de 100 M / s, esto lleva más de 4 años.
En el ataque de la máscara, sabemos sobre las personas y cómo crean contraseñas. La contraseña anterior sigue un patrón simple pero común. Se adjunta un nombre y un año. También podemos configurar el ataque para que las letras mayúsculas solo se prueben en la primera posición. Es muy inusual que una letra mayúscula aparezca solo en la segunda o tercera posición. En resumen: con Mask Attack podemos reducir el espacio de teclas a 52262626261010010 (237,627,520,000) combinaciones. Con la misma velocidad de fisuración de 100 m / s, esto solo toma 40 minutos.
Podemos ver la diferencia en cómo MaskProcessor puede reducir nuestra sobrecarga. Simplemente adivina el patrón de contraseña y crea una lista muy corta para un trabajo rápido. También hay algunos inconvenientes.
No hay nada allí. Podemos argumentar que el ejemplo anterior es muy específico, pero no importa. Incluso con un ataque de máscara, podemos configurar nuestra máscara para usar exactamente el mismo espacio clave que el ataque de fuerza bruta. La cuestión es que esto no puede funcionar al revés.
Tenemos que configurar un marcador de posición para cada posición de los candidatos a contraseña generados. Si una contraseña que queremos descifrar tiene la longitud 8, nuestra máscara debe constar de 8 marcadores de posición.
- Una máscara es una cadena simple de caracteres que utiliza comodines para configurar el espacio de claves del motor candidato a contraseña.
- Un marcador de posición puede ser una variable de fuente definida por el usuario, una variable de fuente incorporada o una letra estática.
- ¿Una variable se convierte a través de eso? Letras seguidas de uno de los conjuntos de caracteres incorporados (l, u, d, s, a) o uno de los nombres de variables del conjunto de caracteres personalizados (1, 2, 3, 4).
- Una letra estática no se identifica con una letra. ¿Una excepción es cuando queremos la letra estática? incluso quien como ?? debe estar escrito.
Hay algunos juegos de caracteres incorporados en MaskProcessor. Son los siguientes:
- ? l = abcdefghijklmnopqrstuvwxyz
- ? u = ABCDEFGHIJKLMNOPQRSTUVWXYZ
- ? d = 0123456789
- ? a =? l? u? d? s
- ? b = 0x00 – 0xff
No solo esto, como mencionamos anteriormente, podemos establecer un juego de caracteres personalizado en MaskProcessor.
Hay cuatro parámetros de línea de comando para configurar cuatro juegos de caracteres personalizados.
- –custom-charset1 = CS
- –custom-charset2 = CS
- –custom-charset3 = CS
- –custom-charset4 = CS
Estos parámetros de línea de comando tienen cuatro atajos analógicos llamados -1, -2, -3 y -4. Puede especificar los caracteres directamente en la línea de comando.
Un ataque de enmascaramiento siempre es específico de la longitud de una 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 estamos intentando descifrar es la 7, no la encontraremos. Por lo tanto, tenemos que repetir el ataque varias veces, cada vez con un marcador de posición en la máscara. Esto está automatizado de forma transparente por el –Crecimiento Bandera.
- ? l
- ? NS
- ? l? l? l
- ? l? l? l? l
- ? l? l? l? l? l
- ? l? l? l? l? l? l
- ? l? l? l? l? l? l? l
- ? l? l? l? l? l? l? l? l
Podemos instalar una versión mínima de MaskProcessor en nuestro Kali Linux usando el comando sudo apt install maskprocessor. Sin embargo, hay algunos problemas con esta versión del repositorio de Kali Linux. Al igual que lo teníamos instalado, pero también dice ‘Comando no encontrado’ como podemos ver en la captura de pantalla a continuación.
MaskProcessor está instalado, pero «comando no encontrado» |
En este caso lo desinstalaremos con sudo apt eliminar maskprocessor Comando e instale desde cero.
Primero, lo descargaremos de su repositorio de GitHub usando el siguiente comando:
Ahora MaskProcessor está clonado en nuestro sistema como podemos ver en la siguiente captura de pantalla:
Ahora tenemos que navegar hacia eso Procesador de mascarillas / src Directorio con el siguiente comando:
Aquí construimos los archivos de programa con el hacer Mando:
En la siguiente captura de pantalla podemos ver la salida del comando utilizado:
Ahora los estamos posponiendo mp64.bin Archivar a / usr / bin Directorio y asígnele un nombre Procesador de mascarillas que se puede utilizar como herramienta estándar. Podemos hacer esto fácilmente con el siguiente comando:
Nuestra instalación ya está completa. Podemos usar MaskProcessor en nuestro sistema Kali Linux. Podemos usar ahora Procesador de mascarillas Comando para ejecutarlo en nuestro terminal.
Como siempre, puede verificar las opciones de ayuda de MaskProcessor usando el siguiente comando en nuestra ventana de terminal:
En la siguiente captura de pantalla podemos ver lo que podemos hacer con MaskProcessor:
Ahora aprendemos cómo podemos generar una determinada lista de palabras en MaskProcessor. Aquí necesitamos conocer el conjunto de caracteres estándar, como mencionamos en la sección anterior y lo mencionamos nuevamente aquí.
? l = abcdefghijklmnopqrstuvwxyz
? u = ABCDEFGHIJKLMNOPQRSTUVWXYZ
? d = 0123456789
? s =! «# $% & ‘() * +, -. /:;<=>? @[]^ _` ~
? a =? l? u? d? s
? b = 0x00 – 0xff
Todos los personajes excepto los que representan el conjunto (? l,? u,? d, etc.) se adoptan sin cambios en la contraseña. Si queremos crear un diccionario con contraseñas de seis dígitos, tenemos que usar el comando maskprocessor? D? D? D? D? D? D, pero también guardamos el directorio con la bandera -o. Entonces nuestro comando es el siguiente:
Esto crea un directorio de contraseñas con el nombre «Directory.txt“Eso puede descifrar una contraseña de seis dígitos mediante ataques de fuerza bruta.
No solo eso, casi cualquier herramienta de creación de listas de contraseñas puede hacer esto, pero MaskProcessor puede hacer algo mejor. Ahora llegamos a ese punto.
¿Qué pasa si conocemos a alguien que usa una contraseña que comienza con? voro seguido de 4 números y luego 2 letras mayúsculas. En este caso, simplemente podemos crear una lista de contraseñas con MaskProcessor. Necesitamos usar el siguiente comando:
En el comando anterior usamos voro luego cuatro ? D por cuatro dígitos luego dos ? tu para dos letras mayúsculas, y bang, crea nuestra lista de contraseñas muy especial requerida, como podemos ver en la siguiente captura de pantalla:
Estallido !! Aquí está nuestra lista de contraseñas especiales para descifrar la contraseña específica.
Ahora podemos usar MaskProcessor para crear tipos especiales de listas de contraseñas. Podemos usarlo fácilmente Procesador de mascarillas en nuestro Kali Linux Sistema.
Aunque MaskProcessor y Hashcat son generalmente intercambiables para generar contraseñas, debemos tener en cuenta que el -a 3 -Se debe especificar la opción para seleccionar el modo de ataque de fuerza bruta / máscara (ya que Hashcat admite diferentes modos de ataque, no solo máscara). Tenemos que hacer eso tambien –stdout Opción, lo que significa que se muestran los candidatos a contraseña (sin descifrar el hash).
Hashcat (ataque de máscara) no nos permite establecer el número máximo de caracteres repetidos idénticos, el número máximo de apariciones de un personaje, el comienzo o el final en una posición determinada. Sin embargo, este resultado se puede lograr con un ataque basado en reglas.
La ejecución de Hashcat en sistemas Linux puede resultar problemática debido a la necesidad de controladores propietarios.
¿Te encantan nuestros artículos? Asegúrate de eso Síguenos A Gorjeo y GitHub publicamos actualizaciones de artículos allí. A unirse a nosotros KaliLinuxIn Familia ven a nosotros Grupo de telegramas. Estamos tratando de construir una comunidad para Linux y ciberseguridad. Siempre estamos felices de ayudar a todos en el como sección. Como sabemos, nuestra sección de comentarios siempre está abierta a todos. Leemos cada comentario y siempre respondemos.