article thumbnail image
Published 2021. 2. 21. 19:03

Apache 보안설정 (1)

(주요정보통신기반시설 항목 기준 U-35 ~ U-38)

 

환경구성

서버 버전 : CentOS 7.5.1804

웹서버 버전 : Apache 2.4.6

Burp Suite : v2021.2.1

 

1. [U-35] Apache 디렉토리 리스팅 제거

디렉토리 검색 기능이 활성화 되어 있을 경우, Web 서버 구조 노출뿐만 아니라 백업 파일이나 소스파일, 공개 되어서는 안되는 파일 등이 노출 가능함.

#cat /etc/httpd/conf/httpd.conf

기본적으로 (/var/www/html 디렉토리에 Indexes 옵션이 존재하고 있음

 

/var/www/html/test 디렉터리 URL 입력 시 디렉토리 리스팅이 되는 것을 확인 할 수 있음

해당 행 주석처리 또는 Indexes 옵션 앞에 -추가 설정 후 서비스 재기동

 

디렉토리 노출이 되지않는 것을 확인할 수 있음

2. [U-36] Apache 웹 프로세스 권한 제한

웹 프로세스 취약점 공격으로 Apache 권한이 탈취 당할 경우 Apache 프로세스의 권한이 root이면 시스템 전체의 제어권을 탈취 당해 피해범위가 확산될 가능성이 있음

#cat /etc/httpd/conf/httpd.conf

Apache 2.4.6 기준 기본적으로 프로세스 권한은 Apache 계정으로 등록되어 있음

#ps –ef | grep httpd

Apache 계정으로 구동 중 인 것을 확인할 수 있음

 

 

#cat /etc/httpd/conf/httpd.conf

UserGroup을 별도의 계정으로 변경

 

#ps –ef | grep httpd

서비스 재구동 후 프로세스 확인 시 변경된 계정으로 구동되는 것을 확인할 수 있음

 

 

 

3. [U-37] Apache 상위 디렉터리 접근 금지

상위 경로로 이동하는 것이 가능할 경우 접근하고자 하는 디렉터리의 하위 경로에 접속하여 상위경로로 이동함으로써 악의적인 목적을 가진 사용자의 접근이 가능함

 

#cat /etc/httpd/conf/httpd.conf

AllowOverride 지시자의 초기 값은 None으로 설정되어 있음

이전 디렉토리에 있는 파일 열람 시 가능한 것을 확인할 수 있음

 

#vi /etc/httpd/conf/httpd.conf

AllowOverride 지시자 값을 AuthConfig로 변경

#vi /var/www/html .htaccess

.htaccess 파일 생성 후 인증정보 입력 후 서비스 재기동

 

이전 디렉토리에 있는 파일 열람 시도 시 인증되지 않았다는 메시지 출력

 

해당 페이지 접근 시 인증 창이 출력되는 것을 확인할 수 있음

.htaccess 파일에 등록한 passwords 파일에 설정된 사용자명과 비밀번호 입력 시 인증완료

 

4. [U-38] Apache 불필요한 파일 제거

Apache 설치 시 제공되는 매뉴얼 파일은 시스템 관련정보를 노출하거나 해킹에 악용될 수 있음

#find . | grep manual

Apache 2.4.6 기준 기본경로 하위에 불필요한 매뉴얼 파일 존재하지 않음

 

 

참고

아파치 보안 설정

https://blog.limelee.xyz/entry/%EC%95%84%ED%8C%8C%EC%B9%98%EB%B3%B4%EC%95%88%EC%84%A4%EC%A0%95#direcindexes

 

주요정보통신기반시설 U-37 설정 값 테스트

https://ziscuffine.tistory.com/147

 

복사했습니다!