hacktricks/network-services-pentesting/pentesting-web/put-method-webdav.md

7.7 KiB

WebDav


Utilisez Trickest pour construire facilement et automatiser des workflows alimentés par les outils communautaires les plus avancés au monde.
Accédez dès aujourd'hui à :

{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}

Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)!

Autres façons de soutenir HackTricks :

Lorsque vous traitez avec un serveur HTTP avec WebDav activé, il est possible de manipuler des fichiers si vous avez les bonnes informations d'identification, généralement vérifiées via l'authentification de base HTTP. Prendre le contrôle d'un tel serveur implique souvent le téléchargement et l'exécution d'un webshell.

L'accès au serveur WebDav nécessite généralement des informations d'identification valides, avec le bruteforce WebDav étant une méthode courante pour les acquérir.

Pour contourner les restrictions sur les téléchargements de fichiers, en particulier ceux empêchant l'exécution de scripts côté serveur, vous pouvez :

  • Télécharger des fichiers avec des extensions exécutables directement si ce n'est pas restreint.
  • Renommer les fichiers téléchargés non exécutables (comme .txt) en une extension exécutable.
  • Copier les fichiers téléchargés non exécutables, en changeant leur extension pour une extension exécutable.

DavTest

Davtest essaie de télécharger plusieurs fichiers avec différentes extensions et vérifie si l'extension est exécutée :

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

Cadaver

Vous pouvez utiliser cet outil pour vous connecter au serveur WebDav et effectuer des actions (comme télécharger, déplacer ou supprimer) manuellement.

cadaver <IP>

Requête PUT

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

Requête MOVE

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


Utilisez Trickest pour construire facilement et automatiser des workflows alimentés par les outils communautaires les plus avancés au monde.
Accédez dès aujourd'hui à :

{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}

Vulnérabilité WebDav IIS5/6

Cette vulnérabilité est très intéressante. Le WebDav ne permet pas de télécharger ou de renommer des fichiers avec l'extension .asp. Mais vous pouvez contourner cela en ajoutant à la fin du nom ";.txt" et le fichier sera exécuté comme s'il s'agissait d'un fichier .asp (vous pourriez également utiliser ".html" au lieu de ".txt" mais N'OUBLIEZ PAS le ";").

Ensuite, vous pouvez télécharger votre shell en tant que fichier ".txt" et le copier/déplacer dans un fichier ".asp;.txt". En accédant à ce fichier via le serveur web, il sera exécuté (cadaver indiquera que l'action de déplacement n'a pas fonctionné, mais c'est le cas).

Post-identifiants

Si le Webdav utilisait un serveur Apache, vous devriez examiner les sites configurés dans Apache. Généralement :
/etc/apache2/sites-enabled/000-default

À l'intérieur, vous pourriez trouver quelque chose comme :

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

Comme vous pouvez le voir, il y a les fichiers avec les identifiants valides pour le serveur webdav :

/etc/apache2/users.password

À l'intérieur de ce type de fichiers, vous trouverez le nom d'utilisateur et un hachage du mot de passe. Ce sont les informations d'identification que le serveur webdav utilise pour authentifier les utilisateurs.

Vous pouvez essayer de les craquer, ou d'en ajouter davantage si, pour une raison quelconque, vous souhaitez accéder au serveur webdav:

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

Pour vérifier si les nouvelles informations d'identification fonctionnent, vous pouvez faire :

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

Références

Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)!

Autres façons de soutenir HackTricks:


Utilisez Trickest pour construire et automatiser facilement des workflows alimentés par les outils communautaires les plus avancés au monde.
Accédez dès aujourd'hui:

{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}