IRP Hook을 이용한 Rootkit 분석



월간 마이크로소프트웨어 2008년 3월호

[실전강의실|Reverse Engineering]
IRP Hook을 이용한 Rootkit 분석


강병탁 window31@nexon.co.kr, www.window31.com | 바이너리 취약점 분석 업무를 하고 있다. 안티 크래킹/안티 디버깅 엔진 개발을 다년간 해왔으며 시스템 프로그래밍과 리버스 엔지니어링에 관심이 많다. 악성 코드나 해킹툴이 내부에 담고 있는 천재적인 알고리즘에 감탄하며 오늘도 IDA를 돌린다.


루트킷을 개발하는 데에 있어 최고의 희열감은 무엇일까? 그것은 내가 만든 루트킷을 사람들이 알아채지 못하고 발견하지 못한다는 데에 있다. 은밀함이라는 주제는 루트킷의 메인 생명력이자 기술 그 자체이기도 하다. 루트킷도 종류가 다양해지고 구현 방법 역시 많아지고 있는 현재의 해킹/보안 풍토에서 최신 루트킷 트렌드를 찾는 것은 매우 중요하다. 그중에서 IRP Hook을 이용한 루트킷은 얼마만큼의 가치가 있으며 어느 정도의 효용성이 있는지 그리고 그것을 무력화 할 수 있는 방법은 어떤 것이 있는지 생각해보자.



연재 가이드
운영체제| 윈도우2000/XP
사용도구| Visual Studio, IDA, WinDBG
기초지식| C/C++, ASM, Win32 API, DDK
응용분야| 리버스 엔지니어링/시스템 프로그래밍/해킹/보안


루트킷으로써의 가치

투명인간이라는 존재의 목적은 나의 존재를 남들에게 알리지 않는 것에 있다. 그렇다면 남들에게 나의 존재를 알리지 않기 위한 목적은 무엇일까? 당연히 남들 몰래 무언가를 행하고 싶어서일 것이다. 따라서 투명인간은 아무도 몰래 자신이 원하는 행동을 달성하기 위해 생겨난 개념이다. 남들 몰래 무언가를 행한다는 것은 참으로 매력적인 일이다. 몰래 선행을 베풀 때에도 그렇고 몰래 나쁜 행동을 할 때에도 그렇다. 좋은 의미건 나쁜 의미건 투명인간은 은밀함이라는 명제로부터 출발된다.

따라서 이 같은 투명인간이 되기 위한 전제조건은 당연히 아무에게도 발견되지 않아야 한다는 것이다. 만약 투명인간을 발견할 수 있는 대응책이나 솔루션이 범람해 있다면 그 투명인간은 더 이상 은밀함으로서의 가치가 없어진 상태라 할 수 있다. 따라서 투명인간은 그 은밀함이 쉽게 발견되지 않아야 하며 그 기술은 남들이 금방 알아차리지 못하는 것이어야 한다. 루트킷도 마찬가지다.

루트킷과 투명인간은 은밀함이라는 1차적 목표에서부터 가치가 부합한다. 그리고 기술론적인 부분도 역시 마찬가지다. 현재 루트킷을 만들기 위한 현재 굉장히 많은 방법론이 알려져 있다. 하지만 그에 따라 루트킷을 진단할 수 있는 많은 기법이나 솔루션도 많이 등장해 있는 상황이다. 따라서 투명인간의 은밀함과 마찬가지로, 루트킷 그 본연의 가치를 더욱 발산시키기 위해서는 아무도 알고 있지 못하는 기술로 루트킷을 구현해야 한다. 물론 소수가 알고 있는 기술이라 하더라도 대중에게 알려져 있지 않은 기술, 그리고 그에 대한 대응 솔루션이 없는 기술로 구현해야 하는 것이 필수적이다. 또한 그래야만 더욱 루트킷으로써의 완벽에 다가갈 수 있다.


pdf 다운로드
http://imaso.co.kr/?doc=articledb/pdf_index.html&v2=1&keywords=%B8%B6%BC%D2DB%3BPDF+%BC%AD%BA%F1%BD%BA


목차)
1. 루트킷으로써의 가치
2. SDT Hook은 이미 구식 기술
3. IRP Hook의 르네상스
4. IRP Hook을 사용한 악성 코드 분석
5. IRP Hook을 무력화 시켜 보자
6. 보안 관계자의 자세

Posted by window31


트랙백 보낼 주소 : http://window31.com/trackback/125 관련글 쓰기

댓글을 달아주세요

  1. 2008/03/03 14:13
    댓글 주소 수정/삭제 댓글
    3회가 끝은 아니죠 'ㅅ'??

    무지무지 재밌고 유익하게 보고 있습니다 +ㅅ+)/
    • 2008/03/04 01:42
      댓글 주소 수정/삭제
      네, 올해는 리버싱 칼럼을 계속 쓸 거 같네요 ㅎㅎ
      잘 봐주고 계신다니 감사합니다 ^^
  2. 2008/03/03 20:14
    댓글 주소 수정/삭제 댓글
    앗~ 오늘 마소 3월호에서 본 기사인데, window31님의 기사였군요. ^^)/~ 좋은 내용 많이 부탁드립니다. >ㅁ<;)/~
    • 2008/03/04 01:42
      댓글 주소 수정/삭제
      까마귀님 글도 재미있게 잘 보고 있어요 ㅎㅎ

BLOG main image
by window31

카테고리

분류 전체보기 (281)
Reverse Engineering (21)
C, C++ (20)
Kernel (8)
Guitar (19)
잡담 (77)
etc (8)
who am i (8)
보안 이야기 (88)
Tools (3)
월간 마이크로소프트웨어/그.. (28)

글 보관함