Connection WriteUp - HackMyVM
Este es un writeup que hice en 2021 de nivel fácil. En esta máquina enumeramos un servicio SMB en el que nos aprovecharemos para subir nuestra propia shell. Para la escalada utilizaremos gdb
con permisos SUID para escalar a root.
Enumeración
Con el comando sudo arp-scan -l | grep -i "PCS" | awk '{print $1}'
obtenemos directamente la ip haciendo un escaneo ARP en nuestra red local filtrando por la nomenclatura PCS utilizada por VirtualBox para definir en red sus dispositivos virtualizados.
Nmap
A través de nmap -p22,80,139,445 -sV -sC $IP -oN nmap
vemos 4 puertos en los que hay 3 servicios corriendo.
Pasamos directamente a mirar el servidor samba para investigar en el.
Listamos los recursos compartidos en el servidor y vemos un recurso llamado share.
Explotación
Hay un archivo index.html, por intuición el servidor web se está cargando desde el propio servidor SMB. Por tanto podemos subir nuestra PHP web shell y conseguir acceso.
Escalada de privilegios
Una vez obtenida nuestra sesión, siguiendo la metodologia en CTF’s podemos enumerar permisos SUID. ¿Qué son los permisos SUID? Básicamente, es un permiso que se puede ejecutar como si tu fueras el propietario del archivo.
Con find / -perm -4000 2>/dev/null
le estamos diciendo al sistema que quiero que me busques en la carpeta raíz archivos con el bit SUID activado. El numero 4000 es el valor octal correspondiente al bit SUID.
Como buenos analistas que somos, sabemos que existe una web en la que hay público articulos de técnicas de escalada de privilegios y uso malicioso de comandos encontrados en binarios del sistema operativo. Principalmente está web se basa en binarios con el bit SUID. Pues bien, en ella encontramos la forma de explotarlo.
gdb -nx -ex 'python import os; os.execl("/bin/bash", "bash", "-p")' -ex quit
y… ¡BOOM! Acceso a root.
Happy Hacking ^^