Part 01. 개 요
Section 01. PC 내부 구조_15
1. 컴퓨터의 언어_15
2. CPU 와 레지스터_17
3. 메모리구조 _20
4. 스택과힙 _25
5. 함수 호출과 리턴_27
Section 02. 어셈블리어 기본 _36
1. 어셈블리어 기초_37
2. 어셈블리어 실습 _42
Section 03. 디스어셈블러와 디버거 _50
1. 디스어셈블러_50
2. 디버거 _59
Section 04. 윈도우 실행 파일 구조 _61
1. PE 파일 _61
Part 02. 취약점과공격
Section 01. 소프트웨어 취약점 _79
1. 취약점 _79
2. 취약점의 발견과 패치_81
Section 02. 취약점 분류 _83
1. Memory Corruption 취약점 _83
Section 03. Exploit 분류 _87
1. Local Exploit _87
2. Remote Exploit _90
Part 03. 쉘코드원리와작성
Section 01. 쉘코드 작성 원리 _97
1. 쉘코드기본 _97
2. 널바이트제거 _106
Section 02. 쉘코드 실전 _110
1. Universal 쉘코드 _110
2. 포트바인딩쉘코드_143
3. 리버스 커넥션 쉘코드 _151
Section 03. 쉘코드 인코딩 _156
1. Metasploit 을이용한쉘코드인코딩 _157
2. Custom 쉘코드 인코더 구현_165
Part 04. Exploit 작성
Section 01. 스택 버퍼오버플로우 Exploit _181
1. Direct EIP Overwrite _181
2. Trampoline Technique _192
3. SEH Overwrite _198
Section 02. 힙 버퍼오버플로우 Exploit _211
1. Function Pointer Overwrite _211
2. Vtable Overwrite _220
Section 03. 정수 오버플로우 Exploit _235
1. 정수 오버플로우 _236
2. 정수 오버플로우 Exploit _238
Section 04. Use-After-Free Exploit _246
1. Use-After-Free _247
2. HeapSpray _249
3. Use-After-Free Exploit 작성 _266
Section 05. Exploit 작성 자동화 _287
1. Metasploit Exploit 개발 _288
2. mona를 이용한 Exploit 작성 자동화 _306
Part 05. 방어와 우회기법
Section 01. SafeSEH 기법 _327
1. SafeSEH _327
2. Non SafeSEH 모듈 이용 _328
3. 모듈이 로드되지 않은 메모리 영역 이용
Section 02. DEP 기법 _333
1. DEP _333
2. RTL _338
3. Chaining RTL _341
4. ROP(Return Oriented Programming) _344
5. ROP 자동화 _363
Section 03. ASLR 기법 _380
1. ASLR _380
2. BruteForce _382
3. Non ASLR 모듈 사용 _382
4. 부분Overwrite _388
5. Info Leak _395
Part 06. 버그헌팅
Section 01. 기본방법론 _413
1. 블랙박스 VS 화이트박스 _413
2. 버그식별 및평가 _414
Section 02. 소스코드 분석 _416
1. 소스코드 리뷰_416
2. 소스코드 점검툴 _426
Section 03. 퍼징 _433
1. Dumb 퍼징 _434
2. Smart 퍼징 _439
3. 파일 퍼저구현 _450
4. 퍼저 기능개선 _465
Section 04. 리버싱 _469
1. 고급 디버깅 기술 _469
2. 디버거 플러그인활용 _476
3. 버그 헌팅을 위한리버싱 _486
4. 바이너리 디핑 _490
부 록 _499