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

138 lines
9 KiB
Markdown
Raw Normal View History

2022-05-01 13:25:53 +00:00
# WebDav
2022-04-28 16:01:33 +00:00
<figure><img src="../../.gitbook/assets/image (3) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
2022-09-01 23:40:55 +00:00
2024-02-10 15:36:32 +00:00
Verwenden Sie [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks), um Workflows einfach zu erstellen und zu automatisieren, die von den fortschrittlichsten Community-Tools der Welt unterstützt werden.
Erhalten Sie noch heute Zugriff:
2022-09-01 23:40:55 +00:00
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
2022-04-28 16:01:33 +00:00
<details>
2024-02-10 15:36:32 +00:00
<summary><strong>Lernen Sie das Hacken von AWS von Null auf Held mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 15:36:32 +00:00
Andere Möglichkeiten, HackTricks zu unterstützen:
2023-12-31 01:24:39 +00:00
2024-02-10 15:36:32 +00:00
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) Github-Repositories senden.
2022-04-28 16:01:33 +00:00
</details>
2024-02-10 15:36:32 +00:00
Bei einem **HTTP-Server mit aktiviertem WebDav** ist es möglich, Dateien zu **manipulieren**, wenn Sie über die richtigen **Anmeldeinformationen** verfügen, die normalerweise über **HTTP Basic Authentication** überprüft werden. Die Kontrolle über einen solchen Server erfordert oft das **Hochladen und Ausführen einer Webshell**.
2024-02-10 15:36:32 +00:00
Der Zugriff auf den WebDav-Server erfordert in der Regel **gültige Anmeldeinformationen**, wobei [**WebDav-Brute-Force**](../../generic-methodologies-and-resources/brute-force.md#http-basic-auth) eine häufige Methode ist, um diese zu erhalten.
2024-02-10 15:36:32 +00:00
Um Einschränkungen bei Dateiuploads zu umgehen, insbesondere solche, die die Ausführung serverseitiger Skripte verhindern, können Sie Folgendes tun:
2024-02-10 15:36:32 +00:00
- **Laden Sie** Dateien mit **ausführbaren Erweiterungen** direkt hoch, sofern nicht eingeschränkt.
- **Benennen Sie** hochgeladene nicht ausführbare Dateien (wie .txt) in eine ausführbare Erweiterung um.
- **Kopieren Sie** hochgeladene nicht ausführbare Dateien und ändern Sie ihre Erweiterung in eine ausführbare Erweiterung.
2022-05-01 13:25:53 +00:00
## DavTest
2024-02-10 15:36:32 +00:00
**Davtest** versucht, **mehrere Dateien mit verschiedenen Erweiterungen hochzuladen** und **überprüft**, ob die Erweiterung **ausgeführt wird**:
```bash
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:
![](<../../.gitbook/assets/image (19) (1).png>)
2024-02-10 15:36:32 +00:00
Dies bedeutet nicht, dass **.txt** und **.html-Erweiterungen ausgeführt werden**. Dies bedeutet, dass Sie auf diese Dateien über das Web **zugreifen können**.
2022-05-01 13:25:53 +00:00
## Cadaver
2024-02-10 15:36:32 +00:00
Sie können dieses Tool verwenden, um **eine Verbindung zum WebDav-Server herzustellen** und Aktionen (wie **Hochladen**, **Verschieben** oder **Löschen**) **manuell** auszuführen.
```
cadaver <IP>
```
2024-02-10 15:36:32 +00:00
## PUT-Anfrage
2024-02-10 15:36:32 +00:00
A PUT request is an HTTP method used to update or create a resource on a server. It is commonly used in web development and web services. The PUT method allows the client to send data to the server to update an existing resource or create a new one.
2024-02-10 15:36:32 +00:00
Eine PUT-Anfrage ist eine HTTP-Methode, die verwendet wird, um eine Ressource auf einem Server zu aktualisieren oder zu erstellen. Sie wird häufig in der Webentwicklung und bei Webdiensten eingesetzt. Die PUT-Methode ermöglicht es dem Client, Daten an den Server zu senden, um eine vorhandene Ressource zu aktualisieren oder eine neue zu erstellen.
```
curl -T 'shell.txt' 'http://$ip'
```
2024-02-10 15:36:32 +00:00
## MOVE-Anforderung
2024-02-10 15:36:32 +00:00
The MOVE method is used to move a resource from one location to another on the server. It is commonly used in WebDAV (Web Distributed Authoring and Versioning) to move or rename files and directories.
2024-02-10 15:36:32 +00:00
Die MOVE-Methode wird verwendet, um eine Ressource von einem Ort zum anderen auf dem Server zu verschieben. Sie wird häufig in WebDAV (Web Distributed Authoring and Versioning) verwendet, um Dateien und Verzeichnisse zu verschieben oder umzubenennen.
```
curl -X MOVE --header 'Destination:http://$ip/shell.php' 'http://$ip/shell.txt'
```
<figure><img src="../../.gitbook/assets/image (3) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
2022-09-01 23:40:55 +00:00
2024-02-10 15:36:32 +00:00
Verwenden Sie [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks), um Workflows einfach zu erstellen und zu automatisieren, die von den fortschrittlichsten Community-Tools der Welt unterstützt werden.
Erhalten Sie noch heute Zugriff:
2022-09-01 23:40:55 +00:00
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
2024-02-10 15:36:32 +00:00
## IIS5/6 WebDav-Schwachstelle
2024-02-10 15:36:32 +00:00
Diese Schwachstelle ist sehr interessant. Das **WebDav** erlaubt es nicht, Dateien mit der Erweiterung **.asp** hochzuladen oder umzubenennen. Aber Sie können dies umgehen, indem Sie am Ende des Namens **";.txt"** hinzufügen und die Datei wird ausgeführt, als ob es sich um eine .asp-Datei handeln würde (Sie könnten auch ".html" anstelle von ".txt" verwenden, aber **vergessen Sie das ";" nicht**).
2024-02-10 15:36:32 +00:00
Dann können Sie Ihre Shell als ".**txt-Datei**" hochladen und sie in eine ".asp;.txt-Datei" kopieren/verschieben. Wenn Sie auf diese Datei über den Webserver zugreifen, wird sie ausgeführt (cadaver gibt an, dass die Verschiebungsaktion nicht funktioniert hat, aber sie hat funktioniert).
2022-12-24 19:34:46 +00:00
![](<../../.gitbook/assets/image (18) (1) (1).png>)
2024-02-10 15:36:32 +00:00
## Post-Anmeldeinformationen
2024-02-10 15:36:32 +00:00
Wenn Webdav einen Apache-Server verwendet, sollten Sie die konfigurierten Websites in Apache überprüfen. Normalerweise:\
_**/etc/apache2/sites-enabled/000-default**_
2024-02-10 15:36:32 +00:00
Darin könnten Sie etwas wie folgt finden:
```
ServerAdmin webmaster@localhost
2024-02-10 15:36:32 +00:00
Alias /webdav /var/www/webdav
<Directory /var/www/webdav>
DAV On
AuthType Digest
AuthName "webdav"
AuthUserFile /etc/apache2/users.password
Require valid-user
```
2024-02-10 15:36:32 +00:00
Wie Sie sehen können, gibt es die Dateien mit den gültigen **Anmeldedaten** für den **WebDAV**-Server:
```
/etc/apache2/users.password
```
2024-02-10 15:36:32 +00:00
In dieser Art von Dateien finden Sie den **Benutzernamen** und einen **Hash** des Passworts. Dies sind die Anmeldeinformationen, die der WebDAV-Server zur Authentifizierung von Benutzern verwendet.
2024-02-10 15:36:32 +00:00
Sie können versuchen, sie zu **knacken** oder **weitere hinzuzufügen**, wenn Sie aus irgendeinem Grund auf den **WebDAV**-Server **zugreifen** möchten:
```bash
htpasswd /etc/apache2/users.password <USERNAME> #You will be prompted for the password
```
2024-02-10 15:36:32 +00:00
Um zu überprüfen, ob die neuen Anmeldeinformationen funktionieren, können Sie Folgendes tun:
```bash
wget --user <USERNAME> --ask-password http://domain/path/to/webdav/ -O - -q
```
2024-02-10 15:36:32 +00:00
## Referenzen
2024-02-08 21:36:15 +00:00
* [https://vk9-sec.com/exploiting-webdav/](https://vk9-sec.com/exploiting-webdav/)
2022-04-28 16:01:33 +00:00
<details>
2024-02-10 15:36:32 +00:00
<summary><strong>Lernen Sie AWS-Hacking von Grund auf mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 15:36:32 +00:00
Andere Möglichkeiten, HackTricks zu unterstützen:
2023-12-31 01:24:39 +00:00
2024-02-10 15:36:32 +00:00
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repositories senden.
2022-04-28 16:01:33 +00:00
</details>
2022-09-01 23:40:55 +00:00
<figure><img src="../../.gitbook/assets/image (3) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
2022-09-01 23:40:55 +00:00
\
2024-02-10 15:36:32 +00:00
Verwenden Sie [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks), um Workflows einfach zu erstellen und zu automatisieren, die von den fortschrittlichsten Community-Tools der Welt unterstützt werden.\
Erhalten Sie noch heute Zugriff:
2022-09-01 23:40:55 +00:00
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}