상세정보

d

d

dd
dd

리버싱 입문

따라 하며 자연스레 익히는 어셈블러, 스택, 메모리, 레지스터

지은이 |   조성문
옮긴이 |   
발행일 |   2016-05-18
페이지 |   360가격 |   25,000원
ISBN |   978-89-6540-128-5
분야 |   보안/해킹, 프로그래밍 언어
dddddd

리버싱 입문

따라 하며 자연스레 익히는 어셈블러, 스택, 메모리, 레지스터

지은이 |   조성문
옮긴이 |   
발행일 |   2016-05-18
페이지 |   360
가격 |   25,000원
ISBN |   978-89-6540-128-5
분야 |   보안/해킹, 프로그래밍 언어
ddd
ddd
따라 하며 자연스레 익히는 리버싱

기존의 리버싱 관련 서적은 리버싱에 필요한 다양한 지식을 전달하기 위해 많은 공을 들여 배경 지식을 설명하고 있다. 즉, 리버싱을 하려면 굉장히 다양한 지식이 필요하기 때문에 레지스터, 메모리, 스택, 어셈블러, PE 구조, 디버거와 기타 관련된 다양한 도구 등 일반적인 IT 분야에서는 사용하지 않는 지식을 자세히 설명한다. 하지만, 책만 읽어서 낯선 지식을 이해하기란 쉽지 않다. 처음 접하는 지식은 반복적으로 읽고 실험해봐야 원리를 이해할 수 있는데, 리버싱을 시작하기도 전에 어려운 이론을 깊이 공부하면 쉽게 지칠 수 있기 때문이다. 리버싱 입문자가 책으로 공부하다가 쉽게 포기하는 것도 이러한 이유 때문이다.
그래서 예제를 중심으로 이 책을 구성했다. "백문불여일타(百聞不如一打)"라는 IT 업계의 격언에 따라 이론을 깊이 있게 배우기보다는 이론은 간단히 공부하고 예제를 따라 하면서 자연스럽게 리버싱을 배울 수 있도록 구성되어 있다. 마지막으로, 반드시 알아야 하는 지식은 부록으로 한 번 더 다룬다.

이런 분에게 추천합니다
리버싱은 프로그램 언어를 공부하는 것과는 조금 다르다. 프로그램 언어는 기본서를 중심으로 문법을 공부하고 예제를 풀어보면 쉽게 익힐 수 있지만, 리버싱을 공부하려면 프로그램의 동작 방식과 컴퓨터 구조와 관련된 다양한 지식이 필요하다. 물론, 프로그래밍 언어와 컴퓨터 구조에 대한 기초 지식이 있는 사람이라면 이 책을 더욱 쉽게 이해할 수 있다.
이 책은 리버싱 입문서로, 리버싱과 관련된 깊은 지식을 제공하기보다는 관심 있는 사람에게 스스로 공부할 수 있는 힘을 길러주는 책이다. 컴퓨터 관련 전공 학생이나 IT 관련 업계에 종사하면서 리버싱을 시작하고 싶은 독자에게 이 책을 권하고 싶다.
01 리버싱을 위한 기초 지식
__1. 리버싱을 위한 프로그램 실행 구조
__2. 레지스터
__3. 스택과 스택 프레임
__4. PE 파일
__5. OllyDbg 기본 기능
__6. 어셈블러 기초 지식
__7. 리버싱에 필요한 도구

02 리버싱 시작하기
__1. abex crackme 첫 번째 예제
__2. abex crackme 두 번째 예제

03 리버싱에 익숙해지기
__1. abex crackme 세 번째 예제
__2. abex crackme 네 번째 예제
__3. abex crackme 다섯 번째 예제

04 리버싱, 좀 더 깊숙이
__1. Lena의 초보자를 위한 리버싱 강의
__2. Nag 창 없애기
__3. 일련번호 생성 로직의 이해

05 리버싱의 어려운 문제들
__1. 패킹과 언패킹
__2. 대표적인 패커 UPX
__3. 매뉴얼 언패킹 사례
__4. 코드 인젝션

06 지뢰 찾기 게임 해킹
__1. 시간 설정 변경
__2. 지뢰 찾기 맵핵 만들기

07 맺음말
__1. 공부해야 할 고급 기술들
__2. 리버싱 기술 활용 분야
__3. 집필을 마치며

