Skip to content

2010.03.28 01:45

안티 루트킷 사용 예

조회 수 11642 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

rootkit은 비정상적으로 서버를 공격하여 해킹을 하였을 때 이후에 보다 쉽게 접속을 하기 위해 백도어나 트로이잔 목마 프로그램을 설치하여 시스템에 숨겨놓은 프로그램을 의미한다.
대부분의 해킹 사고가 발생하였다면 무조건 재설치가 우선되어야 하지만 다양한 파일 무결성 검사나 또는 루트킷 체킹 프로그램(chkrootkit)을 이용하여 검사할 수 있다.

그러나 가장 많이 사용되는 명령어나 핵심 프로그램의 내용을 일부만 변경하여 정상적인 파일로 보이게 만들기 때문에 잡아내기 매우 힘들며 또한 보안을 위해서는 재설치를 해야 한다.
그러나 문제는 해킹 사고가 발생하였는지 조차 파악하지 못하는 경우가 있는데 이때는 주기적으로 루트킷 탐지 프로그램을 사용하거나 파일 무결성 검사로 파악 할 수 있다.

chkrootkit 설치를 통해서 현재 내가 운영하고 있는 시스템에 파일무결성에 문제는 없는지 확인해보자.


1. 다운로드 및 압축해제
http://www.chkrootkit.org 로 접속하여 현재 릴리즈된 소스를 다운로드하고 md5sum을 실행하여 소스의 변경 유무를 검사하고 압축을 해제한다.

2007. 05. 30.일 현재 아래버전이 최근에 나온소스이다.
 chkrootkit 0.47 is now available! (Release Date: Tue Oct 10 2006)

[root@smileserv]# wget ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz

[root@smileserv src]# md5sum chkrootkit.tar.gz
4c6455d202cef35395a673386e4bf01a  chkrootkit.tar.gz

[root@smileserv src]# tar xvfz chkrootkit.tar.gz



2. 환경설정 및 설치
다운받은 파일 압축을 풀고 들어가보면 README 파일이 보인다.
대부분에 소스파일에는 친절하게도 README 파일안에 해당 소스가 무엇인지, 어떻게 설치하는지, 사용되는 옵션및 기타등등 자세히 나와있다.
다만 영어라는게 문제지만;;;;;;;;
아주 영어에 XXX가 아니라면 이정도 간단한 단어 연결이야 무슨말인지 이해가 갈것이다.

[root@smileserv src]# cd chkrootkit-0.47

[root@smileserv src]# ls
ACKNOWLEDGMENTS  README             check_wtmpx    chkdirs.c     chkproc     chkrootkit.lsm  chkwtmp    ifpromisc.c
COPYRIGHT        README.chklastlog  check_wtmpx.c  chklastlog    chkproc.c   chkutmp         chkwtmp.c  strings-static
Makefile         README.chkwtmp     chkdirs        chklastlog.c  chkrootkit  chkutmp.c       ifpromisc  strings.c

[root@smileserv src]# cat README
.................................................
.................................................
.................................................

 5. Installation
 ---------------
 To compile the C programs type:
 # make sense
 After that it is ready to use and you can simply type:
 # ./chkrootkit


설치는 아주 간단하다...
make sense 명령어 입력후 엔터치면 끝이다.

3. chkrootkit 테스트
아래와 같이 실행하면 머가 후다닥 지나간다.

 [root@smileserv chkrootkit-0.47]# pwd
