리버싱 입문
2016년 05월 31일 출간
국내도서 : 2016년 05월 18일 출간
- eBook 상품 정보
- 파일 정보 pdf (93.14MB)
- ISBN 9788965401292
- 쪽수 360쪽
- 지원기기 교보eBook App, PC e서재, 리더기, 웹뷰어
-
교보eBook App
듣기(TTS) 불가능
TTS 란?텍스트를 음성으로 읽어주는 기술입니다.
- 전자책의 편집 상태에 따라 본문의 흐름과 다르게 텍스트를 읽을 수 있습니다.
- 이미지 형태로 제작된 전자책 (예 : ZIP 파일)은 TTS 기능을 지원하지 않습니다.
PDF 필기가능 (Android, iOS)
이 상품은 배송되지 않는 디지털 상품이며,
교보eBook앱이나 웹뷰어에서 바로 이용가능합니다.
작품소개
이 상품이 속한 분야
1. 리버싱을 위한 프로그램 실행 구조
2. 레지스터
3. 스택과 스택 프레임
3.1 스택
3.2 스택 프레임
4. PE 파일
4.1 PE 파일 기본 개념
4.2 주소 지정 방법
4.3 IAT
5. OllyDbg 기본 기능
5.1 OllyDbg란?
5.2 OllyDbg 기본 설정
6. 어셈블러 기초 지식
6.1 어셈블러의 개요
6.2 어셈블러 기본 구조
7. 리버싱에 필요한 도구
7.1 리버싱 기초 예제 abex crackme
7.2 리버싱의 바이블 Lena의 강의
7.3 PE 파일 분석 프로그램 PEView와 Detect It Easy
7.4 메모리 덤프를 위한 OllyDbg 플러그인 OllyDumpEx
7.5 손상된 IAT를 복구하는 LoadPE
02 리버싱 시작하기
1. abex crackme 첫 번째 예제
1.1 프로그램 동작 방식
1.2 엔트리 포인트
1.3 스텝 오버(F8)와 스텝 인투(F7)
1.4 브레이크포인트(F2)와 프로그램 실행(F9)
1.5 전진과 후진 기능 사용하기
1.6 프로그램 다시 시작(
1.7 MessageBox( ) 함수 구조
1.8 서브루틴과 스택 프레임
1.9 프로그램 구조 분석
1.10 문제 해결
2. abex crackme 두 번째 예제
2.1 프로그램 동작 방식
2.2 프로그램 실행(Paused & Running)
2.3 문자열 검색
2.4 코드 분석
2.5 스택 분석하기
2.6 리틀 엔디안과 빅 엔디안
2.7 메모리 분석하기
2.8 프로그램 구조 분석
2.9 문제 해결
03 리버싱에 익숙해지기
1. abex crackme 세 번째 예제
1.1 프로그램 동작 방식
1.2 함수 호출 규약
1.3 부호 있는 숫자의 표현
1.4 프로그램 구조 분석
1.5 문제 해결
2. abex crackme 네 번째 예제
2.1 프로그램 동작 방식
2.2 API 검색
2.3 프로그램 구조 분석
2.4 문제 해결
3. abex crackme 다섯 번째 예제
3.1 프로그램 동작 방식
3.2 GetVolumeInformation( ) 함수
3.3 반복문을 통한 문자열 변경
3.4 프로그램 구조 분석
3.5 문제 해결
04 리버싱, 좀 더 깊숙이
1. Lena의 초보자를 위한 리버싱 강의
1.1 TUTS4YOU에서 Lena의 강의 소개
1.2 Lena의 강의 구성
2. Nag 창 없애기
2.1 프로그램 동작 방식
2.2 콜 스택
2.3 코드 캐이브
2.4 메모리 맵
2.5 어셈블
2.6 실행 파일로 복사
3. 일련번호 생성 로직의 이해
3.1 프로그램 동작 방식
3.2 프로그램 구조 분석
3.3 일련번호 생성 로직 분석
3.4 ASCII 코드 값 추출
05 리버싱의 어려운 문제들
1. 패킹과 언패킹
1.1 패킹과 언패킹의 개요
1.2 패킹 도구
2. 대표적인 패커 UPX
2.1 UPX 개요
2.2 패킹
2.3 PE 파일 확인하기
2.4 언패킹과 OEP
2.5 메모리 덤프
2.6 IAT 복구
3. 매뉴얼 언패킹 사례
3.1 ESP 레지스터를 활용한 OEP 찾기
3.2 하드웨어 브레이크포인트
3.3 OEP 찾기와 언패킹된 프로그램 저장
3.4 MUP 결과 확인하기
4. 코드 인젝션
4.1 코드 인젝션의 개요
4.2 셸코드 입력
06 지뢰 찾기 게임 해킹
1. 시간 설정 변경
1.1 디버깅 시작하기
1.2 SetTimer( ) 함수 호출 영역에 브레이크포인트 설정
1.3 SetTimer( ) 호출 부분 코드 분석
1.4 타이머 조작
2. 지뢰 찾기 맵핵 만들기
2.1 맵핵 방법론
2.2 GetKeyState( ) 함수에 브레이크포인트 걸기
2.3 브레이크포인트 확인하기
2.4 비교 함수 분석하기
2.5 스텝 인투(F7) 기능을 활용한 서브루틴 분석
2.6 세 번째 서브루틴 분석
2.7 세 번째 서브루틴 - 폭탄 위치를 찾는 로직 발견
2.8 맵핵 코드 작성
2.9 맵핵 코드 분석
07 맺음말
1. 공부해야 할 고급 기술들
1.1 64비트 아키텍처
1.2 IDA Pro
1.3 언패킹 기술
2. 리버싱 기술 활용 분야
2.1 악성코드 분석
2.2 버그 헌팅
2.3 해킹
2.4 해킹 방어 대회
3. 집필을 마치며
A1 OllyDbg 기본 기능
1. OllyDbg 개요
1.1 OllyDbg란?
1.2 OllyDbg 구성
1.3 OllyDbg 기본 설정
2. 뷰
2.1 CPU
2.2 메모리 맵(Memory map)
2.3 실행 모듈(Executable modules)
2.4 콜 스택(Call stack)
3. 플러그인
4. 브레이크포인트
5. 코드 영역 메뉴
5.1 수정
5.2 주석 달기
5.3 어셈블
5.4 New origin here 메뉴
5.5 Follow in Dump 메뉴
5.6 이동하기
5.7 Search for 메뉴
5.8 참조 위치 찾기
A2 어셈블러
1. 어셈블러의 개요
1.1 단순한 언어 어셈블러
1.2 어셈블러의 개요
1.3 간단한 어셈블러 테스트 방법
2. 어셈블러 기본 구조
2.1 2개의 인자를 사용하는 명령어
2.2 1개의 인자를 사용하는 명령어
2.3 인자가 없는 명령어
3. 어셈블러 명령어 종류
3.1 데이터 이동
3.2 산술 연산자
3.3 부울 연산자
따라 하며 자연스레 익히는 리버싱
기존의 리버싱 관련 서적은 리버싱에 필요한 다양한 지식을 전달하기 위해 많은 공을 들여 배경 지식을 설명하고 있다. 즉, 리버싱을 하려면 굉장히 다양한 지식이 필요하기 때문에 레지스터, 메모리, 스택, 어셈블러, PE 구조, 디버거와 기타 관련된 다양한 도구 등 일반적인 IT 분야에서는 사용하지 않는 지식을 자세히 설명한다. 하지만, 책만 읽어서 낯선 지식을 이해하기란 쉽지 않다. 처음 접하는 지식은 반복적으로 읽고 실험해봐야 원리를 이해할 수 있는데, 리버싱을 시작하기도 전에 어려운 이론을 깊이 공부하면 쉽게 지칠 수 있기 때문이다. 리버싱 입문자가 책으로 공부하다가 쉽게 포기하는 것도 이러한 이유 때문이다.
그래서 예제를 중심으로 이 책을 구성했다. "백문불여일타(百聞不如一打)"라는 IT 업계의 격언에 따라 이론을 깊이 있게 배우기보다는 이론은 간단히 공부하고 예제를 따라 하면서 자연스럽게 리버싱을 배울 수 있도록 구성되어 있다. 마지막으로, 반드시 알아야 하는 지식은 부록으로 한 번 더 다룬다.
이런 분에게 추천합니다
리버싱은 프로그램 언어를 공부하는 것과는 조금 다르다. 프로그램 언어는 기본서를 중심으로 문법을 공부하고 예제를 풀어보면 쉽게 익힐 수 있지만, 리버싱을 공부하려면 프로그램의 동작 방식과 컴퓨터 구조와 관련된 다양한 지식이 필요하다. 물론, 프로그래밍 언어와 컴퓨터 구조에 대한 기초 지식이 있는 사람이라면 이 책을 더욱 쉽게 이해할 수 있다.
이 책은 리버싱 입문서로, 리버싱과 관련된 깊은 지식을 제공하기보다는 관심 있는 사람에게 스스로 공부할 수 있는 힘을 길러주는 책이다. 컴퓨터 관련 전공 학생이나 IT 관련 업계에 종사하면서 리버싱을 시작하고 싶은 독자에게 이 책을 권하고 싶다.
작가정보
저자(글) 조성문
저자 조성문은 16년 경력의 정보시스템 전문가이자 화이트 해커다. 삼성SDS에서 주식 거래 시스템을 개발하면서 IT 경력을 시작했으며, KTH에서 인터넷 포털시스템을 운영하면서 해킹과 보안에 대한 많은 경험을 쌓았다. 현재 공공기관에서 정보보안과 시스템 운영 업무를 담당하고 있다.
정보시스템을 운영하면서 DDoS, SQL Injection, BOF 등 수많은 해킹 공격을 경험했다. 그때마다 시스템을 복구하고 취약점을 보완하기 위해 밤을 지새웠지만, 기존의 지식을 가지고는 누가 어떻게 해킹에 성공했는지 알아내기가 쉽지 않았다. 정보시스템을 안전하게 운영하려면 해킹 기술이 필요했고 리버싱, 침투 테스트, 파이썬 해킹 기술에 대한 연구를 시작했다. 지금은 그동안 얻은 경험을 바탕으로 후배들이 해킹의 기본 원리를 좀 더 쉽게 익힐 수 있도록 저술 활동에 힘쓰고 있다.
'컴퓨터시스템응용 기술사'와 '정보시스템 수석감리원' 자격증을 가지고 있으며, 저서로는 《파이썬 해킹 입문》과 《전설의 해커》가 있다. 또한, 국내에 몇 안 되는 정보시스템 운영 경험과 해킹 지식을 겸비한 전문가이기도 하다.
이 상품의 총서
Klover리뷰 (0)
- - e교환권은 적립일로부터 180일 동안 사용 가능합니다.
- - 리워드는 1,000원 이상 eBook, 오디오북, 동영상에 한해 다운로드 완료 후 리뷰 작성 시 익일 제공됩니다. (5,000원 이상 상품으로 변경 예정, 2024년 9월 30일부터 적용)
- - 리워드는 한 상품에 최초 1회만 제공됩니다.
- - sam 이용권 구매 상품 / 선물받은 eBook은 리워드 대상에서 제외됩니다.
- 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
- 도서와 무관한 내용의 리뷰
- 인신공격이나 욕설, 비속어, 혐오 발언이 개재된 리뷰
- 의성어나 의태어 등 내용의 의미가 없는 리뷰
구매 후 리뷰 작성 시, e교환권 100원 적립
문장수집
- 구매 후 90일 이내에 문장 수집 등록 시 e교환권 100원을 적립해 드립니다.
- e교환권은 적립일로부터 180일 동안 사용 가능합니다.
- 리워드는 1,000원 이상 eBook에 한해 다운로드 완료 후 문장수집 등록 시 제공됩니다. (5,000원 이상 eBook으로 변경 예정, 2024년 9월 30일부터 적용)
- 리워드는 한 상품에 최초 1회만 제공됩니다.
- sam 이용권 구매 상품 / 선물받은 eBook / 오디오북·동영상 상품/주문취소/환불 시 리워드 대상에서 제외됩니다.
구매 후 문장수집 작성 시, e교환권 100원 적립
신규가입 혜택 지급이 완료 되었습니다.
바로 사용 가능한 교보e캐시 1,000원 (유효기간 7일)
지금 바로 교보eBook의 다양한 콘텐츠를 이용해 보세요!