kkamagi's story

IT, 정보보안, 포렌식, 일상 공유

Cyber Security

rootkit

까마기 2014. 9. 19. 17:34
728x90
반응형
Rootkit 이란 ?

- 루트킷(Rootkit)은, 쉽게 말하면 바이러스(Virus) 개발자들이 백신 진단을 우회하기 위하여 사용자 PC에 설치하는 악성코드의 일종으로, Rootkit이라는 이름은 '리눅스에서 Root 권한을 취득한 후, 다음에 또 쉽게 루트 권한을 딸 수 있게 하는 도구…' 라는 유래에서 생겨났습니다. 요즘 대부분의 바이러스와 악성코드들은 루트킷을 시스템에 설치하여 프로세스와 파일 등을 보호합니다.

루트킷은 백신의 자체 보호 기능과 비슷한 원리로 동작하므로 사실상 백신을 우회하는 것도 이론상 가능한 일입니다. 루트킷은 주로 후킹(Hooking) 이라 불리는 방식으로 동작하는데요. 후킹의 개념은 대략 이렇습니다.

윈도우에서 프로그래밍하는 프로그래머들은 특정 기능을 구현하기 위해 '함수'라는 것을 만들거나 사용하고, 윈도우에서는 몇몇 시스템 기능을 가진 '함수'라는 개념을 API라는 이름으로 기본 제공하고 있습니다. 이 API을 사용하는 것을 루트킷이 가로챈다면, 원하는 작업을 달성할 수 있을 것입니다.

예를 들어 작업 관리자 프로그램이 프로세스 목록을 뽑아오기 위해 ProcessList 라는 함수를 사용한다면, 루트킷은 이 함수를 가로채어(Hooking) 마치 자신의 프로세스가 없었던 것처럼 결과를 조작하여 속입니다. 

지금까지의 루트킷 중 가장 무서운 루트킷은 세가지로 압축될 수 있는데요.
Rustock 루트킷과 MBR 루트킷, 가상화 루트킷이 바로 그 예입니다.

더쉽게 설명하자면 시스템 실행파일,시스템라이브러리를 교체하거나 커널 모듈에 인스톨되는 형식입니다. 그래서 시스템에서 무슨일이 일어나는지(해킹을 당하는지) 시스템적으로 정상으로 나타나게 만드는것이죠. 아무도모르게 정보를 빼돌린다는 형식입니다..
루트킷 자체가 프로그램이 아닌 바이러스라고 생각하시면 됩니다.

* Linux 시스템에서 chkrootkit을 이용한 점검

wget ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz

tar xvfz chkrootkit.tar.gz

cd chkrootkit-0.50/

make sense

./chkroot


또는


./chkrootkit -q            : 감염된 프로세스만 출력

./chkrootkit | grep INFECTED




* Fcheck로 점검

- Fcheck 검색 후 다운로드

# yum -y install gcc

- Virus : file이나 memory에 기생하며 file 손상 및 변조를 일으킨다. 이는 곧 파일의 실행 방지를 의미
- Worm : 벌레 -> 자기 증식
(Worm은 때려잡을 수 있으나 취약점을 상대로 공격이 들어오기 때문에 취약점을 막아주는 게 목표)
- Trojan (트로이목마) : 컴퓨터에 숨어 있다가 사용자의 정보를 몰래 유출하는 악성코드의 일종, 정상적인 파일(게임, 응용프로그램 등)에 포함되어 함꼐 설치되는 경우가 많음
- Rat
- Backdoor : 해커가 이용자 몰래 컴퓨터에 접속하여 악의적인 행위를 하기 위해 설치해 놓은 출입통로 역할을 하는 악성코드

* Rootkit Hunter

# tar xvfz rkhunter-1.3.8.tar.gz
# cd rkhunter-1.3.8
# ./installer.sh --install --layout /usr/local --install
또는
# ./installer.sh --install --layout default --install
# rkhunter --update
# cd /usr/local/bin

# ./rkhunter -c
# ./rkhunter -h
# history



반응형