[리눅스/서비스 관리] Apache 파일 업로드 및 다운로드 제한 (U-40)

Apache 파일 업로드 및 다운로드 제한

Apache 파일 업로드 및 다운로드 제한

 

취약점 개요

■ 위험도
- 상

■ 점검 목적
- 기반시설 특성상 원칙적으로 파일 업로드 및 다운로드를 금지하고 있지만 불가피하게 필요시 용량 사이즈를 제한함으로써 불필요한 업로드와 다운로드를 방지해 서버의 과부하 예방 및 자원을 효율적으로 관리하기 위함

■ 보안 위협
- 악의적 목적을 가진 사용자가 반복 업로드 및 웹 쉘 공격 등으로 시스템 권한을 탈취하거나 대용량 파일의 반복 업로드로 서버자원을 고갈시키는 공격의 위험이 있음

 

 

점검 및 조치 방법

■ 판단 기준
- 양호 : 파일 업로드 및 다운로드를 제한한 경우
- 취약 : 파일 업로드 및 다운로드를 제한하지 않은 경우

■ 조치 방법
- 파일 업로드 및 다운로드 용량 제한 (/[Apache_home]/conf/httpd.conf 파일에 설정된 모든 디렉토리의 LimitRequestBody 지시자에 파일 사이즈 용량 제한 설정)

■ 점검 및 조치 사례

 

  • SOLARIS, LINUX, AIX, HP-UX

Step 1) vi 편집기를 이용하여 /[Apache_home]/conf/httpd.conf 파일 열기
# vi /[Apache_home]/conf/httpd.conf
Step 2) 설정된 모든 디렉토리의 LimitRequestBody 지시자에서 파일 사이즈 용량 제한 설정

파일 용량 제한


■ 스크립트

echo "U-40 START"
echo " "																							>>	$COMPUTERNAME 2>&1
echo "[ U-40 Apache 파일 업로드 및 다운로드 제한 ]"														>>	$COMPUTERNAME 2>&1
if [ `ps -ef | grep httpd | grep -v "grep" | wc -l` -eq 0 ]									
then									
	echo "Apache 미실행중입니다."																		>>	$COMPUTERNAME 2>&1
else									
	if [ `grep -n -i limitrequestbody $HTTPD_CONF | grep -v '#' | wc -l` -eq 0 ]									
	then									
		echo "해당 항목의 설정이 없습니다."																>>	$COMPUTERNAME 2>&1
	else									
		grep -n -i limitrequestbody $HTTPD_CONF | grep -v '#'										>>	$COMPUTERNAME 2>&1
	fi									
fi									
echo " "																							>>	$COMPUTERNAME 2>&1
echo "U-40 END"																						>>	$COMPUTERNAME 2>&1
echo "======================================================================================"		>>	$COMPUTERNAME 2>&1
echo " "																							>>	$COMPUTERNAME 2>&1
echo " "																							>>	$COMPUTERNAME 2>&1


■ 용어 설명 / 팁
※ 불필요한 업로드와 다운로드 : 내부 정책에 맞지 않는 업로드와 다운로드를 말함. 예를 들어 5MB 이상의 파일이나 확장자를 화이트 리스트 방식으로 제한하는 것을 말함

댓글

Designed by JB FACTORY