출고예상일 안내
주문하신 상품이 한국에서 현지 배송을 위한 출고단계가 이루어질 것으로 예상되는 날짜입니다. 상품을 준비하는 과정에서 내부적인 사정으로 인해 출고예상일에 다소 오차가 생길 수 있습니다.
여러 상품(예약상품포함)을 함께 주문하신 경우 출고예상일이 가장 늦은 날짜에 맞춰 함께 배송됩니다.

ISBN : 9788960770256 / 353쪽 188 x 250 (㎜)
이 상품에 궁금하신점이 있으세요? 1:1상담문의

-
코리아교육그룹 교육연구소
-
발리아파 락시마난, 하네스 하프케
-
클리커, 이희영, 강민혁
- 19,800
- 37,800
- 20,700
- 22,500
- [시리즈] 에이콘 윈도우 시스템 프로그래밍 시리즈 [20]
- [시리즈] 에이콘 해킹 보안시리즈 [109]
출판사 리뷰
출판사 서평 rootkit.com의 그렉 호글런드와 제임스 버틀러는 블랙 햇에서 루트킷과 관련한 유명한 교육을 만들고 꾸준히 강의도 해오고 있다. 이 책에서는 그들이 지금까지 공개한 바 없는 루트킷 기술들을 다루고? 있다. 어떻게 하면 공격 시스템에 침투해서 몇 년 동안이나 탐지되지 않을 수 있는지 배울 수 있다. 저자들은 윈도우XP와 윈도우2000의 커널 조작 방법을 보여준다. 그리고 윈도우 서버 2003이나 리눅스, 유닉스에 쉽게 적용할 수 있는 공격 개념을 설명한다. 이 책에 나와있는 다운로드 가능한 다양한 예제를 통해 루트킷 프로그래밍... rootkit.com의 그렉 호글런드와 제임스 버틀러는 블랙 햇에서 루트킷과 관련한 유명한 교육을 만들고 꾸준히 강의도 해오고 있다. 이 책에서는 그들이 지금까지 공개한 바 없는 루트킷 기술들을 다루고 있다. 어떻게 하면 공격 시스템에 침투해서 몇 년 동안이나 탐지되지 않을 수 있는지 배울 수 있다. 저자들은 윈도우XP와 윈도우2000의 커널 조작 방법을 보여준다. 그리고 윈도우 서버 2003이나 리눅스, 유닉스에 쉽게 적용할 수 있는 공격 개념을 설명한다. 이 책에 나와있는 다운로드 가능한 다양한 예제를 통해 루트킷 프로그래밍 기술을 배울 수 있으며, 운영체제 드라이버나 디버거 같은 다양한 분야의 보안 툴 제작에 도움을 얻을 수 있다. ★ 이 책에서 다루는 내용 ★ ■ 원격 명령이나 제어, 소프트웨어 감청에서 루트킷의 역할 ■ 프로세스, 파일, 디렉토리를 숨길 수 있는 커널 루트킷 제작방법 ■ 후킹, 런타임 패치, 커널 오브젝트 조작 같은 루트킷의 핵심적인 프로그래밍 기술 ■ 계층 드라이버를 이용한 키보드 스니퍼와 파일 필터 드라이버 구현 ■ 루트킷 공격을 방어하기 위한 루트킷 탐지나 호스트 기반 침입 방지 시스템 제작 방법 루트킷의 개념은 리눅스를 비롯한 다양한 운영체제에 적용되지만 이 책에서는 윈도우 루트킷만을 설명한다. 그 중에서도 특히 커널 루트킷에 초점을 맞춘다. 커널 루트킷이 가장 탐지하기 어렵기 때문이다. 대부분의 알려진 윈도우 루트킷은 유저 모드 루트킷이다. 이는 알려지지 않은 윈도우 커널의 복잡한 동작 방식을 이해하지 않아도 되므로 그만큼 구현이 쉽다. 이 책은 특정한 실제 루트킷을 다루기보다는 모든 루트킷이 사용하는 일반적인 접근 방법을 설명한다. 각 장마다 기본적인 기술 개념과 목적을 설명하고 이어서 샘플 코드를 이용해 그것을 어떻게 구현하는지를 보여준다. 이렇게 제공된 정보를 이용해 여러분은 샘플 코드가 다양한 작업을 수행하도록 확장시킬 수 있다. 커널 레벨에서는 여러분이 상상할 수 있는 모든 작업을 수행하도록 할 수 있다. ★ 이 책의 대상 독자 ★ 이 책은 컴퓨터 보안에 관심이 있고 정확한 시각으로 보안 위협을 바라보고자 하는 사람들을 대상으로 한다. 침입자가 어떤 방법으로 컴퓨터 시스템에 대한 접근 권한을 획득하는지 설명하는 책들은 많지만 일단 공격자가 그런 권한을 획득하면 어떤 일이 발생할 수 있는지 설명하는 책들은 많지 않다. 이 책은 공격자가 공격 대상 시스템에서 은닉하기 위해 무엇을 할 수 있는지를 설명할 것이다. 마이크로소프트를 포함한 대부분의 소프트웨어 제조사들은 루트킷을 그렇게 심각하게 받아들이지 않고 있다. 이 점이 바로 우리가 이 책을 출판하게 된 계기라고 할 수 있다. 이 책의 내용은 루트킷이나 운영체제 분야에 수년간 종사해 온 사람들에게는 그리 혁신적인 것은 아니지만 대부분의 사람들에게 루트킷이 대단히 심각한 위협이라는 것을 보여주고 있다. 또한 여러분의 바이러스 스캐너나 데스크톱 방화벽만으로는 충분하지 않다는 사실을 깨닫게 하며, 루트킷이 여러분의 시스템에 침투해서 몇 년 동안이나 몰래 존재할 수 있다는 것을 보여준다. 루트킷 정보를 최대한 잘 전달하기 위해 우리는 공격자의 입장에서 전반적으로 이 책의 내용을 작성했지만 마지막 부분에서는 방어적인 측면의 내용으로 채워진다. 이 책을 통해 공격자의 목적과 기술을 배워 나감으로써 여러분은 시스템의 약점과 그것을 보완하는 방법에 대해 알게 될 것이다. 또한 이 책은 여러분의 시스템 보안성을 향상시키고 보안 소프트웨어 구입시에 합리적인 결정을 내릴 수 있도록 도와줄 것이다. ★ 소스코드 다운로드 ★ 이 책에서 제시하는 대부분의 소스 코드는 rootkit.com을 통해 다운로드할 수 있으며, 책 전반에 걸쳐 각 예제 소스를 다운로드할 수 있는 URL을 알려 주고 있다. 여러 루트킷 제작자들 또한 rootkit.com 사이트에 그들의 연구 결과를 올리기 때문에 여러분은 rootkit.com을 통해 최신의 유용한 기술을 접할 수 있을 것이다. 이 책에서 사용된 소스 코드와 프로그램은 http://www.acornpub.co.kr/book/rootkit에서도 내려받을 수 있다. < 추천의 글 > 사이버 보안 종사자가 루트킷의 위협을 이해하기 위해 꼭 읽어야 할 필독서 마크 루시노비치, 윈도우 IT 프로 / Windows & .NET Magazine 편집자 루트킷을 주제로 한 서적은 이 책이 유일하다. 윈도우 보안 연구자나 보안 프로그래머의 흥미를 끌기에 충분하다. 최신 기술을 매우 상세히 설명하며, 책에 실린 기술 정보도 무척 훌륭하다. 또한 콘텐츠의 기술적인 수준이 높고 많은 시간을 투자한 구체적인 구현 예도 매우 멋지다. 정말 탁월한 책이다. 토니 보츠 / 보안 컨설턴트 겸 엑스티빅스 사의 CEO 윈도우 보안 분야 관련자라면 반드시 읽어야 할 책이다. 보안 전문가, 윈도우 시스템 관리자, 윈도우 시스템 프로그래머라면 루트킷 개발자들이 사용하는 기술에 대해 관심이 많을 것이다. IT와 보안 전문가들이 최신 이메일 바이러스나 그 달의 보안 패치 설치 여부만을 걱정하고 있을 때, 호글런드와 버틀러는 윈도우 운영체제을 위협하는 은닉성 높은 루트킷에 눈을 뜨게 해줬다. 여러분이 맡고 있는 네트워크나 시스템 공격을 제대로 방어하려면 무엇보다도 공격에 사용되는 기술을 파악해 둬야 한다. 제니퍼 콜드 / 보안 컨설턴트, 저자 겸 강사 누군가에게 점령당한다는 것은 정말 최악의 사건이다. 루트킷에 대한 최초의 서적이자 호글런드와 버틀러가 저술한 이 책을 읽으면 점령 당한다는 것이 무엇을 의미하는지 알게 될 것이다. 루트킷은 악의적인 해킹 툴인 디컴파일러, 디스어셈블러, 오류 삽입 엔진, 커널 디버거, 페이로드 수집기, 커버리지 툴, 실행 흐름 분석 툴 등의 정점에 위치해 있다. 이 책은 공격자가 루트킷을 어떻게 감쪽같이 숨기는지를 설명한다. 루트킷은 정말 강력한 차세대 공격 기술이다. 다른 종류의 악성 코드와 마찬가지로 루트킷은 은닉 기능을 훌륭히 수행한다. 즉 후킹이나 트램펄린(trampolines)을 이용하거나 패치를 수행함으로써 시스템 감시자가 알아차리지 못하게 한다. 따라서 시스템의 동작을 모니터링하는 일반적인 프로그램으로는 이처럼 정교한 방식으로 동작하는 루트킷을 탐지할 수 없으며, 이와 같은 루트킷의 동작을 인지하고 있는 사람만이 루트킷을 이용해 더 깊숙한 시스템 내부에 접근하거나 루트킷에게 유효한 명령을 내릴 수 있다. 커널 루트킷은 파일이나 동작 중인 프로세스를 숨겨 백도어로 동작하게 할 수 있다. 공격자들이 사용하는 툴을 분석하면 시스템을 보호하려는 노력에 중요한 단서를 제공할 수 있다. 루트킷의 실질적인 의미를 가장 제대로 설명해 줄 수 있는 사람이 바로 호글런드와 버틀러다. 무언가에 점령당하기보다는 부디 이 책을 점령하길 바란다. 게리 맥그로 박사 / 씨지털 사의 CTO, 『Exploiting Software』와 『Building Secure Software』 공저자 저자들은 윈도우 API 파괴와 루트킷 제작에 있어서 최고의 전문가다. 이 두 대가는 루트킷에 대한 베일을 벗기고 루트킷 정보를 어둠의 세상 밖으로 이끌어 내기 위해 힘을 합쳐 노력하고 있다. 윈도우 시스템 보안이나 포렌식 분석에 관심 있는 사람이라면 반드시 읽어야 할 책이다. 할랜 카비, 『Windows Forensics and Incident Recovery』의 저자
목차
1장 흔적을 남기지 말라 23
공격자의 동기 이해 24
- 은닉의 역할 24
- 은닉이 필요 없는 경우 25
루트킷이란? 26
왜 루트킷이 존재하는가? 26
- 원격 명령 실행과 제어 27
- 소프트웨어 감청 27
- 루트킷의 합법적인 이용 28
루트킷의 역사 29
루트킷은 어떻게 동작하는가? 30
- 패치 30
- 이스터 에그 31
- 스파이웨어 31
- 소스 코드 조작 31
- 소프트웨어 변경의 합법성 32
무엇이 루트킷이 아닌가? 32
- 루트킷은 공격툴이 아니다 33
- 루트킷은 바이러스가 아니다 34
루트킷과 소프트웨어 공격 35
- 왜 공격 코드가 여전히 문제인가? 37
공격을 위한 루트킷 기술 38
- HIPS 38
- NIDS 39
- IDS/IPS 우회하기 40
- 포렌식 툴 우회하기 40
결론 41
2장 커널 조작 43
커널의 중요 요소 44
루트킷 설계 45
커널 레벨 코드 소개 48
윈도우 디바이스 드라이버 개발 49
- Device Driver Development Kit 49
- 빌드 환경 50
- 파일 50
- Build 툴 52
- 언로드 루틴 53
드라이버 로드, 언로드 54
디버그 메시지 로그하기 54
유저 모드와 커널 모드 요소를 모두 포함하는 루트킷 55
- IPR 56
- 파일 핸들 생성 60
- 심볼릭 링크 추가 61
루트킷 로딩 63
- 드라이버 로드를 위한 비정상적인 방법 63
- 드라이버 로드를 위한 정상적인 방법 65
리소스에서 .sys 파일 추출하기 67
재부팅시 자동 시작 69
결론 71
3장 하드웨어 레벨의 지식 73
링 제로 74
테이블, 테이블 그리고 또 테이블 76
메모리 페이지 77
- 메모리 접근 검사 78
- 페이징과 주소 변환 79
- 페이지 테이블 81
- 페이지-디렉토리 엔트리 83
- 페이지-테이블 엔트리 83
- 페이지 테이블의 읽기 전용 속성 84
- 멀티 프로세스와 멀티 페이지 디렉토리 84
- 프로세스와 스레드 85
메모리 디스크립터 테이블 86
- 글로벌 디스크립터 테이블 87
- 로컬 디스크립터 테이블 87
- 코드 세그먼트 87
- 콜 게이트 87
인터럽트 디스크립터 테이블 88
- 다른 형태의 게이트 91
시스템 서비스 디스패치 테이블 91
컨트롤 레지스터 92
- 컨트롤 레지스터 0 92
- 그 밖의 컨트롤러 레지스터들 93
- EFlags 레지스터 93
멀티 프로세서 시스템 93
결론 95
4장 전통적인 후킹 기술 97
애플리케이션 레벨의 후킹 97
- 임포트 어드레스 테이블 후킹 99
- 인라인 함수 후킹 100
- 사용자 프로세스 영역으로 DLL 인젝션하기 103
커널 후킹 108
- 시스템 서비스 디스크립터 테이블 후킹 109
- 인터럽트 디스크립터 테이블 후킹 118
- 디바이스 드라이버 오브젝트의 Major Function 후킹 123
하이브리드 후킹 133
- 프로세스의 주소 공간으로 진입하기 134
- 후킹을 위한 메모리 공간 138
결론 140
5장 런타임 패치 141
우회 패치 142
- MigBot을 이용한 실행 흐름 변경 143
- 함수의 바이트 코드 검사 145
- 원래의 명령어 바이트 146
- NonPagedPool 메모리 이용 149
- 런타임 주소 결정 149
점프 템플릿 153
- 인터럽트 후킹 예제 154
기타 유사한 방법들 161
결론 162
6장 계층 드라이버 163
키보드 스니퍼 164
- IRP와 스택 로케이션 166
KLOG 루트킷 169
파일 필터 드라이버 183
결론 197
7장 커널 오브젝트 직접 변경 199
DKOM의 장점과 단점 200
운영체제 버전 판단하기 202
- 유저 모드에서 운영체제 버전 판단 202
- 커널 모드에서 운영체제 버전 판단 204
- 레지스트리를 이용한 운영체제 버전 판단 204
유저 모드 프로세스에서 디바이스 드라이버로의 통신 206
DKOM을 이용한 은닉 210
- 프로세스 은닉 210
- 디바이스 드라이버 은닉 216
- 동기화 이슈 220
DKOM을 이용한 토큰의 권한과 그룹 변경 224
- 프로세스 토큰 변경 225
- 윈도우 이벤트 뷰어 속이기 239
결론 241
8장 하드웨어 조작 243
왜 하드웨어인가? 245
펌웨어 변경 246
하드웨어 접근 247
- 하드웨어 주소 지정 247
- 하드웨어 접근은 RAM에 접근하는 것과 다르다 248
- 타이밍 249
- I/O 버스 249
- BIOS에 접근 251
- PCI, PCMCIA 디바이스 접근 252
예 : 키보드 컨트롤러 접근 252
- 8259 키보드 컨트롤러 253
- 키보드 LED 변경 253
- 하드 리부팅 260
- 키보드 모니터링 260
마이크로코드 업데이트 267
결론 268
9장 은닉 채널 269
원격 명령 및 제어 그리고 데이터 빼내기 270
TCP/IP 프로토콜 위장 271
- 트래픽 패턴의 인지 272
- 데이터를 있는 그대로 전송하지 말라 273
- 시간을 이용하라 274
- DNS 패킷 안에 숨겨라 274
- 아스키 문자 숨기기 274
- 다른 TCP/IP 채널 이용 275
TDI를 이용한 루트킷 276
- 어드레스 스트럭처 생성 277
- 로컬 어드레스 오브젝트 생성 279
- TDI 엔드 포인트 생성 283
- 엔드 포인트와 로컬 어드레스 연결 286
- 리모트 서버로 연결 - TCP 핸드쉐이크 전송 288
- 리모트 서버로 데이터 전송 290
네트워크 패킷 변경 293
- 윈도우XP에서의 로우 소켓 구현 293
- 인터페이스에 바인딩 294
- 로우 소켓 스니핑 295
- 로우 소켓을 이용한 무차별적인 스니핑 296
- 로우 소켓을 이용한 패킷 전송 297
- 소스 포트, 주소 위조 297
- 바운싱 패킷 298
NDIS를 이용한 루트킷 299
- 프로토콜 등록 299
- 프로토콜 드라이버 콜백 304
- 패킷 전체 이동 309
호스트 에뮬레이션 317
- 자체 MAC 주소 생성 317
- ARP 처리 317
- IP 게이트웨이 320
- 패킷 전송 320
결론 325
10장 루트킷 탐지 327
존재 탐지 328
- 출입문 보호 328
- 메모리 스캐닝 331
- 후킹 탐지 331
행동 탐지 341
- 숨겨진 파일과 레지스트리 키 탐지 341
- 숨겨진 프로세스 탐지 342
결론 345





































