articulos - b0ySie7e
  • 👋Bienvenido
  • Write up
    • 📕DockerLabs
      • QueueMedic
    • 📕Tryhackme
      • VulnneTroasted
      • Relevant
      • Bufferoverflowprep
      • Eavesdropper
      • Kitty
      • Borderlands
      • Willow
      • Gatekeeper
      • Web Strike Blue Team
      • Splunkps Eclipse
      • Sustah
      • Battery
      • The Server From Hell
      • Biteme
      • Zeno
      • Olymus
      • Mastermind
      • Cyber Crafted
      • Ollie
      • Red
      • Opacity
      • Tony The Tiger
      • B3dr0ck
      • Valley
      • Hacker vs Hacker
      • Flatine
      • Glitch
      • Smag Grotto
      • Ninja Skills
      • Corridor
      • TechSupport
      • Kiba
      • Fowsniff CTF
      • Blueprint
      • Anonymous
      • Bookstore
      • Bounty
      • Cmspit
      • Mustacchio
    • 📕Hackthebox
      • Inject
      • Busqueda
      • Monitors Two
      • PC
      • Topology
      • Wifinetic
      • Pilgrimage
      • Keeper
      • Headless
      • Devvortex
      • Codify
      • Perfection
      • Broker
      • Pov
      • Resolute
      • Monteverde
      • Intelligence
      • StreamIO
      • Scrambled
      • Escape
      • Authority
      • Return
      • Timelapse
      • Support
      • Cap
      • Doctor
      • Validation
      • Twomillion
    • 📕PortSwigger
      • SQL Injection
        • Lab: SQL injection vulnerability in WHERE clause allowing retrieval of hidden data
        • Lab: SQL injection vulnerability allowing login bypass
        • Lab: SQL injection attack, querying the database type and version on Oracle
        • Lab: SQL injection attack, querying the database type and version on MySQL and Microsoft
        • Lab: SQL injection attack, listing the database contents on non-Oracle databases
        • Lab: SQL injection UNION attack, determining the number of columns returned by the query
        • Lab: SQL injection UNION attack, retrieving data from other tables
        • Lab: SQL injection UNION attack, retrieving multiple values in a single column
        • Lab: Blind SQL injection with conditional responses
        • Lab: Blind SQL injection with conditional errors
        • Lab: Visible error-based SQL injection
        • Lab: Blind SQL injection with time delays
        • Lab: Blind SQL injection with time delays and information retrieval
        • Lab: Blind SQL injection with out-of-band interaction
        • Lab: Blind SQL injection with out-of-band data exfiltration
        • Lab: SQL injection with filter bypass via XML encoding
  • Articulos
    • 🛠️Proyectos
      • 📝Host Port Discovery
    • 🛠️Laboratorio
      • 📝Hacking Wireles
  • Vulnerabilidaes
    • 🖥️Explotacion
      • CVE-2023-38831
Powered by GitBook
On this page
  • Enumeración
  • Puerto 80
  • Reques Tracker
  • Shell - lnorgaard
  • Shell - root
  • CVE-2023-32784
  • Putty User Key
  1. Write up
  2. Hackthebox

Keeper

PreviousPilgrimageNextHeadless

Last updated 10 months ago

Keeper es una máquina Linux de nivel de dificultad fácil que cuenta con un sistema de tickets de soporte que utiliza credenciales predeterminadas. Al enumerar el servicio, podemos ver las credenciales de texto sin formato que conducen al acceso SSH. Con el acceso "SSH", podemos obtener acceso a un archivo de volcado de la base de datos de KeePass, que podemos aprovechar para recuperar la contraseña maestra. Con acceso a la base de datos "Keepass", podemos acceder a las claves "SSH" raíz, que se utilizan para obtener un shell privilegiado en el host.

Enumeración

Iniciamos con la enumeración de los puertos abiertos con ayuda de nmap

❯ nmap -p- --open --min-rate 5000 -Pn -n -vvv 10.10.11.227 -oG allportsScan

PORT   STATE SERVICE REASON
22/tcp open  ssh     syn-ack
80/tcp open  http    syn-ack

Observamos dos puertos abiertos, ahora enumeraremos los servicios y versiones que se ejecutan en dichos puertos