/usr/local/src/chkrootkit-0.47
[root@smileserv chkrootkit-0.47]# ./chkrootkit
ROOTDIR is `/'
Checking `amd'... not found
Checking `basename'... not infected
Checking `biff'... not found
Checking `chfn'... not infected
Checking `chsh'... not infected
Checking `cron'... not infected
...........................................
...........................................



이 제 먼지모를것들이 지나갔는데 이것들이 의미하는것이 무엇인지 알아보자.
infected  :  rootkit에 의해 변형이 됨
not infected  :  어떤 루트킷의 증후를 발견하지 못함 / 이상없음
not tested  :  점검을 실행하지 못함
not found  :  점검한 command가 없다.
※ 검사결과에서 infected가 출력되었다면 rootkit에 의해 변형된 파일이 존재한다는 의미이므로 반드시 세부적인 검사가 필요하며 때에 따라서는 OS를 재설치해야 한다.


4. chkrootkit 옵션
다음은 "chkrootkit" 명령어에서 제공하는 옵션이다.
하나 씩 실행해서 차이점이 무엇인지 비교해 보면 어떻게 다른지 금방 눈에 보일것이다.
-d  :  debug 검사 정보를 출력
-n  :  옵션을 출력
-l   :  검사할때 사용할 리스트를 출력
-q  :  일반적인 검사내용은 생략하며 검사 정보만 출력
-r,p  :  지정한 디렉토리를 최상위 디렉토리로 설정하여 검사하며 여러개를 지정하고자 할때는 -p 옵션을 사용할수 있으나 일반적인 환경에서는 사용되지 않음
-x  :  전문가 모드로 출력
-V  :  버전 정보를 출력


5. 스크립트를 통한 메일전송
대충 chkrootkit이 무엇인지 알았을것이다.
이제는 매일마다 들어가서 체크하기가 귀찮을것이다...
리눅스에는 cron 데몬이라는 아주 유용한 녀석이 시간에 마춰서 명령어를 실행해준다.
간단하게 스크립트를 이용해서 하루에 한번 메일을 통해서 점검결과를 자동전송할수 있게금 설정해보자.

[root@smileserv chkrootkit-0.47]# cd /etc/cron.daily

[root@smileserv chkrootkit-0.47]# cat smileserv.chkrootkit_ckeck
#!/bin/bash
BASE=/usr/local/src/chkrootkit-0.47
cd $BASE
chk=`./chkrootkit`
if [ -n "$chk" ] ;then
       echo $chk | mail -s "My SYSTEM Chkrootkit Result " 사용ID@사용도메인
       echo Finished
fi

 
위와 같이 스크립트 파일을 만들고 테스트삼아 돌려주면 자신에 MAIL로 1통에 반가운메일이 수신된걸 확인하면 끝...........


TAG •

List of Articles
번호 제목 글쓴이 날짜 조회 수
68 리눅스 보안 - 권한설정에 주의해야할 명령어들은 ? l2zeo 2010.03.31 27832
» 안티 루트킷 사용 예 l2zeo 2010.03.28 11642
66 리눅스 - iptables NAT rule ADMINPLAY 2010.03.24 9739
65 Cisco/Tip/라우터,스위치에서 패킷 캡쳐하기 file l2zeo 2010.03.23 16199
64 해킹이 의심될 때 사용되는 명령어들 l2zeo 2010.03.08 9911
63 iptables 리눅스? NETFILTER관련 1 l2zeo 2010.03.08 10196
62 LINUX 해킹당했을 때 대처요령 l2zeo 2010.03.08 8793
61 파일 퍼미션 설정을 통한 로컬 공격 방지 l2zeo 2010.03.08 8240
60 SSH 공격막아내기 방법 l2zeo 2010.03.08 8463
59 Tcpdump 용어 정리 ADMINPLAY 2010.01.30 8560
58 홈페이지 보안 강화 도구(CASTLE) 보급 안내 1 file ADMINPLAY 2010.01.22 8982
57 Kernel 2.4.23 버전 이하에 나온 ptrace 버그에 관한 사항 ADMINPLAY 2009.12.13 8860
56 lsof 활용 가이드 ADMINPLAY 2009.11.30 8368
55 실전 테스트!! 스니퍼 공격 ADMINPLAY 2009.11.30 9837
54 해외에서 접근하는 IP 차단하기 ADMINPLAY 2009.11.30 9329
53 iptables 옵션 및 상태 추적 테이블 및 rule ADMINPLAY 2009.11.30 8930
52 ossec 로그 분석 툴 설치 ADMINPLAY 2009.10.20 11585
51 SSH(Security SHell) 보안쉘 ADMINPLAY 2009.10.20 8461
50 홈페이지 변조 대처법 (FTP 계정을 이용한 아이프레임 코... ADMINPLAY 2009.10.15 9107
49 iframe 이용한 악성코드 삽입, 홈페이지 변조 사고 대비 ... ADMINPLAY 2009.10.15 10881
Board Pagination Prev 1 2 3 4 5 Next
/ 5

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234