sheow13 2023. 12. 26. 16:55
728x90

 

 개요

- 웹 어플리케이션을 사용하고 있는 서버의 미흡한 설정으로 인해 인덱싱 기능이 활성화가 되어있을 경우, 공격자가 강제 브라우징을 통해 서버내의 모든 디렉터리 및 파일에 대해 인덱싱이 가능하고 웹 어플리케이션 및 서버의 주요 정보가 노출될 수 있는 취약점

- 디렉토리 인덱싱 취약점 또는 디렉토리 리스팅 취약점으로 표현

- 웹 취약점 진단 과정에서 보통 Burp Suite Pro, Owasp-zap, Dirbuster, Acunetix 등과 같은 자동화 도구를 사용하여 점검 진행

- 주요정보통신기반시설 웹 취약점 진단 기준으로 08. 디렉토리 인덱싱 취약점에 해당

- OWASP TOP 10 2021 A05. Security Misconfiguration에 해당

 

 디렉토리 인덱싱 Cheat Sheet

수동으로 진단할 경우, 미탐되는 부분들이 생길 위험이 크기 때문에 서버에 부하가 되지 않을 정도로 threads를 설정하여 자동화 점검 도구 등을 사용하는 것이 좋을 것으로 판단
예 시
/icons/
/images/
/pr/
/adm/
/files/
/download/
/files/attach/images/
/data/
/%3f.jsp
/phpmyadmin/
/administrator/

 

 

디렉토리 인덱싱을 활용한 공격 예시

- 정보 수집 과정에서 디렉토리 인덱싱 취약점이 있는 것을 확인. 추가로 불필요한 메소드(Ex, PUT, DELETE)가 허용되어 있다는 사항을 확인

-  PUT 메소드를 활용하여 웹쉘 업로드 후, 디렉토리 인덱싱 취약점을 활용해 업로드한 웹쉘로 이동 후 실행시 정상 동작 확인

- 자세한 과정은 하기 링크 참조

- https://sheow13.tistory.com/13

 

vulnuhub [Sick0s]

 실습 목표 - 이 실습의 목표는 칼리 리눅스로 Sick0s root 권한 탈취가 목표 Step 1. Sick0s 환경 Virtual Box에서 부팅 시, login 페이지가 뜨나 계정 정보를 알고 있지 않음 - 해당 서버에 취약점을 이용

sheow13.tistory.com

 

[디렉토리 스캔 도구인 dirb를 통해 접근가능한 디렉토리 확인]

 

[dirb를 통해 확인된 경로 접근 시, Directory Indexing 취약점 확인]

 

[PUT 메소드를 통해 웹쉘 업로드 시, 정상적으로 생성됨을 확인]

 

[생성된 웹쉘 경로에서 명령어 실행 시, 정상 동작 확인]

 

 디렉토리 인덱싱  점검 방법

수동 점검

- 웹사이트의 사용자 인수값을 입력받은 애플리케이션에 디렉토리인덱싱 Cheat Sheet 입력 후 디렉토리 인덱싱 여부 확인

 

자동화 도구를 통한 점검

- 자동화 도구(Ex, Burp Suite Pro, Acunetix )를 사용하여 점검하고자 하는 사이트에 디렉토리 인덱싱 취약 여부 점검

- 아래 예시는 Kali linux에서 제공하는 Dirbuster 도구를 예시로 들었으며, 자세한 사항은 하기 링크 참조

 

 

디렉토리 인덱싱 대응 방안

1. 웹 서버에 디렉토리 브라우징 비활성화

  IIS

    - "IIS 관리자" 접속 → "Directory Browing" 클릭 → "Actions"에서 "Disable" 클릭

 

[IIS 관리자 접속 후 Directory Browing 클릭]
[Actions에서 Disable 설정 클릭]

 

  Apache

    - Apache 설정 파일인 "httpd.conf"에서 루트 디렉터리(/)에 포함된 모든 디렉터리에 대한 인덱싱을 Options지시자의 Indexes 옵션 제거함으로써 인덱싱 기능 비활성화

더보기

<Directory />
       Options Indexes         → 삭제 또는 "-Indexes"로 변경
       AllowOverride None
       Order allow, deny
       Allow from all

</Directory>