❯ nmap -p22,80 -sC -sV -vvv -Pn -n 10.10.11.227 -oN servicesScan

PORT   STATE SERVICE REASON  VERSION
22/tcp open  ssh     syn-ack OpenSSH 8.9p1 Ubuntu 3ubuntu0.3 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   256 35:39:d4:39:40:4b:1f:61:86:dd:7c:37:bb:4b:98:9e (ECDSA)
| ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKHZRUyrg9VQfKeHHT6CZwCwu9YkJosNSLvDmPM9EC0iMgHj7URNWV3LjJ00gWvduIq7MfXOxzbfPAqvm2ahzTc=
|   256 1a:e9:72:be:8b:b1:05:d5:ef:fe:dd:80:d8:ef:c0:66 (ED25519)
|_ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBe5w35/5klFq1zo5vISwwbYSVy1Zzy+K9ZCt0px+goO
80/tcp open  http    syn-ack nginx 1.18.0 (Ubuntu)
|_http-title: Site doesn't have a title (text/html).
| http-methods: 
|_  Supported Methods: GET HEAD
|_http-server-header: nginx/1.18.0 (Ubuntu)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

Puerto 80

Navegando en el sitio web del servicio http 80 encontraremos en principio un link

Reques Tracker

Investigando un poco dimos con las credenciales por defecto del servicio, las cuales son las siguientes:

root : password

Estas credenciales no permitirán ingresar al panel de gestión del servicio requets tracker

Shell - lnorgaard

Dirigiendonos al panel de usuarios encontraremos a un usuario llamado inorgaard

Y en los comentarios encontraremos una credencial

Esta credencial es la siguiente, el cual nos permitirá iniciar sesión por el servicio ssh

lnorgaard : Welcome2023!

Haciendo uso de la credencial encontrada podemos iniciar sesión por ssh

❯ ssh lnorgaard@10.10.11.227

Shell - root

Enumerando el directorio encontraremos un archivo llamado RT30000.zip

Copiaremos a nuestra maquina atacante el archivo que encontramos y lo descomprimimos, al descomprimir encontraremos los siguientes archivos:

CVE-2023-32784

Investigando un poco encontraremos con una vulnerabilidad en la que nos permita extraer la contraseña con el archivo KeePassDumpFull.dmp

Para entender mejor sobre la vulnerabilidad puedes revisar el articulo:

Con ayuda de un script en python podremos extraer la contraseña en texto plano:

Ejecutamos el script y podremos ver parte de la contraseña

python3 keepass_dump.py -f KeePassDumpFull.dmp

No tenemos la contraseña completa, pero es una parte dgrd med flde

Buscando por internet encontramos algo asociado a la palabra que encotramos

Entonces me decidí a probar dicho texto y haciendo variaciones, en este caso me funciono todas en minusculas:

rødgrød med fløde

Luego de ingresar al podremos encontrar dos credenciales

La que nos interesa es la de root, pero esta contraseña no parece ser la correcta.

F4><3K0nd!

Putty User Key

En las notas encontraremos un ssh rsa de Putty, el cual nos copiamos a un archivo para verlo mejor.

Investigando un poco encontre como convertirlo a una id_rsa, esto lo puedes revisar en el siguiente articulo:

Esto es un ejemplo de como lo podríamos hacer:

puttygen pp_id_rsa.ppk -O private-openssh -o id_rsa

Con el ejemplo de ejecución de comandos podremos generar nuestra id_rsa

❯ puttygen ssh_rsa_putty -O private-openssh -o id_rsa

Y haciendo uso de esta id_rsa podremos iniciar sesión como el usuario root:

Este link no llevara a el cual debemos de agregar a nuestro archivo /etc/hosts para que pueda cargar el sitio web.

📕
tickets.keeper.htb
https://www.incibe.es/incibe-cert/alerta-temprana/vulnerabilidades/cve-2023-32784
https://github.com/z-jxy/keepass_dump
https://www.baeldung.com/linux/ssh-key-types-convert-ppk
20240722032055.png
20240722032659.png
20240722032715.png
20240722144619.png
20240722144703.png
20240722144434.png
20240722144803.png
20240722163952.png
20240722164031.png
20240722172517.png
20240722172551.png
20240722172650.png
20240722172736.png
20240722173104.png
20240722173139.png