# Funbox Rookie

<figure><img src="/files/TC8e5L84TD3SEFjPtX10" alt=""><figcaption></figcaption></figure>

### Enumeración

#### Servicios abiertos

Comenzamos enumerando los puertos que tiene abiertos la máquina objetivo.&#x20;

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

<figure><img src="/files/8n8mWuKJWzq3pna3YiF0" alt=""><figcaption></figcaption></figure>

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
```

<figure><img src="/files/HiPm4mG7ly7x2Z1h3sHk" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/kyVnGhRrMlWHw2NBNMC6" alt=""><figcaption></figcaption></figure>

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.&#x20;

<figure><img src="/files/wZBe5uDBYYYsBaT45RD5" alt=""><figcaption></figcaption></figure>

#### 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.&#x20;

<figure><img src="/files/AdPi7XT391fsabQqtyNw" alt=""><figcaption></figcaption></figure>

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

```
dirsearch -u "192.168.96.107" -i200,301 
```

<figure><img src="/files/VtkfZMw8edOUAKwOL0dV" alt=""><figcaption></figcaption></figure>

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

<figure><img src="/files/DwiQJKPiE2oCXK1UHbK5" alt=""><figcaption></figcaption></figure>

### 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
```

<figure><img src="/files/TLqUaTmg0QxhRWyQ1Y5y" alt=""><figcaption></figcaption></figure>

```
john --wordlist=/home/elhackeretico/rockyou.txt tom.hash
john --wordlist=/home/elhackeretico/rockyou.txt cathrine.hash
```

<figure><img src="/files/ckeXsBmEYGJ8lecEiuUa" alt=""><figcaption></figcaption></figure>

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.&#x20;

```
chmod +x id_rsa
ssh -i id_rsa tom@192.168.96.107
```

<figure><img src="/files/hwgsuNVr6qfjxUwANM8C" alt=""><figcaption></figcaption></figure>

Buscamos la flag local.txt

<figure><img src="/files/MNwYRldBAL0yQdwCEHVW" alt=""><figcaption></figcaption></figure>

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

```
ssh -i id_rsa tom@192.168.96.107 -t "bash --noprofile"
```

<figure><img src="/files/DDUCIBSTU8U7xaZ75KCP" alt=""><figcaption></figcaption></figure>

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.

<figure><img src="/files/sqX8pGzcFNbvdOzmjt4p" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/sfFbykpxAgBK6EcZ2lZp" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/lIA3ur87LMNTQVAzqf6K" alt=""><figcaption></figcaption></figure>

Y ya tendríamos acabada la máquina Funbox Rookie.&#x20;

{% embed url="<https://youtu.be/SNLB4MZT4Xg>" %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.securiters.com/securiters-wiki/write-ups/proving-grounds/funbox-rookie.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
