> For the complete documentation index, see [llms.txt](https://red-shenlong.gitbook.io/red-shenlong/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://red-shenlong.gitbook.io/red-shenlong/dockerlabs/muy-facil/borazuwarahctf.md).

# BorazuwarahCTF

## Alternativas

**Formato Video:**

{% embed url="<https://youtu.be/wNvk3I7USLs?si=hpdIQUlMX6n3UKcf>" %}

**Formato pdf:**

{% @github-files/github-code-block url="<https://github.com/RedShenlong/DockerLabs/blob/36a2bb395d170f2df0f29ab930130e345c074031/Muy_Facil/BorazuwarahCTF.pdf>" %}

## WriteUp

Una vez desplegada la maquina haremos un escaneo de puertos abiertos con nmap.

En mi casa utilizo el siguiente comando:

```
nmap -p- -sS -sC -sV --min-rate 5000 -n -vvv -Pn 172.17.0.2
```

* **`-p-`**: Escanea todos los puertos .
* **`-sS`**: Realiza un escaneo sigiloso (SYN Scan) para detectar puertos abiertos.
* **`-sC`**: Ejecuta scripts predeterminados para recopilar más información del sistema.
* **`-sV`**: Detecta las versiones de los servicios en ejecución.
* **`--min-rate 5000`**: Acelera el escaneo enviando al menos 5000 paquetes por segundo.
* **`-n`**: No realiza resolución DNS, trabaja directamente con direcciones IP.
* **`-vvv`**: Muestra información detallada y actualizaciones constantes durante el escaneo.
* **`-Pn`**: Salta el "ping" previo y fuerza el escaneo, incluso si el objetivo no responde.

una vez realizado el escaneo vemos que tenemos dos puertos abiertos

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

El puerto 22 tiene SSH, pero como su versión es alta, nos enfocaremos en el puerto 80, que tiene HTTP. Esto significa que si ponemos la IP en el navegador, nos llevará a una página web.

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

En la pagina wed nos sale solamente una imagen por lo que nos las descargamos y veamos si tiene algun archivo oculto con una herramienta llamada : `steghide` para instalarla debemos de ejecutar: `sudo apt install steghide` una vez instalada nos dirigimos a la carpeta donde se ha deascargado la imagen y ejecutamos el siguiente comando para ver si tiene algun archivo oculto:&#x20;

```
steghide extract -sf imagen.jpeg
```

veremos que contiene un archivo llamado `secret.txt` por lo que hacemos un `cat secret.txt` para visualizar el archivo

<figure><img src="/files/15QkmEnV2yptZUASYOrA" alt=""><figcaption></figcaption></figure>

Nos dice que sigamos buscando en la imagen asi que le examinaremos a fondo buscando en sus metadatos con la herramienta `exiftool` que sino la teneis intalada, simplemente poneis `sudo apt install exiftool`&#x20;

Una vez intalada, utilizamos la herramienta con el siguiente comando: `exiftool imagen.jpeg`

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

Nos aparece el usuario borazuwarah, asi que podemos hacer un ataque de fuerza bruta con hydra para obtener la contraseña&#x20;

```
hydra -l borazuwarah -P /usr/share/wordlists/rockyou.txt ssh://172.17.0.2
```

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

Una vez que tengamos esto, nos conectamos a la maquina con ssh:

```
ssh borazuwarah@172.17.0.2
```

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

Estamos dentro pero falta escalar privilegios para ser usuario root por lo que habrá que escalar privilegios.&#x20;

Una forma sencilla es buscar binarios SUID que podamos aprovechar para escalar privilegios con el comando&#x20;

```
find / -perm -4000 2>/dev/null 
```

o binarios Sudo con `sudo -l`

<figure><img src="/files/1jSiFN2EAlhpvzokXbJb" alt=""><figcaption></figcaption></figure>

Encontramos que podemos ejecutar `/bin/bash` asi que pasaremos a ser usuario root con el comando: `sudo -u root /bin/bash`

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

Ya somos usuario root.
