[리눅스/서비스 관리] Finger 서비스 비활성화 (U-19)
- 취약점 점검/리눅스
- 2021. 2. 20.
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 명령은 옵션에 따른 시스템에 등록된 사용자뿐만 아니라 네트워크를 통하여 연결되어 있는 다른 시스템에 등록된 사용자들에 대한 자세한 정보를 보여줌