> 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/campana-feliz.md).

# Campana Feliz

### 🔍 **RECONOCIMIENTO**

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

```bash
ping -c 1 192.168.1.58
```

para verificar la conectividad de red.

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

A continuación, se realiza el comando:

```bash
nmap -p- --open 192.168.1.58 --min-rate 5000 -n
```

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

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

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

### 🔎 **EXPLORACIÓN**

Se utiliza el comando:

```bash
sudo nmap -sCV -p22,8088,10000 -v 192.168.1.58
```

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

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

Miramos a ver que contiene el puerto 8080 por si encontramos alguna información relevante.

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

No hay a primera vista nada pero revisamos el código fuente.

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

Vemos que son dos cadenas codificadas en base64 por lo que decodificamos.

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

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

Enumeramos los directorios.

```
gobuster dir -u http://192.168.1.58:8088/ -w /usr/share/wordlists/dirbuster/directory-list-lowercase-2.3-medium.txt -x html,txt,php,xml
```

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

Nos llama la atención el archivo **shell.php** por lo que revisamos.

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

### 🚀 **EXPLOTACIÓN**

Realizamos fuerza bruta con el usuario campana para entrar en el panel.

```bash
hydra -l campana -P /usr/share/wordlists/rockyou.txt 192.168.1.58 -s 8088 http-post-form "/shell.php:username=^USER^&password=^PASS^:Username or password invalid"
```

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

Nos logueamos con esas credenciales. Nos aparece como una shell para ejecutar comandos. Indagando entre los directorios en el **/opt** encontramos una nota.

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

Revisamos su contenido.

```bash
cat /opt/CMS\ Webmin.txt
```

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

Accedemos entonces al puerto 10000.

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

### 🔐 PRIVILEGIOS

Nos logueamos con las credenciales proporcionadas.

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

Entramos en el apartado **Tools** luego en **Command Shell** y somos root.

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

Ya somos **root**.&#x20;

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! 💻🔍🚀