A1 OllyDbg 기본 기능
__1. OllyDbg 개요
__2. 뷰
__3. 플러그인
__4. 브레이크포인트
__5. 코드 영역 메뉴

A2 어셈블러
__1. 어셈블러의 개요
__2. 어셈블러 기본 구조
__3. 어셈블러 명령어 종류

A3 PE 파일 구조
__1. PE 파일 기초
__2. 주소 지정 방법
__3. PE 헤더 정보
__4. IAT

찾아보기
조성문

16년 경력의 정보시스템 전문가이자 화이트 해커다. 삼성SDS에서 주식 거래 시스템을 개발하면서 IT 경력을 시작했으며, KTH에서 인터넷 포털시스템을 운영하면서 해킹과 보안에 대한 많은 경험을 쌓았다. 현재 공공기관에서 정보보안과 시스템 운영 업무를 담당하고 있다.
정보시스템을 운영하면서 DDoS, SQL Injection, BOF 등 수많은 해킹 공격을 경험했다. 그때마다 시스템을 복구하고 취약점을 보완하기 위해 밤을 지새웠지만, 기존의 지식을 가지고는 누가 어떻게 해킹에 성공했는지 알아내기가 쉽지 않았다. 정보시스템을 안전하게 운영하려면 해킹 기술이 필요했고 리버싱, 침투 테스트, 파이썬 해킹 기술에 대한 연구를 시작했다. 지금은 그동안 얻은 경험을 바탕으로 후배들이 해킹의 기본 원리를 좀 더 쉽게 익힐 수 있도록 저술 활동에 힘쓰고 있다.
'컴퓨터시스템응용 기술사'와 '정보시스템 수석감리원' 자격증을 가지고 있으며, 저서로는 《파이썬 해킹 입문》과 《전설의 해커》가 있다. 또한, 국내에 몇 안 되는 정보시스템 운영 경험과 해킹 지식을 겸비한 전문가이기도 하다.

따라 하며 자연스레 익히는 리버싱

기존의 리버싱 관련 서적은 리버싱에 필요한 다양한 지식을 전달하기 위해 많은 공을 들여 배경 지식을 설명하고 있다. 즉, 리버싱을 하려면 굉장히 다양한 지식이 필요하기 때문에 레지스터, 메모리, 스택, 어셈블러, PE 구조, 디버거와 기타 관련된 다양한 도구 등 일반적인 IT 분야에서는 사용하지 않는 지식을 자세히 설명한다. 하지만, 책만 읽어서 낯선 지식을 이해하기란 쉽지 않다. 처음 접하는 지식은 반복적으로 읽고 실험해봐야 원리를 이해할 수 있는데, 리버싱을 시작하기도 전에 어려운 이론을 깊이 공부하면 쉽게 지칠 수 있기 때문이다. 리버싱 입문자가 책으로 공부하다가 쉽게 포기하는 것도 이러한 이유 때문이다.
그래서 예제를 중심으로 이 책을 구성했다. "백문불여일타(百聞不如一打)"라는 IT 업계의 격언에 따라 이론을 깊이 있게 배우기보다는 이론은 간단히 공부하고 예제를 따라 하면서 자연스럽게 리버싱을 배울 수 있도록 구성되어 있다. 마지막으로, 반드시 알아야 하는 지식은 부록으로 한 번 더 다룬다.

이런 분에게 추천합니다
리버싱은 프로그램 언어를 공부하는 것과는 조금 다르다. 프로그램 언어는 기본서를 중심으로 문법을 공부하고 예제를 풀어보면 쉽게 익힐 수 있지만, 리버싱을 공부하려면 프로그램의 동작 방식과 컴퓨터 구조와 관련된 다양한 지식이 필요하다. 물론, 프로그래밍 언어와 컴퓨터 구조에 대한 기초 지식이 있는 사람이라면 이 책을 더욱 쉽게 이해할 수 있다.
이 책은 리버싱 입문서로, 리버싱과 관련된 깊은 지식을 제공하기보다는 관심 있는 사람에게 스스로 공부할 수 있는 힘을 길러주는 책이다. 컴퓨터 관련 전공 학생이나 IT 관련 업계에 종사하면서 리버싱을 시작하고 싶은 독자에게 이 책을 권하고 싶다.