2 minutes
Bandit 16
OverTheWire
Bandit 16
Bienvenido al nivel 16 de Bandit en OverTheWire
Al inicio del nivel nos indican que para avanzar al siguiente nivel tendremos que enviar la contraseña del nivel actual a un puerto local entre el 31000 y el 32000. Nos indica que será el unico puerto que hable SSL/TLS.
Herramientas:
ssh, telnet, nc, ncat, socat, openssl, s_client, nmap, netstat, ss
Para averiguar que puertos estan abiertos en nuestra maquina en ese rango usaremos nmap de la siguiente manera. Con el script pre-cargado de ssl-enum-ciphers para averiguar que puertos usan el cifrado SSL/TLS.
nmap localhost -p31000-32000 --script ssl-enum-ciphers
Veremos dos puertos abiertos con cifrado TLS:
PORT STATE SERVICE
31046/tcp open
31518/tcp open
| ssl-enum-ciphers:
| TLSv1.2…….
31691/tcp open
31790/tcp open
| ssl-enum-ciphers:
| TLSv1.2…….
31960/tcp open
Para enviar el mensaje tendremos que cifrar la conexion por lo que usaremos openssl s_client.
Es importante tener en cuenta que la contraseña del nivel 16 empieza por “k” o en algunas ocasiones por “r”, cuando realizamos una conexion interactiva con s_client estos caracteres son para introducir claves, por lo que nos puede responder con “KEYUPDATE”.
De esta manera tendremos que introducir la cadena de la contraseña del nivel 16 a traves de un echo y con el parametro -quiet para que no sea interactivo.
Probamos con 31790:
echo "kS0Hf0XXXXXXXXX" | openssl s_client -connect localhost:31790 -quiet
Nos devolverá una clave RSA privada con la que nos conectaremos al nivel 17 y haremos un cat de:
cat /etc/bandit_pass/bandit17
¡Vamos al siguiente nivel con esta contraseña!
Enlaces de Interes