[리눅스/서비스 관리] Finger 서비스 비활성화 (U-19)

Finger 서비스 비활성화

 

취약점 개요

■ 위험도
- 상

■ 점검 목적
- Finger(사용자 정보 확인 서비스)를 통해서 네트워크 외부에서 해당 시스템에 등록된 사용자 정보를 확인할 수 있어 비인가자에게 사용자 정보가 조회되는 것을 차단하고자 함

■ 보안 위협
- 비인가자에게 사용자 정보가 조회되어 패스워드 공격을 통한 시스템 권한 탈취 가능성이 있으므로 사용하지 않는다면 해당 서비스를 중지하여야 함

점검 및 조치 방법

■ 판단 기준
- 양호 : Finger 서비스가 비활성화 되어 있는 경우
취약 : Finger 서비스가 활성화 되어 있는 경우

■ 조치 방법
Finger 서비스 비활성화

● LINUX, AIX, HP-UX, SOLARIS 5.9 이하 버전
Step 1) "/etc/inetd.conf" 파일에서 finger 서비스 라인 #처리(주석처리)
(수정 전) finger stream tcp nowait bin /usr/lbin/fingered fingerd
(수정 후) #finger stream tcp nowait bin /usr/lbin/fingered fingerd

Step 2) inetd 서비스 재시작
#ps -ef |grep inetd
root 141 1 0 15:00:22 ? 0:11 /usr/sbin/inetd -s
#kill -HUP [PID]

SOLARIS 5.10 이상 버전
inetadm -d "중지하고자 하는 데몬" 명령으로 서비스 데몬 중지
#inetadm -d svc:/network/finger:default

LINUX (xinetd일 경우)
Step 1) vi 편집기를 이용하여 "/etc/xinetd.d/finger" 파일 열기
Step 2) 아래와 같이 설정 (Disable = yes 설정)

Step 3) xinetd 서비스 재시작
#service xinetd restart

■ 스크립트

echo "[ /etc/inetd.d finger 존재 확인 ]" 																>>	$COMPUTERNAME 2>&1
echo "--------------------" 																		>>	$COMPUTERNAME 2>&1
if [ -f $INETD_DIR ]									
then									
	if [ `ls -alL /etc/inetd.d/* | egrep "finger" | wc -l` -gt 0 ]
	then
		ls -alL /etc/inetd.d/* | egrep "finger"  													>>	$COMPUTERNAME 2>&1
	else	
		echo "Finger 서비스가 존재하지 않음" 																>>	$COMPUTERNAME 2>&1
	fi
else										
	echo "/etc/inetd.d 디렉터리가 없습니다."                                                             >>	$COMPUTERNAME 2>&1
fi										


echo " " 																							>>	$COMPUTERNAME 2>&1
echo "/etc/inetd.d 내용 " 																			>>	$COMPUTERNAME 2>&1
echo "------------------ " 																			>>	$COMPUTERNAME 2>&1
if [ -f $INETD_DIR ]									
then									
	if [ `ls -alL /etc/inetd.d | egrep "finger" | wc -l` -gt 0 ]
	then
		for VVV in `ls -alL /etc/inetd.d | egrep "finger" | grep -v "ssf" | awk '{print $8}'`
			do
			echo " $VVV 파일" 																		>>	$COMPUTERNAME 2>&1
			cat /etc/inetd.d/$VVV | grep -i "disable" 												>>	$COMPUTERNAME 2>&1
			echo "   " 																				>>	$COMPUTERNAME 2>&1
			done	
	else	
	echo "/etc/inetd.d 디렉터리가 없습니다."                                                             >>	$COMPUTERNAME 2>&1
	fi
else										
	echo "/etc/inetd.d 디렉터리가 없습니다."                                                             >>	$COMPUTERNAME 2>&1
fi										
echo " " 																							>>	$COMPUTERNAME 2>&1
rm -rf service.txt
echo " " 																							>>	$COMPUTERNAME 2>&1
echo "U-36 END"																						>>	$COMPUTERNAME 2>&1


■ 용어 설명 / 팁
- Finger(사용자 정보 확인 서비스) : who 명령어가 현재 사용 중인 사용자들에 대한 간단한 정보만을 보여주는 데 반해 finger 명령은 옵션에 따른 시스템에 등록된 사용자뿐만 아니라 네트워크를 통하여 연결되어 있는 다른 시스템에 등록된 사용자들에 대한 자세한 정보를 보여줌

댓글

Designed by JB FACTORY