[리눅스/서비스 관리] NFS 접근 통제 (U-25)

NFS 접근 통제

 

취약점 개요

■ 위험도
- 상

■ 점검 목적
- 접근권한이 없는 비인가자의 접근을 통제함

■ 보안 위협
- 접근제한 설정이 적절하지 않을 경우 인증절차 없이 비인가자의 디렉터리나 파일의 접근이 가능하며, 해당 공유 시스템에 원격으로 마운트하여 중요 파일을 변조하거나 유출할 위험이 있음

점검 및 조치 방법

■ 판단 기준
- 양호 : 불필요한 NFS 서비스를 사용하지 않거나, 불가피하게 사용 시 everyone 공유를 제한한 경우
- 취약 : 불필요한 NFS 서비스를 사용하고 있고, everyone 공유를 제한하지 않은 경우

■ 조치 방법
- 사용하지 않는다면 NFS 서비스 중지, 사용할 경우 NFS 설정파일에 everyone 공유 설정 제거



■ 점검 및 조치 사례


▶ /etc/dfs/dfstab 설정 예문
rw=client, ro=client 형식으로 접속 허용 client 지정
- 사용자의 읽기, 쓰기 권한 접속 허용 : share -F nfs -o rw, ro /export/home/test
- 사용자의 권한 접속 제한 : share -F nfs -o rw=client1:client2, ro=client1:client2 /export/home/test
※ 읽기, 쓰기 권한에 각각 사용자를 설정하여야 읽기, 쓰기 권한 모두 제한 가능

/etc/exports 설정 예문
Step 1) everyone으로 시스템 마운트 금지
# showmount -e hostname 명령어로 확인
Step 2) /etc/exports 파일에 접근 가능한 호스트명 추가
(예) /stand host1 host2 …..
Step 3) NFS 서비스 재구동
# /etc/exportfs -u
# /etc/exportfs -a

■ 스크립트

echo "[ U-42 NFS 접근 통제 ]"																		>>	$COMPUTERNAME 2>&1
echo "[ 1. NFS MOUNT 정보 ]"			                                                                >>	$COMPUTERNAME 2>&1
cat $NFS_MOUNT						                                                                >>	$COMPUTERNAME 2>&1
echo " "																							>>	$COMPUTERNAME 2>&1
echo "[ 2. NFS CONF 내용 - 참고] "											                        >>	$COMPUTERNAME 2>&1
cat $NFS_CONF																						>>	$COMPUTERNAME 2>&1
echo " "																							>>	$COMPUTERNAME 2>&1
echo "U-42 END"																						>>	$COMPUTERNAME 2>&1
echo "======================================================================================"		>>	$COMPUTERNAME 2>&1
echo " "																							>>	$COMPUTERNAME 2>&1
echo " "																							>>	$COMPUTERNAME 2>&1



■ 용어 설명 / 팁
- NFS(Network File System) : 원격 컴퓨터의 파일시스템을 로컬 시스템에 마운트하여 마치 로컬 파일시스템처럼 사용할 수 있는 프로그램임
- NFS 서비스 사용 금지가 원칙이나 불가피하게 사용이 필요한 경우 NFS v2, v3은 평문으로 전송되는 취약점이 있기 때문에 암호화 되는 v4를 사용하는 것을 권고

댓글

Designed by JB FACTORY