13 KiB
WebDav
![](/.gitbook/assets/image%20%283%29.png)
Utilisez Trickest pour construire facilement et automatiser des flux de travail alimentés par les outils communautaires les plus avancés au monde.
Obtenez un accès aujourd'hui :
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- Travaillez-vous dans une entreprise de cybersécurité ? Voulez-vous voir votre entreprise annoncée dans HackTricks ? ou voulez-vous avoir accès à la dernière version de PEASS ou télécharger HackTricks en PDF ? Consultez les PLANS D'ABONNEMENT !
- Découvrez The PEASS Family, notre collection exclusive de NFT
- Obtenez le swag officiel PEASS & HackTricks
- Rejoignez le 💬 groupe Discord ou le groupe Telegram ou suivez moi sur Twitter 🐦@carlospolopm.
- Partagez vos astuces de piratage en soumettant des PR au repo hacktricks et au repo hacktricks-cloud.
Un serveur HTTP avec WebDav actif est un serveur où vous pouvez probablement mettre à jour, supprimer, déplacer, copier des fichiers. Parfois, vous avez besoin d'avoir des identifiants valides (généralement vérifiés avec l'authentification de base HTTP).
Vous devriez essayer de télécharger un webshell et de l'exécuter à partir du serveur web pour prendre le contrôle du serveur.
Généralement, pour se connecter à un serveur WebDav, vous aurez besoin d'identifiants valides : WebDav bruteforce (Authentification de base).
Une autre configuration courante consiste à interdire le téléchargement de fichiers avec des extensions qui seront exécutées par le serveur web, vous devriez vérifier comment contourner cela :
- Téléchargez des fichiers avec des extensions exécutables (ce n'est peut-être pas interdit).
- Téléchargez des fichiers sans extensions exécutables (comme .txt) et essayez de renommer le fichier (déplacer) avec une extension exécutable.
- Téléchargez des fichiers sans extensions exécutables (comme .txt) et essayez de copier le fichier (déplacer) avec 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
Output sample:
Cela ne signifie pas que les extensions .txt et .html sont exécutées. Cela signifie que vous pouvez accéder à ces fichiers via le web.
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
A PUT request is an HTTP method used to update or create a resource on a server. It is commonly used in WebDAV (Web Distributed Authoring and Versioning) to upload files to a remote server.
Une requête PUT est une méthode HTTP utilisée pour mettre à jour ou créer une ressource sur un serveur. Elle est couramment utilisée dans WebDAV (Web Distributed Authoring and Versioning) pour télécharger des fichiers vers un serveur distant.
How it works
Fonctionnement
When making a PUT request, the client sends the data to be uploaded in the body of the request. The server then processes the request and either updates the existing resource or creates a new one with the provided data.
Lorsqu'une requête PUT est effectuée, le client envoie les données à télécharger dans le corps de la requête. Le serveur traite ensuite la requête et met à jour la ressource existante ou en crée une nouvelle avec les données fournies.
WebDAV and PUT
WebDAV et PUT
WebDAV is an extension of the HTTP protocol that allows for more advanced file management capabilities. It includes support for methods like PUT, which enables clients to upload files to a remote server.
WebDAV est une extension du protocole HTTP qui permet des fonctionnalités de gestion de fichiers plus avancées. Il inclut la prise en charge de méthodes telles que PUT, qui permet aux clients de télécharger des fichiers vers un serveur distant.
By using the PUT method in WebDAV, users can upload files to a server and manage them remotely. This can be useful for collaborative editing, version control, and other file management tasks.
En utilisant la méthode PUT dans WebDAV, les utilisateurs peuvent télécharger des fichiers vers un serveur et les gérer à distance. Cela peut être utile pour l'édition collaborative, le contrôle de version et d'autres tâches de gestion de fichiers.
Security Considerations
Considérations de sécurité
When using the PUT method, it is important to consider security implications. Unauthorized access to the server could lead to data leaks or unauthorized modifications.
Lors de l'utilisation de la méthode PUT, il est important de prendre en compte les implications de sécurité. Un accès non autorisé au serveur pourrait entraîner des fuites de données ou des modifications non autorisées.
To mitigate these risks, it is recommended to implement proper authentication and access controls. Additionally, input validation should be performed to prevent malicious file uploads or other forms of attacks.
Pour atténuer ces risques, il est recommandé de mettre en place une authentification et des contrôles d'accès appropriés. De plus, une validation des entrées doit être effectuée pour empêcher les téléchargements de fichiers malveillants ou d'autres formes d'attaques.
curl -T 'shell.txt' 'http://$ip'
Requête MOVE
The MOVE request is used in WebDAV to move a resource from one location to another. It is similar to the HTTP PUT
request, but instead of creating a new resource, it moves an existing resource to a new location.
La requête MOVE est utilisée dans WebDAV pour déplacer une ressource d'un emplacement à un autre. Elle est similaire à la requête HTTP PUT
, mais au lieu de créer une nouvelle ressource, elle déplace une ressource existante vers un nouvel emplacement.
Syntax
MOVE /source-resource HTTP/1.1
Host: example.com
Destination: /destination-resource
Example
MOVE /files/document.txt HTTP/1.1
Host: example.com
Destination: /archive/document.txt
In this example, the MOVE
request moves the document.txt
file from the /files
directory to the /archive
directory on the example.com
server.
Dans cet exemple, la requête MOVE
déplace le fichier document.txt
du répertoire /files
vers le répertoire /archive
sur le serveur example.com
.
curl -X MOVE --header 'Destination:http://$ip/shell.php' 'http://$ip/shell.txt'
![](/.gitbook/assets/image%20%283%29.png)
Utilisez Trickest pour construire et automatiser facilement des flux de travail alimentés par les outils communautaires les plus avancés au monde.
Obtenez un accè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 pouvez é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 vers 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).
Poster les informations d'identification
Si Webdav utilisait un serveur Apache, vous devriez regarder 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 hash 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 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
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- Travaillez-vous dans une entreprise de cybersécurité ? Voulez-vous voir votre entreprise annoncée dans HackTricks ? Ou voulez-vous avoir accès à la dernière version de PEASS ou télécharger HackTricks en PDF ? Consultez les PLANS D'ABONNEMENT !
- Découvrez La famille PEASS, notre collection exclusive de NFT
- Obtenez le swag officiel PEASS & HackTricks
- Rejoignez le 💬 groupe Discord ou le groupe Telegram ou suivez moi sur Twitter 🐦@carlospolopm.
- Partagez vos astuces de piratage en soumettant des PR au repo hacktricks et au repo hacktricks-cloud.
![](/.gitbook/assets/image%20%283%29.png)
Utilisez Trickest pour construire et automatiser facilement des workflows alimentés par les outils communautaires les plus avancés au monde.
Obtenez un accès aujourd'hui :
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}