🟢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.

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

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.

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.

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.

Buscamos la flag local.txt

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

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

Was this helpful?