간편결제, 신용카드 청구할인
북피니언 롯데카드 30% (25,200원)
(최대할인 3만원 / 3만원 이상 결제)
EBS 롯데카드 20% (28,800원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 NEW 우리V카드 10% (32,400원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 현대카드 7% (33,480원)
(최대할인 3만원 / 3만원 이상 결제)
NH쇼핑&인터파크카드 20% (28,800원)
(최대할인 4만원 / 2만원 이상 결제)
Close

해킹의 꽃 디스어셈블링 Hacker Disassembling Uncovered : 보안 분석에 유용한 리버스 엔지니어링 기술

원제 : Hacker Disassembling Uncovered
소득공제

2013년 9월 9일 이후 누적수치입니다.

판매지수 40
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
정가

40,000원

  • 36,000 (10%할인)

    2,000P (5%적립)

할인혜택
적립혜택
  • I-Point 적립은 출고완료 후 14일 이내 마이페이지에서 적립받기한 경우만 적립됩니다.
  • 추가혜택
    배송정보
    주문수량
    감소 증가
    • 이벤트/기획전

    • 연관도서(84)

    • 사은품(1)

    출판사 서평

    이 책은 고급 해커의 필수 능력인 디스어셈블링 기법을 집중적으로 다룬다. 분석에 필요한 기본 도구와 어셈블리어 분석을 시작으로 각종 보안 메커니즘을 우회할 수 있는 방법을 설명한다. 디버깅, 디스어셈블링에 대한 기본 지식부터 커널 분석, 고급 패치 기술 등 분석 과정에서 마주칠 수 있는 깊이 있는 주제들을 다양한 관점과 예제를 통해 학습할 수 있는 훌륭한 분석 길잡이가 되어 줄 것이다.

    [이 책에서 다루는 내용]

    디스어셈블이 필요한 상황, 특정 언어 구조체를 분석하기 위한 시작점, 보호 메커니즘 개발자가 숨겨 놓은 트랩에 빠지지 않고 수백 메가에 육박하는 코드 밀림에서 길을 잃지 않는 방법을 알려주는 책이다. 특히 이 개정2판에서는 실제 디스어셈블링 기법에 관련된 내용이 추가됐다. 특히 메모리 덤프 분석, 합법적인 소프트웨어 보호 메커니즘, 악성 프로그램 관련 내용이 새로운 단원으로 추가됐다. 또한 관련 예제와 원리들은 최신 동향에 맞춰 수정했다. 안티디버깅 기법 우회, 패킹, 암호화, 다형성, 간단한 난독화 코드 극복과 관련된 내용에 주안점을 두고 작성했다.

    [이 책의 구성]

    1부 '해킹 툴의 소개', 2부 '기본 해킹 기술', 3부 '고급 디스어셈블링 기법', 4부 '실제 코드 연구'의 네 부분으로 구성되어 있다.

    이 책은 다음과 같은 단원들로 구성된다.

    * 1장 '해킹 툴 입문'에서는 디버거, 디스어셈블러, 디컴파일러, 헥스 에디터, 언패커, 덤퍼 등의 대표적인 윈도우 해킹 툴을 개략적으로 다룬다. 또한 해킹 세계로 뛰어드는 데 필요한 최소한의 지식을 습득하기 위한 필독 도서들을 소개한다.
    * 2장 '유닉스용 해킹 툴'에서는 유닉스와 리눅스 환경에서 사용할 수 있는 해킹 툴을 소개한다.
    * 3장 '디버거 에뮬레이션과 에뮬레이터'에서는 유명하고 흥미로운 주제인 디버거 에뮬레이팅과 에뮬레이터 관련 내용을 다룬다. 코드 분석가들은 에뮬레이팅 기법을 활용해 거의 무한대의 가능성을 확보할 수 있다. 유명한 에뮬레이터와 애플리케이션 영역에 대한 설명뿐만 아니라, 현존하는 에뮬레이터의 비교 분석, 관련 분야의 최신 기술을 소개한다.
    * 4장 '어셈블러 소개'에서는 어셈블러의 개괄적인 내용과 함께 각 언어의 장단점을 다룬다. 어셈블리 언어를 능숙하게 다루지 못하면 진정한 해커라고 볼 수 없기 때문에 4장의 내용은 매우 중요하다고 볼 수 있다. 고급 프로그래밍 언어 지식만으로는 그 어떤 것도 디스어셈블할 수 없다. 초보자와 전문 프로그래머 모두의 신중한 접근이 요구되는 어셈블리 변환기를 선택하는 문제도 다룬다.

    * 2부의 첫 번째 단원인 5장 '기본 해킹 기술 익히기'에서는 보호 메커니즘에 대한 간략한 소개와 함께 여러 메커니즘의 강점과 약점, 현존하는 보호 메커니즘들이 공통적으로 갖는 구현상 결함을 다룬다. 또한 합법적인 사용자들의 편의성을 해치지 않으면서 보호 메커니즘을 강화하는 데 도움이 될 만한 보호 메커니즘 개발 권고 내용도 제공한다.
    * 6장 '시작 준비'에서는 해커가 보호 메커니즘을 크랙할 때 사용하는 기본 기법들을 소개한다. 헥스 데이터, API 스파이, 디스어셈블러를 다루는 기본 기법뿐만 아니라 간단한 해킹 예제도 제공한다.
    * 7장 '애플리케이션 디버깅 익히기'에서는 애플리케이션 디버깅을 소개한다. 이 책이 디스어셈블링에 초점이 맞춰져 있긴 하지만, 때로는 전체 프로그램의 디스어셈블 리스트를 분석하는 것이 비효율적인 경우가 있다. 디버거는 가장 인기 있는 해킹 도구이며, 종종 디스어셈블러와 함께 사용된다. 7장에서는 디버거를 사용해 효율적으로 보호 메커니즘 코드를 찾아내는 기법의 설명과 예제를 제공한다.
    * 8장 '유닉스와 리눅스 환경에서의 디버깅 특성'에서는 내용상 7장과 이어지는 부분이라고 할 수 있다. 여기서는 유닉스와 리눅스 환경에서 부딪힐 수 있는 특정 디버깅 기능을 다룬다. 유닉스 세계에서 가장 강력한 디버거로 꼽히는 GDB를 효율적으로 사용하는 방법도 설명한다. 특히 심볼 정보 없이 바이너리 파일을 디버깅하는 방법에 초점이 맞춰져 있다.
    * 9장 'Linice로 수행하는 커널 디버깅의 기초'에서는 보호된 애플리케이션 해킹에 최적화된 디버거인 Linice 예제를 통해 커널 디버깅 관련 주제를 다룬다.
    * 10장 '고급 디버깅 주제'에서는 2부의 마지막 단원으로, 고급 디버깅 주제와 상급 난이도의 코드 분석에 필요한 내용을 다룬다. 구체적으로 10장에서는 소프트아이스(SoftICE)를 로거로 사용하거나, 디버거와 디스어셈블러 조합을 사용해 효율적으로 브레이크 포인트를 다루는 기법과 큰 크기의 프로그램에서 보호 메커니즘 코드를 재빨리 찾아내는 기법 등 좀 더 효율적인 해킹을 수행하기 위한 다양한 트릭을 학습할 수 있는 계기를 제공한다.

    * 11장 '32비트 PE 파일 디스어셈블링'에서는 32비트 PE 파일을 디스어셈블링하는 방법을 중점적으로 다룬다. PE 파일 구조와 해당 형식의 파일에 외부 코드를 삽입하는 다양한 기법도 다룬다. 대부분의 웜, 바이러스, 셸코드와 보호 메커니즘이 코드 삽입 기법을 사용하기 때문에 이 책의 뒷부분을 이해하려면 11장의 내용을 반드시 숙지해야 한다.
    * 12장 '리눅스와 BSD에서 ELF 파일 디스어셈블링'에서는 ELF 파일에 외부 코드를 삽입하는 기법과 실제 디스어셈블링 예제를 포함해 ELF 파일을 디스어셈블링할 때 필요한 여러 이슈를 소개한다.
    * 13장 'x86-64 아키텍처에서 수행하는 디스어셈블링'에서는 AMD 64 아키텍처상에서 64비트 실행 파일을 디스어셈블링하는 방법과 관련된 내용을 다룬다.
    * 14장 '리눅스 커널 디스어셈블링과 해킹'에서는 운영체제 커널 디스어셈블링 기법을 설명하며, 리눅스 커널에 초점을 맞췄다. 커널을 분석하는 기법과 함께 간단한 커널 해킹 예제를 제공한다.
    * 15장 '고급 패칭 기법'에서는 온라인 패칭과 스텔스 기법의 비밀을 포함한 고급 패칭 기법을 다룬다. 윈도우 NT/2000/XP 커널 수정 예제를 통해 패칭 기법을 설명한다. 또한 온라인 패칭에 대항하는 커널 보호 메커니즘을 제거하기 위한 문서화되거나 문서화되지 않은 기능과 함수를 사용하는 방법도 설명한다. BSOD를 극복하기 위한 소프트아이스 사용 방법을 포함해 정교하지 못한 커널 패칭으로 인한 부작용을 극복하는 방법도 설명한다.
    * 16장 '기타 형식의 파일 디스어셈블링'은 3부의 마지막 단원으로, 다양한 형식의 파일을 디스어셈블링하는 방법을 다룬다. 32비트와 64비트 PE 파일, ELF 파일 디스어셈블링 관련 내용을 다뤘던 이전 단원들과 달리 16장에서는 PDF 파일 예제를 통해 다른 형식의 파일을 디스어셈블하는 기법을 설명한다.

    * 17장 '윈도우에서의 숨바꼭질'은 윈도우 환경에서 안티디버깅 기법과 스텔스 기법을 활용하는 방법을 다룬다. 동일 주제를 유닉스와 리눅스 환경에서 구현하는 방법에 대한 내용은 이 책의 소스코드에서 찾아볼 수 있다.
    * 18장 '패커 극복법'에서는 윈도우 환경에서 패킹됐거나 보호된 프로그램을 조사하는 방법을 다룬다. 패킹이 적용된 형태로 배포되는 프로그램의 수는 증가 추세에 있다. 패커의 주목표는 코드 분석을 어렵게 만드는 것이다. 이러한 일환으로 패커는 프로텍터 형태로 빠르게 진화한다. 해커와 합법적인 사용자에게 같은 무기가 사용된다. 웜, 바이러스, 트로이 목마는 안티바이러스 프로그램으로부터 자신의 존재를 숨기기 위해 패커와 프로텍터를 사용한다.
    * 19장 '난독화 극복법'에서는 코드 난독화를 극복하는 방법을 다룬다. 코드 난독화는 소프트웨어 코드 분석을 복잡하게 만드는 일련의 기법과 방법을 총칭한다. 아직까지 해커가 만든 이 무기에 대응할 수 있는 효과적인 기법은 소개되지 않았다. 하지만 이런 기법을 구현하려는 시도는 여러 방면에서 이뤄지고 있다.
    * 20장 '리눅스와 BSD에서의 패커 극복법'에서는 유닉스와 리눅스 환경에서 동작하는 패커, 프로텍터, 난독화 수행기를 극복하는 방법을 다룬다. 아직까지 이런 유닉스 기반 보호 메커니즘은 해커의 기술 연마를 위해 사용되는 크랙미 예제 형태로만 존재한다. 대부분 유닉스 프로그램이 소스코드 형태로 배포되는 오픈소스 프로젝트인 것이 그 이유로 손꼽힌다. 하지만 상용 유닉스 프로그램은 점차 증가하는 추세에 있다. 그러므로 해커는 이런 강력한 적에 대항할 수 있는 준비를 해야 한다.
    * 21장 '악성코드 디버깅과 디스어셈블링'에서는 웜, 바이러스, 악성코드 감시, 검출, 디스어셈블링 관련 주제를 다룬다. 안티바이러스 소프트웨어(모든 업데이트가 적용된 제품이라 할지라도)가 항상 악성코드를 탐지하지 못하기 때문에 이런 주제를 이해하는 것은 매우 중요하다. 숙련된 해커는 분석 대상이 어떤 내용을 담고 있더라도 자신의 경험과 강력한 무기인 디버거(보통 소프트아이스와 같은 도구를 사용)와 기타 도구를 사용해 악성 코드의 정체를 찾아낼 수 있다.

    목차

    1부 해킹 툴의 소개

    1장 해킹 툴 입문
    디버거
    디스어셈블러
    디컴파일러
    헥스 편집기
    언패커
    덤퍼
    리소스 편집기
    스파이
    감시 프로그램
    수정 프로그램
    보호 CD 복사기

    2장 유닉스용 해킹 툴
    디버거
    디스어셈블러
    스파이
    헥스 편집기
    덤퍼
    자동화된 보호 툴

    3장 디버거 에뮬레이션과 에뮬레이터
    에뮬레이터 소개
    역사적 개요
    대표적인 에뮬레이터
    에뮬레이터 선택

    4장 어셈블러 소개
    어셈블리어의 철학
    C 예제로 어셈블리 개념 설명
    작업공간으로서 어셈블리 삽입
    사용 가능한 툴
    어셈블리 번역기의 개요와 비교

    2부 기본 해킹 기술

    5장 기본 해킹 기술 익히기
    비밀 키 유형에 따른 보호 메커니즘 분류
    보호 강도
    상용 솔루션의 단점
    사용 기술의 구현 에러
    심각한 결과를 야기하는 사소한 오류의 정리

    6장 시작 준비
    보호 기술 제작과 크랙
    디스어셈블러 익히기
    실전 크랙 예제
    정리

    7장 애플리케이션 디버깅 익히기
    디버깅 소개
    디스어셈블러와 디버거를 같이 사용
    API 함수에 브레이크 포인트 설정
    메시지에 브레이크 포인트 설정
    데이터에 브레이크 포인트 설정
    스택 역추적
    DLL 디버깅
    정리

    8장 유닉스와 리눅스 환경에서의 디버깅 특성
    GDB 기반의 Ptrace
    GDB에서 바이너리 파일 디버깅

    9장 Linice로 수행하는 커널 디버깅의 기초
    시스템 요구 사항
    Linice 컴파일과 설정
    시스템 부팅과 디버거 실행
    Linice로 작업할 때 지켜야 할 기본 원칙
    정리

    10장 고급 디버깅 주제
    소프트아이스를 로그 수집기로 사용
    무작위 브레이크 포인트로 해킹 트릭 사용
    범위 설정을 통한 크래킹
    정리

    3부 고급 디스어셈블링 기술

    11장 32비트 PE 파일 디스어셈블링
    다양한 실행 환경에서 PE 파일 구조의 특징
    일반적인 개념과 PE 파일의 요구 사항
    PE 파일 구조
    PE 파일에 코드를 삽입하거나 제거하는 기술
    정리

    12장 리눅스와 BSD에서 ELF 파일 디스어셈블링
    필요한 도구
    ELF 파일 구조
    ELF 파일에 외부 코드 삽입
    리눅스에서 간단한 크랙미 프로그램을 디스어셈블링
    정리

    13장 x86-64 아키텍처에서 수행하는 디스어셈블링
    소개
    필요한 도구
    x86-64 아키텍처의 개요
    64비트 모드로 전환
    x86-64 환경에서 만드는 'Hello, World' 프로그램
    정리

    14장 리눅스 커널 디스어셈블링과 해킹
    디스어셈블링 리눅스 커널
    커널 해킹의 비밀

    15장 고급 패칭 기법
    온라인 패칭의 비밀과 트릭
    클라이언트 프로그램을 크래킹하는 잘 알려지지 않은 방법
    윈도우 NT/2000/XP 커널 핵
    BSOD 이후의 세계가 존재하는가?
    참고 사이트
    정리

    16장 기타 형식의 파일 디스어셈블링
    PDF 파일 디스어셈블링
    정리

    4부 실제 코드 연구

    17장 윈도우에서의 숨바꼭질
    윈도우 환경을 위한 안티디버깅 기법
    윈도우 환경에서 사용되는 스텔스 기법
    정리

    18장 패커 극복법
    예비 분석
    언패킹과 대체 방안
    언패킹 알고리즘
    오리지널 진입점 검색
    보호된 애플리케이션을 덤프
    정리

    19장 난독화 극복법
    난독화 도구의 작동 원리
    난독화된 프로그램을 크랙하는 방법
    블랙박스 접근법
    가상머신 지하 감옥
    정리

    20장 리눅스와 BSD에서의 패커 극복법
    패커가 성능에 미치는 영향
    UPX
    Burneye
    Shiva
    패커 비교
    정리

    21장 악성코드 디버깅과 디스어셈블링
    디버거를 활용한 방첩 활동
    공격 코드 감사와 디스어셈블링
    참고 자료
    정리

    찾아보기

    본문중에서

    나는 어린 시절부터 컴퓨터에 흠뻑 빠져 지내왔다. 특히 리버스 엔지니어링, 보안 메커니즘의 취약점 발견, 자체 보호 시스템 개발 등에 관심이 많다. 컴퓨터의 "깊은 영역에는 무엇이 있을까"라는 의문과 함께 쇠파이프와 망치(비유하자면)를 사용해 무언가를 부셔버리고 싶은 자연스러운 욕망이 집필이라는 새로운 도전으로 이어졌다. 과연 컴퓨터를 부숴서 안을 열어보지 않고 이것이 어떻게 동작하는지 이해할 수 있을까? 우주를 만물을 이해하기 위해 애쓰는 사람을 해커라 부른다면 나 또한 이들과 한 배를 탄 사람이다.

    해킹은 지각 있는 존재가 느끼는 자연스러운 욕구 중 하나다. 해킹은 세상 만물의 참된 진실을 이해하기 위한 험난한 길을 지나 파멸을 향해 덤벼드는 여정과 같다. 주위를 둘러보자. 핵물리학자들은 원자를 분리하고, 화학자들은 긴 길이의 분자를 여러 조각으로 쪼개며, 수학자들은 식을 분해한다. 그 누구도 이들을 비난하지 않는다. 하지만 이상하게도 소프트웨어 안을 들여다보고 분해를 시도하는 코드 분석가들은 종종 검열을 받는다. 이들을 규제하는 것이 과연 정당한 행위인가? 일반적인 해킹, 그 중에서 특히 디스어셈블링이 정말 불법적인 행위란 말인가?

    해킹은 공공 기물을 파손하는 행위가 아니다. 해킹은 자연스러운 호기심과 세상 만물을 이해하려는 욕구의 결과물이다. 디스어셈블 리스트, 기계어 명령, 소프트아이스 특유의 검은 화면은 초기 MS-DOS 시절을 상기시켜 주는 매력적이고 흥미로운 영역이다. 이 영역은 숨겨진 메커니즘과 보호 코드의 세상 속에 위치한다. 지도상에서는 이 영역을 찾을 수 없다. 이 세계는 출력물의 한 부분, 가장 흥미로운 위치에서 확인하는 기술 매뉴얼, 모니터 앞에서 밤을 꼬박 새는 순간에만 접근이 가능하다.

    보호 메커니즘 개발자와 해커는 서로 적이며, 동지다. 해커가 수준 높은 보호 메커니즘을 구축하지 못하는 프로그래머의 무능력함에 기생한다면 반대로 프로그래머 또한 보호 메커니즘 우회 프로그램 제작이 불가능한 사용자들의 무능력함을 공격한다.

    해킹과 프로그래밍은 많은 부분에서 공통점이 있다. 수준 높고 신뢰성 있는 보호 메커니즘을 제작하려면 상당 수준의 로우레벨 프로그래밍 기술이 필요하다. 이 밖에도 운영체제, 드라이버 및 관련 도구를 다룰 수 있는 능력, 최신 프로세서 아키텍처에 대한 지식, 특정 컴파일러를 위한 코드 생성 기능, 사용 중인 라이브러리의 '생태'에 대한 이해가 선행돼야 한다. 이 정도 프로그래밍 수준에서 볼 때 프로그래밍과 해킹의 차이는 너무 근소해서 그 선을 긋기가 애매할 정도다.

    보호 메커니즘 개발에 뛰어들기 전에 프로그래머는 최소한 해커의 작업 방식과 그들이 사용하는 도구를 이해할 필요가 있다. 해커와 동등한 관점에서 해커의 무기고를 분석하는 것도 좋은 방법이다. 하지만 무엇보다 직접 부딪혀 보는 방법이 가장 효과적이다. 프로그래머는 실전 경험(프로그램 크래킹)을 통해 해커가 사용하는 공격 기법과 전략을 효과적으로 익힐 수 있고, 이를 통해 최적의 방어 전략을 구성할 수 있다. 또한 이런 경험은 해커의 공격 대상이 될 수 있는 가장 가능성 높은 대상을 찾아내 방어를 강화할 수 있는 대응력을 길러줄 뿐만 아니라, 프로그래머의 모든 가용 자원과 전략을 적재적소에 집중시킬 수 있게 만들어준다. 즉, 보호 메커니즘 개발자는 해커의 심리를 잘 파악해야 하며, 해커처럼 생각하는 습관을 길러야 한다.

    정보보호 기술을 통달하는 것은 크래킹 기법을 통달하는 것과 같다. 보호 메커니즘에 존재하는 취약점에 대한 이해와 이를 크랙하는 방법, 해커의 무기고에 대한 정보 없이는 저렴한 비용으로 쉽게 구현이 가능하면서도 강력한 보호 메커니즘을 개발할 수 없다. 보호 메커니즘의 관점에서 기술된 대부분 보안 관련 서적들은 실제 애플리케이션이 아닌 단편화된 정보 제공에 대해서만 언급하는 경향이 있다.

    이 책은 크래킹이나 안티해커 보호 메커니즘에 대한 매뉴얼이 아니다. 이런 매뉴얼 형식의 책은 이미 많이 시판됐으며, 그보다 이 책은 코드 분석가를 위한 '여행 일기'에 가깝다고 할 수 있다. 이 책을 통해 인텔 컴파일러부터 상용 프로그램의 보호 메커니즘 내부를 전문적으로 다루기 위한 디스어셈블러와 디버거 활용법 등을 학습한다. 당장이라도 이 책을 던져버리고 싶을 만큼 앞으로 나아가는 것이 두려운 사람이 아니라면 누구라도 새롭고 흥미로운 사실을 깨우칠 수 있는 기회를 얻게 될 것이다.

    개정2판에서 새롭게 추가된 내용

    이 책의 초기 목적은 전문가의 분석 능력 향상에 초점을 맞췄다. 하지만 1판이 발행된 후 독자들에게 받은 칭찬과 비판들을 고려하지 않을 수 없었다. 독자들은 책이 좀 더 대중성 있고 많은 사람이 이해하기 쉽게 구성되기를 원했다. 하지만 한 권의 책에 모든 독자가 만족할 만한 내용을 전부 포함시키는 것은 거의 불가능하다. 나는 이 책이 가장 폭넓고 든든한 독자층인 해킹 초보자들의 갈증을 해소할 수 있게 도와주고 싶다. 초보자들이 컴퓨터에 느끼는 심리적 무기력감을 이 책을 통해 극복할 수 있다면 더할 나위 없을 것 같다.

    전문가들에게는 이 책의 내용이 크게 도움이 되지 않을 수 있다. 대부분 전문가들은 1판의 내용 중 흥미로운 부분들이 곳곳에 산재해 있는 정도여서 책을 대략적으로 훑는 것만으로 충분하다고 언급했다. 예를 들어 다음과 같은 의견이 있었다. "이 책에는 좋은 내용이 많이 담겨 있지만, 개인적으로 깊이 있는 설명 면에서는 부족하다고 생각한다." 많은 전문가 독자가 책이 너무 윈도우 중심으로 서술돼 있다는 불만을 제기했다. 이러한 비난은 나의 역할과 임무를 명확하게 만드는 촉진제 역할을 했다.

    2판을 집필함에 있어 1판에서 제기된 모든 비평을 최대한 수용하고 개선하기 위해 노력했다. 이 책의 2판에서는 실제 디스어셈블링 기법에 대한 내용을 보완했다. 책에서 제공된 이론과 예제는 디스어셈블링 입문에 필요한 내용을 포함한다. 특정 언어 구조체를 분석하는 것부터 시작해 디스어셈블된 코드에서 길을 잃지 않는 방법, 정교한 트랩에 빠지지 않는 방법까지 다양한 내용을 다룬다. 뿐만 아니라 메모리 덤프 분석과 합법적인 소프트웨어 보호 메커니즘, 악성 프로그램에 대한 내용을 다룬 새로운 단원도 추가했다. 모든 예제는 새로운 개념과 최신 트렌드를 고려해 수정 작업을 거쳤다. 특히 안티디버깅 기법 극복과 패킹, 암호화, 다형성, 난독화 처리된 코드 분석 같이 중요한 주제에 관련된 내용은 좀 더 심층적으로 다뤘다. 1판에서 누락됐거나 잘못된 부분 또한 모두 수정했다.
    (/ '저자 서문' 중에서)

    최근 몇 년간 발생했던 대형 보안 사고를 시작으로 보안 전문가에 대한 관심이 높아지고 있다. 사고 재발을 방지하기 위한 국가와 기업의 지원에 힘입어 많은 인재들이 보안 분야에 뛰어들고 있다. 하지만 보안 기술은 다른 분야와 달리 쉽게 접근하기 힘들 뿐만 아니라 기술 패러다임의 변화가 빨라 그 흐름을 따라가기가 어려운 편이다.

    시대가 변하고 법의 기준이 달라져도 쉽게 바뀌지 않는 근본 철학이 있듯이 진정한 해커로 거듭나기 위해 반드시 거쳐야 하는 관문이 있다. 바로 분석 능력을 갖추는 것이다. 특히 디스어셈블링과 디버깅 기술은 가장 기본적이면서도 심도 있게 다가갈수록 해커를 힘들게 하는 가장 큰 장애물이라 할 수 있다. 특히 커널 분석의 경우 혈기 넘치는 초급 해커들의 발길조차 돌리게 만드는 넘기 힘든 큰 산과 같다.

    처음 번역에 착수할 때만 해도 이 책을 잘 정리된 '분석 지침서' 정도로만 생각했다. 하지만 번역을 진행할수록 이 책이 단순한 지침서를 넘어 분석 교과서로 불릴 수 있겠다는 생각이 들었다. 이 책에서는 심도 있는 원리 설명과 실습 예제를 통해 기초부터 고급 기술까지 방대하게 다룬다. 책의 뒷부분으로 갈수록 고급 분석 내용이 많이 포함돼 보안 분석에 익숙하지 않은 독자가 책을 읽어나가는 데 약간 힘들 수도 있다. 특히 커널과 관련된 내용은 해당 주제에 익숙하지 않은 독자에게 힘든 난관이 될 수 있다. 원활한 이해를 원하는 독자는 관련 서적을 참고할 것을 적극 권장한다.
    (/ '옮긴이의 말' 중에서)

    원서가 출판된 시점은 2007년으로, 오랜 시간이 지나서야 정식 번역서로 한국 독자들에게 소개하게 됐다. 하지만 책에 포함된 분석 기법과 기본 원리는 6년이라는 시간이 무색할 만큼 잘 정리된 하나의 교과서 같은 느낌을 준다. 안타깝게도 책에 포함된 실습 수행에 필요한 분석 도구와 참고 사이트 링크가 소실된 경우가 많았다. 시간이 지나면서 대체된 도구나 변경된 다운로드 링크들을 찾기 위해 노력했다. 대부분 복구할 수 있었지만, 더 이상 찾을 수 없는 링크가 존재할 수 있음을 양해 바란다.

    책에서 소개한 모든 분석 도구와 실습 예제가 최신 기술에 부응하지는 않지만, 분석을 통해 문제를 해결해 나가는 과정은 고급 해커로 성장하는 데 큰 밑거름이 될 수 있을 것이다. 이 책이 지식을 갈구하는 많은 사람의 갈증을 해소시켜 줄 수 있는 훌륭한 연구 도우미로 자리 잡을 수 있기를 바란다.
    (/ '옮긴이의 말' 중에서)

    저자소개

    크리스 카스퍼스키(Kris Kaspersky) [저] 신작알림 SMS신청 작가DB보기
    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    기술 서적 저자로서, Hacker Uncovered 시리즈 도서들과, [Code Optimization: Effective Memory Usage(코드 최적화: 효율적인 메모리 사용)], [CD Cracking Uncovered: Protection Against Unsanctioned CD Copying(알려지지 않은 CD 크래킹: 승인되지 않은 CD 복사를 방지하는 보호 기술)], [Data Recovery Tips & Solutions: Windows, Linux, and BSD(데이터 복구 팁 & 솔루션: 다양한 관점에서 보는 윈도우)] 등의 저서, 그리고 리눅스, BSD 해킹, 디스어셈블링, 코드 최적화 등과 관련한 다양한 기고문을 발표했다. 주로 컴파일러 개발, 최적화 기술, 보안 메커니즘

    펼쳐보기
    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    대학교에서 컴퓨터 공학을, 대학원에서는 정보보호를 전공했으며, 한국정보보호교육센터, 삼성SDS, 보안 프로젝트에서 다양한 보안 업무와 기술 분석을 담당했다. 현재는 혁신 IT 교육 프로그램인 구공팩토리를 운영하는 ㈜흥미랩 대표를 맡고 있으며, 초등학생부터 현업 실무자들까지 다양한 수강생을 대상으로 하는 재미있고 흥미로운 IT 전문 기술 교육 콘텐츠 개발에 힘쓰고 있다. 다양한 분야 중에서도 특히 정보 보안과 인공지능 전문 기술에 관심이 많다. 저서로는 [인공지능, 보안을 배우다](비제이퍼블릭, 2019)와 공저한 [NMAP NSE를 활용한 보안 취약점 진단](

    펼쳐보기

    이 상품의 시리즈

    에이콘 해킹과 보안 시리즈(총 117권 / 현재구매 가능도서 85권)

    펼쳐보기

    이 책과 내용이 비슷한 책 ? 내용 유사도란? 이 도서가 가진 내용을 분석하여 기준 도서와 얼마나 많이 유사한 콘텐츠를 많이 가지고 있는가에 대한 비율입니다.

      리뷰

      10.0 (총 0건)

      구매 후 리뷰 작성 시, 북피니언 지수 최대 600점

      리뷰쓰기

      기대평

      작성시 유의사항

      평점
      0/200자
      등록하기

      기대평

      0.0

      교환/환불

      교환/환불 방법

      ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청함, 1:1 문의 게시판 또는 고객센터(1577-2555) 이용 가능

      교환/환불 가능 기간

      고객변심은 출고완료 다음날부터 14일 까지만 교환/환불이 가능함

      교환/환불 비용

      고객변심 또는 구매착오의 경우에만 2,500원 택배비를 고객님이 부담함

      교환/환불 불가사유

      반품접수 없이 반송하거나, 우편으로 보낼 경우 상품 확인이 어려워 환불이 불가할 수 있음
      배송된 상품의 분실, 상품포장이 훼손된 경우, 비닐랩핑된 상품의 비닐 개봉시 교환/반품이 불가능함

      소비자 피해보상

      소비자 피해보상의 분쟁처리 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 따라 비해 보상 받을 수 있음
      교환/반품/보증조건 및 품질보증 기준은 소비자기본법에 따른 소비자 분쟁 해결 기준에 따라 피해를 보상 받을 수 있음

      기타

      도매상 및 제작사 사정에 따라 품절/절판 등의 사유로 주문이 취소될 수 있음(이 경우 인터파크도서에서 고객님께 별도로 연락하여 고지함)

      배송안내

      • 인터파크 도서 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다

      • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

      • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능하여, 인터파크 외 타업체 배송상품인 경우 발송되지 않을 수 있습니다.

      • 배송비

      도서(중고도서 포함) 구매

      2,000원 (1만원이상 구매 시 무료배송)

      음반/DVD/잡지/만화 구매

      2,000원 (2만원이상 구매 시 무료배송)

      도서와 음반/DVD/잡지/만화/
      중고직배송상품을 함께 구매

      2,000원 (1만원이상 구매 시 무료배송)

      업체직접배송상품 구매

      업체별 상이한 배송비 적용