The IDA Pro Book (2nd Edition) 한국어판 [리버스 엔지니어링에 날개를 달다]
- 원서명The IDA Pro Book: The Unofficial Guide to the World's Most Popular Disassembler (ISBN 9781593272890)
- 지은이크리스 이글(Chris Eagle)
- 옮긴이고현영
- ISBN : 9788960773325
- 45,000원
- 2012년 08월 23일 펴냄 (절판)
- 페이퍼백 | 780쪽 | 188*250mm
- 시리즈 : 해킹과 보안
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
IDA Pro를 사용해보고 싶은데 어떻게 시작해야 할지 잘 모른다면 이 책으로 시작해보길 바란다. 이 책은 IDA Pro에 대한 훌륭한 가이드로, IDA Pro의 구성부터 기본적인 기능, 스크립트와 SDK를 활용한 당면한 문제를 쉽게 해결할 수 있는 방법 등 IDA의 모든 것을 알려준다. 이 책을 보고 나면 IDA Pro를 이용한 리버스 엔지니어링의 마스터가 되어 있을 것이다.
[ 소개 ]
소스코드가 없는가? 이제는 문제 없다. 똑똑한 디스어셈블러 IDA Pro를 사용하면 소스코드 이상의 세계를 만날 수 있다. IDA는 실행 파일에 있는 수백만 개의 opcode를 분석해 디스어셈블리 코드를 제공해준다. 하지만 이는 단지 시작 단계일 뿐이다. 이 책을 본다면 수많은 니모닉을 사용할 수 있는 단계로 만들어 줄 것이다.
IDA Pro의 창시자가 ‘엄청난, 종합적인, 정확한’이라는 말로 묘사했을 정도로 『The IDA Pro Book (2nd Edition) 한국어판』은 시작 단계부터 고급 자동화 단계까지 모든 것을 다룬다. 새로 도입된 Qt 기반 사용자 인터페이스와 좀 더 상세한 IDA 디버거 설명, Bochs 디버거, IDA 스크립팅(특히 IDAPython)을 만나게 된다. 하지만 사람이 컴퓨터보다 현명하기 때문에 IDA의 최신 기술을 사용하는 법, 고급 기술을 스크립트로 활용하는 방법을 스스로 터득하게 될 것이다.
멀웨어를 분석하든, 취약점 분석을 하든, 리버스 엔지니어링 소프트웨어이든 IDA Pro를 숙달하면 원하는 결과를 내는 확률을 높일 수 있다. 『The IDA Pro Book (2nd Edition) 한국어판』은 여러분의 실력을 한 단계 높여줄 것이다.
[ 이 책에서 다루는 내용 ]
■ 내비게이션, 주석, 디스어셈블리를 수정할 수 있다.
■ 라이브러리 루틴 파악으로 사용자 코드에 좀 더 집중할 수 있다.
■ 코드 그래프 기능으로 상호 참조와 함수 호출 관계를 쉽게 파악할 수 있다.
■ SDK로 신규 프로세서와 파일 타입을 지원 가능하게 한다.
■ IDA 스크립트를 좀 더 쉽게 만들 수 있는 플러그인을 찾는다. 공동으로 리버스 엔지니어링 작업 등을 할 수 있다.
■ IDA의 내장 디버거로 어렵고 난해한 코드를 파헤칠 수 있다.
[ 이 책에 쏟아진 각계의 찬사 ]
IDA Pro 사용자에게 이 책을 강력히 추천합니다.
- 일파크 귈파노프(Ilfak Guilfanov), IDA Pro 창시자
매우 간결하고, 조심스럽게 만들어진 단계별 예제와, IDA의 모든 부분에서 필요한 정보를 상세하게 다룬 정말 멋진 책입니다.
- 코디 피어스(Cody Pierce), DVLabs 티핑 포인트
크리스 이글은 분명 훌륭한 교육자입니다. 난해하고 기술적인 내용도 읽고 이해하기 쉽게 만드는 재주가 있죠. 그리고 그가 택한 예제도 훌륭합니다.
- 디노 다이 조비(Dino Dai Zovi), Trail Of Bits 블로그
IDA Pro 자체뿐 아니라 그 이상을 이해하게 해주는 상당량의 자료입니다. 게다가 RE 프로세스까지 알게 해줍니다.
- 라이언 린(Ryan Linn), The Ethical Hacker Network
버릴 것이 전혀 없는, 주옥 같은 정보만 가득 모은 책
- 에릭 헐스(Eric Hulse), Carnal0wnage 블로그
함축적이고, 가장 정확하며, 게다가 이제껏 만난 IDA Pro 책 중 그야말로 최고의 책
- 피에르 반디베니(Pierre Vandevenne), DataRescue SA의 설립자이자 CEO
IDA Pro를 시작하려는 초보부터 전문가까지 모두에게 이 책을 강력히 추천합니다.
- 더스틴 D. 트라멜(Dustin D. Trammell), 보안 연구가
이 책은 정말 꼭 사야 한다고 강력히 추천합니다. 책의 내용이 매우 좋고, 이전에 제가 읽은 그 어느 책보다(IDA Pro 매뉴얼도 포함해서) 철저하게 IDA Pro를 다룹니다.
- 세바스티앙 포스트(Sebastian Porst), 마이크로소프트 수석 소프트웨어 보안 엔지니어
애플리케이션 내외부적으로 보안 결함이 없는지 시험하고자 하거나 풀기 힘든 런타임 결함을 해결하고자 할 때 IDA Pro는 가장 좋은 툴입니다. 그리고 이 책은 가장 신속한 안내서가 될 것입니다.
- 조 스태그너(JOE STAGNER), 마이크로소프트 프로그램 매니저
[ 소개 ]
소스코드가 없는가? 이제는 문제 없다. 똑똑한 디스어셈블러 IDA Pro를 사용하면 소스코드 이상의 세계를 만날 수 있다. IDA는 실행 파일에 있는 수백만 개의 opcode를 분석해 디스어셈블리 코드를 제공해준다. 하지만 이는 단지 시작 단계일 뿐이다. 이 책을 본다면 수많은 니모닉을 사용할 수 있는 단계로 만들어 줄 것이다.
IDA Pro의 창시자가 ‘엄청난, 종합적인, 정확한’이라는 말로 묘사했을 정도로 『The IDA Pro Book (2nd Edition) 한국어판』은 시작 단계부터 고급 자동화 단계까지 모든 것을 다룬다. 새로 도입된 Qt 기반 사용자 인터페이스와 좀 더 상세한 IDA 디버거 설명, Bochs 디버거, IDA 스크립팅(특히 IDAPython)을 만나게 된다. 하지만 사람이 컴퓨터보다 현명하기 때문에 IDA의 최신 기술을 사용하는 법, 고급 기술을 스크립트로 활용하는 방법을 스스로 터득하게 될 것이다.
멀웨어를 분석하든, 취약점 분석을 하든, 리버스 엔지니어링 소프트웨어이든 IDA Pro를 숙달하면 원하는 결과를 내는 확률을 높일 수 있다. 『The IDA Pro Book (2nd Edition) 한국어판』은 여러분의 실력을 한 단계 높여줄 것이다.
[ 이 책에서 다루는 내용 ]
■ 내비게이션, 주석, 디스어셈블리를 수정할 수 있다.
■ 라이브러리 루틴 파악으로 사용자 코드에 좀 더 집중할 수 있다.
■ 코드 그래프 기능으로 상호 참조와 함수 호출 관계를 쉽게 파악할 수 있다.
■ SDK로 신규 프로세서와 파일 타입을 지원 가능하게 한다.
■ IDA 스크립트를 좀 더 쉽게 만들 수 있는 플러그인을 찾는다. 공동으로 리버스 엔지니어링 작업 등을 할 수 있다.
■ IDA의 내장 디버거로 어렵고 난해한 코드를 파헤칠 수 있다.
[ 이 책에 쏟아진 각계의 찬사 ]
IDA Pro 사용자에게 이 책을 강력히 추천합니다.
- 일파크 귈파노프(Ilfak Guilfanov), IDA Pro 창시자
매우 간결하고, 조심스럽게 만들어진 단계별 예제와, IDA의 모든 부분에서 필요한 정보를 상세하게 다룬 정말 멋진 책입니다.
- 코디 피어스(Cody Pierce), DVLabs 티핑 포인트
크리스 이글은 분명 훌륭한 교육자입니다. 난해하고 기술적인 내용도 읽고 이해하기 쉽게 만드는 재주가 있죠. 그리고 그가 택한 예제도 훌륭합니다.
- 디노 다이 조비(Dino Dai Zovi), Trail Of Bits 블로그
IDA Pro 자체뿐 아니라 그 이상을 이해하게 해주는 상당량의 자료입니다. 게다가 RE 프로세스까지 알게 해줍니다.
- 라이언 린(Ryan Linn), The Ethical Hacker Network
버릴 것이 전혀 없는, 주옥 같은 정보만 가득 모은 책
- 에릭 헐스(Eric Hulse), Carnal0wnage 블로그
함축적이고, 가장 정확하며, 게다가 이제껏 만난 IDA Pro 책 중 그야말로 최고의 책
- 피에르 반디베니(Pierre Vandevenne), DataRescue SA의 설립자이자 CEO
IDA Pro를 시작하려는 초보부터 전문가까지 모두에게 이 책을 강력히 추천합니다.
- 더스틴 D. 트라멜(Dustin D. Trammell), 보안 연구가
이 책은 정말 꼭 사야 한다고 강력히 추천합니다. 책의 내용이 매우 좋고, 이전에 제가 읽은 그 어느 책보다(IDA Pro 매뉴얼도 포함해서) 철저하게 IDA Pro를 다룹니다.
- 세바스티앙 포스트(Sebastian Porst), 마이크로소프트 수석 소프트웨어 보안 엔지니어
애플리케이션 내외부적으로 보안 결함이 없는지 시험하고자 하거나 풀기 힘든 런타임 결함을 해결하고자 할 때 IDA Pro는 가장 좋은 툴입니다. 그리고 이 책은 가장 신속한 안내서가 될 것입니다.
- 조 스태그너(JOE STAGNER), 마이크로소프트 프로그램 매니저
목차
목차
- 1부 IDA 소개
- 1장 디스어셈블리 소개
- 디스어셈블리 이론
- 디스어셈블리란?
- 디스어셈블리가 필요한 이유
- 디스어셈블리의 방법
- 2장 리버싱과 디스어셈블리 툴
- 분류 툴
- 요약 툴
- 심층 조사 툴
- 3장 IDA 프로 배경 지식
- 헥스레이 사의 저작권 침해 대책
- IDA Pro의 획득
- IDA 지원 사이트
- IDA 설치
- IDA 사용자 인터페이스 고찰
- 2부 IDA 기본 사용법
- 4장 IDA 시작
- IDA 시작
- IDA 데이터베이스 파일
- IDA 데스크탑 소개
- 초기 분석 과정 중 데스크탑의 진행 상황
- IDA 데스크탑 팁과 트릭
- 버그 보고
- 5장 IDA 데이터 디스플레이
- 기본 IDA 디스플레이
- 보조 디스플레이 화면
- 기타 IDA 디스플레이
- 6장 디스어셈블리 살펴보기
- 기본 탐색 기능
- 스택 프레임
- 데이터베이스 검색
- 7장 디스어셈블리 다루기
- 이름과 이름 지정
- IDA의 주석
- 기본 코드 변환
- 8장 데이터 타입과 데이터 구조
- 데이터 구조 파악
- IDA 구조체 생성
- 구조체 템플릿 활용
- 신규 구조체 가져오기
- 표준 구조체 활용
- IDA TIL 파일
- C++ 리버스 엔지니어링 기초
- 9장 상호 참조와 그래프
- 상호 참조
- IDA 그래프
- 10장 여러 가지 IDA
- 콘솔 모드 IDA
- IDA 일괄처리 모드 사용
- 3부 IDA 고급 사용법
- 11장 IDA 커스터마이징
- 환경설정 파일
- 기타 IDA 환경설정 파일 옵션
- 12장 FLIRT 시그니처로 라이브러리 인식
- 고속 라이브러리 식별과 인식 기술
- FLIRT 시그니처 적용
- FLIRT 시그니처 파일 생성
- 13장 IDA 심층 탐구
- 추가된 함수 정보
- loadint로 미리 정의된 주석 보강
- 14장 바이너리 패칭과 IDA 제약 사항
- 혼란을 야기하는 메뉴
- IDA 출력 파일과 패치
- 15장 IDC 스크립팅
- 기본적인 스크립트 실행
- IDC 언어
- IDC 스크립트 단축키
- 유용한 IDC 함수
- IDC 스크립트 예제
- IDAPython 스크립트 예제
- 16장 IDA SDK
- SDK 소개
- IDA API
- 17장 IDA 플러그인 아키텍처
- 플러그인 개발
- 플러그인 작성
- 플러그인 설치
- 플러그인 환경설정
- IDC 확장
- 플러그인 사용자 인터페이스 옵션
- 스크립트 플러그인
- 18장 바이너리 파일과 IDA 로더 모듈
- 알지 못하는 파일 분석
- 수작업으로 PE 파일 로딩
- IDA 로더 모듈
- IDA 로더 작성
- 다른 로더 전략
- 스크립트 로더 작성
- 19장 IDA 프로세서 모듈
- 파이썬 바이트 코드
- 파이썬 인터프리터
- 프로세서 모듈 빌드
- 프로세서 모듈 아키텍처
- 프로세서 모듈 스크립트
- 5부 실제 애플리케이션
- 20장 다양한 컴파일러
- 점프 테이블과 switch문
- RTTI 구현
- 디버그 바이너리와 릴리스 바이너리
- 기타 호출 규약
- 21장 난독화된 코드 분석
- 안티정적 분석 기법
- 안티동적 분석 기법
- IDA를 이용한 정적 바이너리 역난독화
- 가상 머신 기반 난독화
- 22장 취약점 분석
- 신규 취약점 발견
- IDA로 취약점을 발견한 후
- IDA와 취약점 개발 절차
- 셸코드 분석
- 23장 실제 IDA 플러그인
- IDAPython
- collabREate
- ida-x86emu
- MyNav
- 6부 IDA 디버거
- 24장 IDA 디버거
- 디버거 시작
- 디버거 디스플레이
- 프로세스 제어
- 디버깅 자동화
- 25장 디스어셈블러/디버거 통합
- 배경
- IDA 데이터베이스와 디버거
- 난독화 코드 디버깅
- IdaStealth
- 예외 처리
- 26장 추가 디버거 기능
- IDA를 이용한 원격 디버깅
- Bochs 활용 디버깅
- Appcall
- 부록 A IDA 5.0 무료 버전 사용
- IDA 무료 버전 제약 사항
- IDA 무료 버전 사용
도서 오류 신고
정오표
정오표
1쇄 오류/오탈자
[ p104 12행 ]
다fns다. → 다룬다.
[ p114 5-6행 ]
적은 크기를 디스크에서는 차지한다. → 적은 크기를 디스크에서 차지한다.
[ p136 아래에서 3번째 행 ]
지역 변수 y, z를 각기 c, b 값으로 초기화했다. → 지역 변수 x, y를 각기 c, b 값으로 초기화했다.
[ p142 아래에서 9번째 행 ]
옵션을 지엉하지 → 옵션을 지정하지
[ p166 6행 ]
컨텐스트 → 컨텍스트
2015. 9. 17 수정사항
[ p149 마지막 행 ]
이름 충돌 대화상자conflicting name dialog(그림 8-3)
->
이름 충돌 대화상자conflicting name dialog(그림 7-3)
2016. 7. 19 수정사항
[p39. 11행]
410257❷에서 시작하는
->
401257❷에서 시작하는