Directory Listing

2026. 3. 4. 21:49·Web Study
반응형

Directory Listing

웹 서버가 특정 디렉터리(폴더)에 대해 기본 문서(index.html, index.php 등)을 찾지 못했을 때, 그 폴더 안에 있는 파일/하위 디렉터리 목록을 그대로 보여주는 기능

 

발생원인

주된 원인은 서버 설정 때문이다.

 

대표적으로

  • 해당 디렉터리에 index 파일이 없음
  • 웹 서버에서 자동 인덱싱(autoindex) 기능이 켜져 있음
  • 접근 제어가 제대로 설정되지 않음
  • 개발/테스트용 디렉터리를 운영 환경에 그대로 둠

즉, 서버가 보여줄 메인 문서가 없으니, 대신 폴더 안 목록이라도 보여주자 라고 동작하는 것이다.


어떤 서버에서 보이나

Apache

: Apache에서는 Options Indexs 설정이 있으면 디렉터리 목록이 보일 수 있다.

 

Nginx

: Nginx에서는 autoindex on; 이 설정되어 있으면 디렉터리 목록이 노출된다.

 

특정 서버만의 문제가 아니라 어떤 웹 서버든 설정 실수로 발생 가능하다.


위험 수준

Directory Listing 자체가 바로 원격 코드 실행 같은 치명점은 아닐 수 있지만, 정보 노출(Information Disclosure) 관점에서 매우 위험하다.

☞ 공격자 입장에서 몰라야 할 파일과 경로를 한 번에 확인할 수 있기 때문

 

1. 민감 파일 발견 가능

 

  • 백업 파일: backup.zip, site.tar.gz
  • 설정 파일: config.bak, .env.old
  • 로그 파일: error.log
  • 테스트 파일: test.php, debug.txt
  • 데이터 덤프: db.sql
  • 문서 파일: admin-guide.pdf

2. 공격 표면 파악 쉬워짐

디렉토리 구조를 보면서 

  • 업로드 경로
  • 백업 위치
  • 오래된 소스 파일
  • 개발자가 남긴 파일

같은 것들을 쉽게 볼 수 있고, 즉, 정찰하는 단계가 쉬워진다.

 

3. 취약점 연계

Directory Listing은 다른 공격의 출발점이 되는 경우가 많다.

  • 특정 스크립트 파일 발견
  • 백업 파일 다운로드
  • 업로드된 파일/디렉터리 확인
  • DB 정보나 관리자 경로 발견 

실무 사례

1. 업로드 폴더

  • /uploads/
  • /files/

사용자가 올린 파일 목록이 그대로 노출될 수 있음

2. 백업 폴더

  • /backup/
  • /old/

운영자가 예전 파일을 잠깐 올려놨다가 잊어버린 경우가 많다.

3. 정적 파일 폴더

  • /assets/
  • /downloads/

의도적으로 공개한 파일만 있어야 하는데, 다른 문서까지 섞여 들어가는 경우가 있다.

4. 개발/테스트 경로

  • /test/
  • /dev/
  • /temp/

개발 흔적이 운영 서버에 남아 있을 수 있다.


점검 방법

웹에서 접근 시도

  • https://target.com/uploads/
  • https://target.com/backup/
  • htps://target.com/images/

Index of / ... 형태가 뜨면 directory listing 가능성이 크다.


방어방법

1. 디렉터리 목록 기능 비활성화

가장 기본적인 대응방법이다.

Apache

  • Options -Indexs

Nginx

  • autoindex off;

2. index 파일 배치

해당 폴더에 index.html 등을 둬서 목록 대신 기본 페이지가 나오게 할 수 있다.

3. 접근 제어 적용

민감한 디렉터리는 인증/인가 또는 서버 레벨 파단을 적용해야 한다.

  • /backup/
  • /admin/
  • /internal/

4. 민감 파일 웹 루트 밖으로 이동

백업본, 설정 파일, DB 덤프는 애초에 웹에서 직접 접근 가능한 경로 밖에 둬야 한다.

5. 불필요한 파일 제거

운영 서버에는 테스트 파일, 덤프 파일, 임시 파일 같은 것들을 남겨두지 않는 것이 좋다.

 

 

반응형

'Web Study' 카테고리의 다른 글

Host Split Attack  (0) 2026.03.04
HTTP Session Hijacking  (0) 2026.03.04
Parameter Tampering Attack  (0) 2026.03.04
JS Obfuscation  (0) 2026.03.03
AWK Code Injection  (0) 2026.02.20
'Web Study' 카테고리의 다른 글
  • Host Split Attack
  • HTTP Session Hijacking
  • Parameter Tampering Attack
  • JS Obfuscation
y3onbug5
y3onbug5
y3onbug5 님의 블로그 입니다.
  • y3onbug5
    y3onbug5 님의 블로그
    y3onbug5
  • 전체
    오늘
    어제
    • 분류 전체보기 (167) N
      • Alpacahack (19) N
      • Dreamhack 워게임 (49)
        • Lv.1 (40)
        • Lv.0 (4)
        • LV.2 (3)
        • LV.3 (2)
      • [Dreamhack] Web Beginner (3)
      • [Dreamhack] Web Hacking (17)
        • 웹 기초 지식 (4)
        • Cookie & Session (2)
        • Cross-Site Scripting(XSS) (1)
        • Cross-Site Request Forgery (1)
        • SQL Injection (4)
        • NoSQL Injection (2)
        • Command Injection (1)
        • File Vulnerability (1)
        • Server-Side Request Forgery (1)
      • [Dreamhack] Web Hacking Client-Side (10)
        • XSS Filtering Bypass (2)
        • Content Security Policy (CSP) (2)
        • CSRF,CORS Bypass (2)
        • Client-Side Template Injection (CSTI) (1)
        • CSS Injection (1)
        • Relative Path Overwrite (RPO) (1)
        • DOM Vulnerability (1)
      • [Dreamhack] Web Hacking Server-Side (15)
        • SQL Injection Advanced (4)
        • SQL Injection Advanced - Fingerprinting (2)
        • NoSQL Injection Advanced (3)
        • Command Injection Advanced - Web Servers (3)
        • File Vulnerability Advanced - Web Server (3)
      • [Dreamhack]Black-Box Penetration Testing (15)
        • DreamCommunity Penetration Testing (11)
      • [Dreamhack] LLM (2)
        • [Dreamhack] LLM과 프롬프트 엔지니어링 (2)
      • Web 공부 (4)
      • Web Study (15)
      • JavaScript (17)
        • 기초 (12)
        • 중급 (4)
      • 웹 개발(Flask) (0)
      • [Security First] web 기초교육 (1) N
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    cve
    hacking
    드림핵
    CSRF
    web
    xss
    JS
    DreamHack
    LLM
    alpacahack
    webhacking
    JavaScript
    webstudy
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
y3onbug5
Directory Listing
상단으로

티스토리툴바