chkrootkit (http://www.chkrootkit.org/)
1) 기능
시스템내의 바이너리 파일들(/bin/,/sbin/,/usr/bin/,/usr/sbin/ 등의 실행파일)의 변조 여부를 확인한다. 시스템 파일을 확인하는 chkrootkit 과 현재 실행주인 프로세스들을 검사하는 chkproc 등이 있다.
2) 설치방법 (자세한 사항은 README 파일참조)
# make sense
# ./chkrootkit
컴파일된 실행파일들을 /usr/local/bin 등에 넣어준다.
# find . -perm 755 -a -type f -exec mv {} /usr/local/bin \;
3) 사용방법
해커에 의해 chattr 속성이 걸려있어 삭제또는 변경이 불가능하게 되어 있는 파일이 있는지 확인한후 체크루트킷을 돌린다.
# lsattr /usr/bin/* /usr/sbin/* /bin/* /sbin/* | awk -F\ ‘!/————-/ {print $2}’
# chkrootkit
-q : 의심가는 파일들만 출력
chkproc은 ps 명령으로 PID가 보이지 않는 프로세스들을 검출해 낼수 있다.
# chkproc -v
아래는 chkproc 명령을 사용하여 해당 프로세스들이 실행중인 파일을 찾아내는 스크립트이다.
——————————————————————————
#!/bin/bash
chkproc=”/usr/local/bin/chkproc”
PIDS=$($chkproc -v | grep “PID” | grep “/” | awk -F”(” ‘{print $1}’ | awk ‘{print $2}’)
for PID in $(echo $PIDS)
do
echo -n “PID[$PID] “
ls -al /proc/$PID | grep exe | awk ‘{print “exe -> ” $11}’
done
——————————————————————————
Rootkit Hunter (http://www.rootkit.nl/)
1) 기능
백도어나 루트킷을 탐지하며 일반적으로 루트킷이 사용하는 파일 및 숨김 파일의 존재여부를 판별해준다. 실행시 관리자에게 각 파트별로 체크사항을 보여주는 리포트기능이 뛰어나며 SOLARIS를 제외한 대부분의 UNIX를 지원한다. 또한 업데이트 역시 빠르다.
2) 설치방법
파일 압축을 푼후에 다음의 명령을 사용하여 설치한다.
# ./installer.sh –layout default –install
3) 사용방법
최신의 정보를 업데이트한후에 실행한다.
# rkhunter –update
# rkhunter -c
-c : –checkall 옵션
-sk : –skip-keypress 결과 리포트중에 확인 키입력을 받지 않는다.
–update : 업데이트
–createlogfile : /var/log/rkhunter.log 에 로그를 남긴다.
–cronjob : 클론탭 모드로 동작한다.(컬러레이아웃을 제거한다.)
–report-warnings-only : 문제가 되는 사항만 출력한다.
OSSEC (http://www.ossec.net/)
1) 기능
앞의 체크루트킷 프로그램과 달리 시스템상 데몬으로 동작하면서 지속적으로 시스템주요 파일 및 로그들을 확인하고, 외부공격에 바로 대응(active-response) 할 수 있도록 설정이 가능하다. 관리자에게 실시간으로 메일을 전송한다.
2) 설치방법
파일 압축을 푼후에 다음의 스크립트를 실행시킨다.
설치시 ‘local’ 을 선택해서 현재 시스템을 감시하도록 한다. (server : 다른시스템도 감시)
# ./install.sh
3) 사용방법
설치하면 기본적으로 rc.local 에 등록되어 동작되게 되어있다. 수동으로 시작하려면 다음과 같이 해주면 된다.
# /var/ossec/bin/ossec-control start