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

Escaneo con Nmap

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.

Login de RT


🔑 Uso de credenciales por defecto

Basado en documentación de RT, probamos las siguientes credenciales:

  • Usuario: root
  • Contraseña: password

El acceso fue exitoso.

Credenciales por defecto


🧭 Navegación por el panel RT

Una vez dentro, se nos presenta el panel principal del sistema RT.

Dashboard de RT

Desde la sección Admin → Users, encontramos un usuario adicional llamado lnorgaard.

Usuarios en RT


🧪 Descubrimiento de contraseña inicial

Editando el perfil del usuario lnorgaard, encontramos el siguiente comentario:

Initial password set to Welcome2023!

Comentario con contraseña


📥 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.

Flag de usuario y ZIP


📤 Transferencia del archivo ZIP

Transferimos el archivo a nuestra máquina con scp:

scp lnorgaard@10.10.11.227:/home/lnorgaard/RT30000.zip .

Transferencia con SCP


📦 Análisis del ZIP

El archivo contiene dos ficheros:

  • KeePassDumpFull.dmp
  • passcodes.kdbx

Contenido del ZIP


🧠 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

Extracción de contraseña


🔐 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.

Abriendo base KeePassXC Conversión de clave

🔁 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 como root


🚪 Acceso final como root

Con la clave convertida, accedemos por SSH:

ssh -i id_rsa root@10.10.11.227

Flag de root


🏁 Flag final

Leemos la flag de root:

cat /root/root.txt

📊 Resumen

EtapaResultado
EnumeraciónRT accesible con credenciales por defecto
ExplotaciónUsuario con contraseña inicial en comentarios
Escalada ISSH como lnorgaard
Escalada IIDump de KeePass → acceso root con clave SSH
Flagsuser.txt y root.txt

Autor: gueco99
🧠 Hack The Box – Keeper (Easy)