본문 바로가기

WEB/NGINX

Nginx 보안 취약점

# DocumentRoot 영역 분리

최초에 nginx 설치 시 /usr/share/nginx/html를  DocumentRoot 디렉터리로 사용

 

해당 html 디렉터리는 공격받기 쉬운 문서들 및 공격에 이용될 수 있는 시스템 관련 정보도 포함되어 있기 때문에 필히 변경이 필요

 

 

조치 방법

최초 설치 시 설정되는 root 경로 말고 커스텀 경로로 변경

/usr/share/nginx/html → /usr/local/nginx/html

수정 후 정상 기동 확인 및 호출 테스트

 

# Symbolic Link 사용 제한

어느 WEB Server든 공통적으로 가지고 있는 보안 취약점 사항인 symbolic link에 대한 사용을 제한하는 설정을 필수적으로 해야 한다.

(링크를 통해 편의성은 제공 가능하지만 관리자 말고 다른 일반 사용자들도 시스템의 중요 파일에 접근할 수 있는 보안 문제를 발생시킬 수 있기 때문)

 

조치 방법

nginx.conf 파일에 disable_symlinks 설정 적용

disable_symlinks on;

 

 

# 파일 업로드 및 다운로드 용량 제한 설정

불필요한 파일의 대량 업로디 및 다운로드 시 서비스에 영향을 미칠 수 있기 때문에 용량 제한 설정 필요

 

 

조치 방법

ex)

client_max_body_size 20M;

 

제한 설정의 용량같은 경우 애플리케이션 및 시스템의 환경에 맞게 설정

 

 

# Directory Listing 제거

디렉터리 요청 시 해당 디렉터리에 기본 문서(index.html)가 존재하지 않을 경우 디렉터리 내 모든 파일 목록을 화면에 보여주는 기능으로 apache 기반의 OHS에서도 동일하게 나타나는 보안 취약점 부분

 

해당 기능이 비활성화 되어 있지 않을 시 외부에서 해당 폴더 내의 모든 파일에 대한 접근이 가능하기 때문에 치명적인 보안 취약점이 될 수 있음

 

조치 방법

nginx.conf 파일에 autoindex off 설정 추가

autoindex off;

'WEB > NGINX' 카테고리의 다른 글

NGINX Log 설정  (0) 2024.10.31
NGINX Health Check  (0) 2024.10.30
HTTP to HTTPS Redirect  (0) 2024.07.31
13: Permission denied while connecting to upstream  (0) 2024.07.30
nginx & WAS 연동  (0) 2024.07.30