목차
목차
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