디렉토리 인덱싱
가. 디렉토리 인덱싱은 index.html, index.asp 등과 같이 웹 서버에서 인덱스 파일로 지정한 파일이 디렉토리에 존재하지 않을경우,
해당 디렉토리의 하위 디렉토리와 파일의 목록을 열람할 수 있도록 하는 기능이다.
나. 인덱싱 기능이 확성화 되어 있을 경우 웹 브라우져 상에 웹 컨텐츠 디렉토리 내용이 그대로 공개되어, 공격자가 특정 디렉토리에
존재하는 파일의 목록 정보를 획득할 수 있으며 이를 다운로드 받을수 있다.
옆에 보는거와 같이
웹주소 URL 다음에
디렉토리 리스팅으로
입력하였을 시
Index of /jsp
하고 해당 폴더들이 존재한다.
이런경우, 보안에 문제가 생기게된다.
말그대로 해킹해가세요..ㅋㅋ
다. 또한 운영 환경에 임시적으로 생성해떤 파일 또는 백업을 목적으로 생성한 파일, 웹 서버 또는 웹 어플리케이션을 설치할 때
테스트 목적의 파일들이 존재할 수 있다. 이러한 파일들이 노출되어 공격자가 다운 받을 경우 환겨설정, 웹 어플리케이션의 소스가
노출되거나 데이터베이스 정보가 노출될 수 있다.
라. 점검방법
1) 해당 웹 페이지의 URL에 디렉토리 경로를 직접 입력하여 디렉토리 내용이 보이는지 점검한다.
2) 웹 어플리케이션 설치 디렉토리 및 웹 디렉토리 이하에서 .bak, .old, .tmp 등의 서비스 제공에 불필요한 파일이나
임시/백업 파일들이 있는지 검색한다.
3) 웹 서버나 웹 어플리케이션 서버 설치 시 자동 생성되는 파일 (예, tomcat-docs, 샘플)등 외부에 정보를 노출할 수 있는
디렉토리나 파일이 존재하는지 검색한다.
마. 시정방법
1) 웹 서버 혹은 웹 어플리케이션 서버에서 디렉토리 인덱싱 기능을 비활성화 시킨다.
[tomcat의 예제]
<!--web.xml-->
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
[apache의 예제]
<!--httpd.conf-->
<Directory "/usr/local/apache/htdocs">
#
#
# This may also be "None", "All", or any combination of "Indexes",
# "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews".
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#수전전 Options Indexes FollowSymLinks MultiViews
수정후 Options FollowSymLinks MultiViews
#
# This controls which options the .htaccess files in directories can
# override. Can also be "All", or any combination of "Options", "FileInfo",
# "AuthConfig", and "Limit"</Directory>
2) 웹 소스가 위치한 웹 디렉토리에서 임시/백업 파일 및 설치 파일의 존재여부를 조사하여 이를 삭제한다.
3) 웹 서버나 웹 어플리케이션 서버 설치시 자동 생성되는 파일 중 외부에 정보를 노출할 수 있는 메뉴얼 파일, 샘플등을 조사하여
이를 삭제한다.
[Tomcat 설정 상태]
[APACHE 설정 상태]
설정 완료 후 Tomcat 과 Apache를 재시작 하기 바란다.