mokpo.tistory.com/10?category=457117
Apache 보안설정 (1)
Apache 보안설정 (1) (주요정보통신기반시설 항목 기준) 환경구성 서버 버전 : CentOS 7.5.1804 웹서버 버전 : Apache 2.4.6 Burp Suite : v2021.2.1 1. [U-35] Apache 디렉토리 리스팅 제거 디렉토리 검색 기능이..
mokpo.tistory.com
Apache 보안설정 (2)
(주요정보통신기반시설 항목 기준 U-39 ~ U-41, U-72)
환경구성
서버 버전 : CentOS 7.5.1804
웹서버 버전 : Apache 2.4.6
Burp Suite : v2021.2.1
1. [U-39] Apache 링크 사용 금지
시스템 자체의 root 디렉터리에 링크를 걸게 되면 웹 서버 구동 사용자 권한으로 모든 파일 시스템의 파일에 접근할 수 있게 되어 “/etc/passwd” 파일과 같은 민감한 파일을 누구나 열람할 수 있게 됨
#ln –s / link
Apache 홈 디렉터리에 / 디렉터리 링크 생성
#cat /etc/httpd/httpd.conf
FoolwSymLinks 옵션이 허용되어 있을 경우
링크 파일로 인한 패스워드 파일 열람 가능한 것을 확인 할 수 있음
#vi /etc/httpd/httpd.conf
해당 행 주석처리 또는 FollowSymLinks 옵션 앞 “–“ 추가 후 서비스 재기동
해당 디렉터리 접근 시 접근 불가한 것을 확인가능
2. [U-40] Apache 파일 업로드 및 다운로드 제한
악의적 목적을 가진 사용자가 반복 업로드 및 웹 쉘 공격 등으로 시스템 권한을 탈취 하거나 대용량 파일의 반복 업로드로 서버 자원을 고갈시키는 공격의 위험이 있음
#vi /etc/httpd/conf/httpd.conf
LimitRequestBody 지사 설정 후 업/다운로드 사이즈 설정(byte 단위)
3. [U-41] Apache 웹 서비스 영역의 분리
웹 서버스 영역과 시스템 영역을 분리시켜서 웹 서비스의 침해가 시스템 영역으로 확장될 가능성을 최소화하기 위함
DocumentRoot 값은 잘알려진 초기 값으로 설정되어 있음
(ex: /var/www/html, /usr/local/apache/htdocs, /usr/local/apache2/htdocs)
#cat /etc/httpd/conf/httpd.conf
기본 설정 값 설정 시 메인 페이지 접속 결과
#vi /etc/httpd/conf/httpd.conf
DocumentRoot 별도의 디렉토리로 변경
설정 변경 후 메인 페이지 접속 결과 최상위 디렉터리가 변경된 것을 확인 할 수 있음
4. [U-72] Apache 웹 서비스 정보 숨김
HTTP 헤더, 에러 페이지에서 웹 서버 버전 및 종류, OS 정보 등 웹 서버와 관련된 불필요한 정보가 노출될 경우 해당 정보를 이용하여 시스템의 취약점을 수집할 수 있음
웹 서비스 정보 숨김 옵션이 적용되지 않았을 경우
서버로부터의 응답 값에서 버전 정보 확인가능
#vi /etc/httpd/conf/httpd.conf
ServerTokens 옵션
Full : 최대한의 정보(웹 서버,운영체제)
OS : 웹 서버의 이름과 버전, 운영체제(기본 값)
Min : 웹 서버의 이름과, Minimum 버전
Minor : 웹 서버의 이름과 Minor 버전
Major : 웹 서버의 이름과 Major 버전
Prod : 웹 서버의 이름
권장설정인 ServerTokens 지시자에 Prod 설정 값 추가
서버로부터의 응답 값에서 버전 정보 확인 불가
5. [번외] Apache 웹 서비스 에러 페이지 설정
에러 페이지 내에 노출되는 에러 코드로 웹 서버의 구조에 대해 파악할 수 있으므로 별도의 에러페이지 설정을 통한 에러 코드 노출을 금함
존재하지 않는 경로 접속 시 404 Not Found 에러 코드 출력
#vi /etc/httpd/conf/httpd.conf
ErrorDocument 지시자에 에러 코드와 코드에 대한 별도의 호출 페이지 설정
설정 후 존재하지 않는 페이지 접속 시도 시 별도의 에러페이지로 리다이렉션