> 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/facil/pequenas-mentirosas.md).

# Pequeñas mentirosas

## 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/e4gyb7w1vQp1A2gSCzf5" 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/pBoGE2oUEZrPoRnhAw7b" alt=""><figcaption></figcaption></figure>

En la pista nos muestra el nombre de un usuario "a"  así que le haremos un ataque de fuerza bruta con hydra.

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

Una vez obtenida la contraseña entramos por el puerto ssh, para hacer la escalada de privilegios buscamos binarios SUID con el comando:

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

No encotramos nada. Intentamos buscar binarios SUDO con `sudo -l` y tampoco hay suerte.

Al no encontrar binarios sensibles iniciamos una búsqueda de recolección de pistas dentro del usuario "a",encontrando otro usuario llamado "spencer"

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

Hacemos un ataque de fuerza bruta con hydra al usuario "spencer" para obtener la contraseña y entremos por el puerto ssh

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

una vez dentro buscamos binarios sudo con `sudo -l` para la escalada de privilegios.

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

Encontramos el binario python para encontrar las vulnerabilidades recomiendo  esta pagina: <https://gtfobins.github.io/>

En nuestro caso  buscamos el binario python nos aparece la opción de Sudo&#x20;

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

Una vez dentro nos aparace el comando con el cual podemos hacer la escalada de privilegios

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

Editamos un poco el comando ya que nuestro binario es python3:

```
sudo python3 -c 'import os; os.system("/bin/sh")'
```

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

Y ya somos root.
