Descifrar contraseñas de WordPress con Hashcat
Cuando se trata de descifrar contraseñas complejas, hashcat es la herramienta que entra en juego, ya que es la conocida herramienta de descifrado de contraseñas disponible gratuitamente en Internet. Las contraseñas pueden ser de cualquier forma o hashes como SHA, MD5, WHIRLPOOL, etc. Los Hashes no permiten a un usuario descifrar datos con una clave específica, ya que otras técnicas de cifrado le permiten descifrar las contraseñas.
Hashcat utiliza ciertas técnicas como diccionario, ataque híbrido o más bien puede ser la técnica de fuerza bruta también. Este artículo da un ejemplo de uso de hashcat que cómo se puede usar para descifrar contraseñas complejas de WordPress. Hashcat en una herramienta incorporada en Kali Linux que se puede usar para este propósito.
USO
Si un usuario quiere ver lo que hashcat facilita, ejecutando hashcat-help como se muestra a continuación:
Algunas imágenes se dan a continuación como ejemplo:
- - # | Format ===+======== 1 | hash 2 | plain 3 | hash:plain 4 | hex_plain 5 | hash:hex_plain 6 | plain:hex_plain 7 | hash:plain:hex_plain 8 | crackpos 9 | hash:crack_pos 10 | plain:crack_pos 11 | hash:plain:crack_pos 12 | hex_plain:crack_pos 13 | hash:hex_plain:crack_pos 14 | plain:hex_plain:crack_pos 15 | hash:plain:hex_plain:crack_pos- - # | Format ===+======== 1 | Finding-Rule 2 | Original-Word 3 | Original-Word:Finding-Rule 4 | Original-Word:Finding-Rule:Processed-Word- - # | Mode ===+====== 0 | Straight 1 | Combination 3 | Brute-force 6 | Hybrid Wordlist + Mask 7 | Hybrid Mask + Wordlist- - ? | Charset ===+========= l | abcdefghijklmnopqrstuvwxyz u | ABCDEFGHIJKLMNOPQRSTUVWXYZ d | 0123456789 h | 0123456789abcdef H | 0123456789ABCDEF s | !"#$%&'()*+,-./:;<=>?@^_`{|}~ a | ?l?u?d?s b | 0x00 - 0xff- - # | Device Type ===+============= 1 | CPU 2 | GPU 3 | FPGA, DSP, Co-Processor- - # | Performance | Runtime | Power Consumption | Desktop Impact ===+=============+=========+===================+================= 1 | Low | 2 ms | Low | Minimal 2 | Default | 12 ms | Economic | Noticeable 3 | High | 96 ms | High | Unresponsive 4 | Nightmare | 480 ms | Insane | Headless- - Attack- | Hash- | Mode | Type | Example command ==================+=======+================================================================== Wordlist | $P$ | hashcat -a 0 -m 400 example400.hash example.dict Wordlist + Rules | MD5 | hashcat -a 0 -m 0 example0.hash example.dict -r rules/best64.rule Brute-Force | MD5 | hashcat -a 3 -m 0 example0.hash ?a?a?a?a?a?a Combinator | MD5 | hashcat -a 1 -m 0 example0.hash example.dict example.dict
1. Combinador
Un ataque combinador funciona tomando palabras de una o dos listas de palabras y uniéndolas para probarlas como contraseña. Como se muestra a continuación, tomamos una lista de palabras y la comparamos con los hashes.
2. Lista de palabras
En este tipo de ataque, hemos seleccionado el tipo de ataque como 400 y 1 como ataque de lista de palabras.
3. Basado en reglas
Este ataque es uno de los ataques más complicados types.In Ataque basado en reglas, seleccionamos el tipo de ataque como 0 y dimos la entrada requerida como lista de palabras y archivo hash.
Práctico
Tomaremos un ejemplo de una plataforma que tiene un sistema de inicio de sesión de wordpress a través del cual permite realizar otras actividades como la manipulación de datos en la base de datos, etc.
Después de ejecutar el comando netdiscover, se descubrió ip y se abrió el puerto 80. Ahora, cuando navegamos por la ip junto con el puerto, obtenemos una página, después de lo cual navegamos en los enlaces que conocemos que estaba ejecutando WordPress en ella.
Ahora tenemos una idea de que si WordPress se está ejecutando, nuestra primera tarea es encontrar la página de inicio de sesión de WordPress. Afortunadamente, después de ejecutar DirBuster, obtuvimos un enlace donde la opción de inicio de sesión de WordPress estaba allí, como se muestra a continuación.
Desde aquí podemos probar algunas entradas predeterminadas como qwerty, admin, qwerty123, etc. Afortunadamente, después de probar algunos valores predeterminados admin: admin coincidió y entramos en la base de datos cómodamente.
Ahora había muchos usuarios que tenían sus hashes de contraseña almacenados y entonces era el momento de romper estos hashes.
Aquí viene el uso de hashcat mediante el cual, como se explicó anteriormente, podemos descifrar los hashes en texto plano. Primero almacenaremos los hashes en un archivo y luego haremos fuerza bruta contra una lista de palabras para obtener el texto claro. Como se dijo anteriormente, WordPress almacena las contraseñas en forma de MD5 con sal extra.
Usaremos el comando que se muestra a continuación en el que-m es para el tipo hash, -a es para el modo de ataque:
- -m 400 designa el tipo de hachís que estamos descifrando (phpass);
- – a 0 designa un ataque de diccionario;
- – o agrietado.txt es el archivo de salida para las contraseñas rotas
El archivo de lista de palabras rockyou.txt se puede descargar aquí: https://github.com/brannondorsey/naive-hashcat/releases/download/data/rockyou.txt
Ahora comenzó a agrietar los hashes y ahora solo tenemos que esperar hasta que se agriete.
Con éxito fue capaz de descifrar los hashes. Como encontramos, la lista de contraseñas de usuario se muestra a continuación:
Todo esto se trataba de descifrar los hashes con hashcat y así es como, como se muestra arriba, también podemos descifrar los hashes de WordPress.
WordPress utiliza por defecto la función wp_hash_password () que es (costo 8) 8192 rondas de MD5. El prefijo en el hash es generalmente de $P$ o $H$
Si usted quisiera intentar descifrar las contraseñas usted puede utilizar el siguiente hash:
$P$984478476IagS59wHZvyQMArzfx58u.