🟢Funbox Rookie

Write-up de la máquina Funbox Rookie de Proving Grounds #writeup #walkthrough

Enumeración

Servicios abiertos

Comenzamos enumerando los puertos que tiene abiertos la máquina objetivo.

nmap -p- --open --min-rate 500 -Pn -n -vvv 192.168.96.107

3 puertos abiertos (21,22,80). El siguiente paso será el escaneo profundo de estos tres servicios.

nmap -p21,22,80 -Pn -n -sVC -vvv 192.168.96.107

Servicios abiertos:

  • Puerto 21 -> FTP -> ProFTPD 1.3.5e

  • Puerto 22 -> SSH -> OpenSSH 7.6

  • Puerto 80 -> HTTP -> Apache httpd 2.4.29

Información de interés obtenida:

  • FTP Login Anonymous

  • robots.txt -> 1 entrada -> /logs

Enumeración FTP

Como hemos visto en la enumeración de servicios abiertos, está disponible la autenticación "anonymous" en el servicio FTP. Vamos a ver el contenido.

Enumeración Web

En la enumeración de puerto, hemos visto que se está ejecutando un servidor Apache en el puerto 80. Vamos a enumerar su contenido.

Vemos la página por defecto de un servidor Apache. El siguiente paso será buscar directorios y archivos interesantes disponibles en este servidor.

dirsearch -u "192.168.96.107" -i200,301 

Interesante, un archivo robots.txt que ya vimos en la enumeración inicial. Vamos a ver su contenido. Encontramos un directorio /logs/, pero...

Explotación

Recordamos los archivos ZIP dentro del servidor FTP. Vamos a descargar todos los archivos. Primero, utilizamos la herramienta zip2john para generar hashes de todos los archivos. Luego, desciframos solo dos archivos ZIP: cathrine.zip y tom.zip. Extraemos los datos de los archivos ZIP y, después de la extracción, encontramos una clave SSH privada.

 zip2john tom.zip > tom.hash
 zip2john cathrine.zip > cathrine.hash
john --wordlist=/home/elhackeretico/rockyou.txt tom.hash
john --wordlist=/home/elhackeretico/rockyou.txt cathrine.hash

Dentro del archivo comprimido del usuario tom, encontramos una clave privada id_rsa. Vamos a intentar iniciar sesión en el servicio SSH con el usuario "tom" y esta clave privada. Antes debemos dar privilegios al archivo de clave privada.

chmod +x id_rsa
ssh -i id_rsa [email protected]

Buscamos la flag local.txt

Pero, tenemos una rbash. Salimos de esta conexión y probamos a conectarnos con el siguiente comando.

ssh -i id_rsa [email protected] -t "bash --noprofile"

Y ya tendremos la flag local.txt

Elevación de privilegios

Tras revisar el archivo .mysql_history, hemos descubierto una contraseña que podría ser válida para el usuario Tom. Al observar el resultado del comando sudo -l, vemos que nuestro usuario tiene permisos para ejecutar cualquier comando proporcionando una contraseña. Procedamos a ejecutar el comando sudo su con el fin de obtener acceso a la cuenta de root.

Y ya tendríamos acabada la máquina Funbox Rookie.

Last updated