Leanpub Header

Skip to main content

버퍼 오버플로우 악용 및 방어 우회

메모리 손상 취약점, 익스플로이팅 및 방어에 대한 심층 연구

This book is 100% completeLast updated on 2026-07-16

메모리 손상(Memory Corruption)은 여전히 가장 심각한 소프트웨어 취약점 유형 중 하나입니다. 이 책은 메모리 손상의 기초 개념, 최신 익스플로잇 기법, 그리고 이를 방어하기 위해 설계된 다양한 방어 메커니즘을 살펴보며, 보안 전문가와 연구자들이 이러한 취약점이 어떻게 동작하는지 깊이 이해하고 이를 효과적으로 완화하는 방법을 익힐 수 있도록 돕습니다.

This book is a translation into Korean of Buffer Overflow Exploitation and Defense Evasion which was originally written in English

Minimum price

$19.00

$29.00

You pay

Author earns

$

Also available for 1 book credit with a Reader Membership

PDF
EPUB
WEB
APP
156
Pages
About

About

About the Book

이 책은 메모리 손상(Memory Corruption) 취약점에 대해 포괄적이고 기술적으로 엄밀한 내용을 다루며, 이러한 취약점이 발생하는 근본적인 원인인 CPU 아키텍처부터 오늘날의 보안 환경을 규정하는 고급 익스플로잇 기법과 최신 방어 기술에 이르기까지 체계적으로 설명합니다. 컴퓨터 메모리 아키텍처, 프로세스 메모리 구조, 그리고 어셈블리 언어의 기초부터 시작하여, 스택 기반 및 힙 기반 버퍼 오버플로우, Use-After-Free(UAF), 포맷 문자열(format string) 취약점 및 기타 메모리 손상 버그를 순차적으로 다룹니다. 또한 Windows 및 Linux 플랫폼을 대상으로 셸코드(shellcode), 반환 지향 프로그래밍(Return-Oriented Programming, ROP), 점프 지향 프로그래밍(Jump-Oriented Programming, JOP), 정보 유출(Information Leak) 등 익스플로잇 개발의 핵심 개념을 설명합니다. DEP/NX, ASLR, 스택 카나리(Stack Canary), Intel CET, ARM PAC, 제어 흐름 무결성(Control Flow Integrity, CFI)과 같은 최신 완화 기법을 심도 있게 분석하며, 익스플로잇 연구와 방어 기술 간에 지속적으로 이어지는 경쟁 구도 또한 살펴봅니다. 마지막 장에서는 취약점 연구 방법론, 퍼징(Fuzzing), 안전한 코딩(Secure Coding) 실무, 그리고 보안 사고 대응(Incident Response)을 다룹니다. 이 책은 방어적 목적에서 메모리 손상을 가장 깊이 있게 이해하고자 하는 보안 전문가, 리버스 엔지니어, 취약점 연구원, 그리고 고급 수준의 학습자를 대상으로 합니다. 본서에서 설명하는 모든 기법은 윤리적인 보안 연구와 책임 있는 취약점 공개(Responsible Disclosure)의 맥락에서 제시됩니다.

Author

About the Author

Steve Publications

Steve is a technology professional with more than 20 years of experience in software development, server infrastructure, cybersecurity, vulnerability research and reverse engineering. Throughout his career, he has designed, secured, analyzed and tested complex software and infrastructure, with a particular focus on understanding how systems fail and how they can be made more secure.

Outside of work, Steve enjoys sharing knowledge with the technology community. He collaborates with researchers, industry experts and technology professionals to write practical books covering software development, cybersecurity, cloud computing, networking, DevOps, artificial intelligence and enterprise technologies. His books focus on practical learning through clear explanations, real-world examples and hands-on exercises. With more than two decades of industry experience, his goal is to help IT professionals, students and technology enthusiasts build useful skills and stay current in a rapidly changing industry.

We believe readers deserve to know how our books are created. Most of our authors are not native English speakers, so we use AI to help translate, proofread manuscripts, fix grammar, improve sentence structure and make technical explanations easier to read. AI is used as an editing tool only. It does not replace the research, technical knowledge or hands-on experience behind our books. Some of our authors also prefer to remain anonymous for privacy or professional reasons. In those cases, we publish their work under a different name. The author's name may be different, but the quality of the content and our review process remain the same.

Every book is written, reviewed and maintained by experienced technology professionals, with contributions from our private technical community of more than 400 engineers and researchers from Ukraine, Belarus and Russia. We spend far more time validating technical accuracy and keeping our content up to date than generating text. We are always interested in working with experienced professionals who have deep expertise in a particular technology or domain. If you would like to publish a book with us or help review an existing manuscript, we'd love to hear from you. Send us a message describing your area of expertise. We are especially interested in niche technologies, specialized skills and emerging topics that are underrepresented in existing technical literature.

If you look through the contents of our books, you'll see practical examples, detailed explanations and material that is regularly updated. Our goal is to publish books that professionals can actually rely on, not low-effort AI-generated content. If you ever feel that one of our books does not meet that standard, Leanpub offers a 60-day money-back guarantee. Feel free to request a refund if you are not satisfied with your purchase.

Translations

Translations

Contents

Table of Contents

메모리 손상 취약점, 익스플로이팅 및 방어에 대한 심층 연구

서론

제1장: 컴퓨터 메모리 아키텍처 및 CPU 기초

  1. 폰 노이만 아키텍처와 메모리 어드레싱
  2. CPU 레지스터와 그 역할
  3. 명령어 실행과 Fetch-Decode-Execute 사이클
  4. 엔디안과 데이터 표현
  5. 권한 레벨과 링 아키텍처
  6. 하드웨어 수준의 메모리 매핑

제2장: 프로세스 메모리 레이아웃 및 운영 체제 메모리 관리

  1. 가상 메모리 및 주소 변환
  2. 텍스트, 데이터, BSS, 힙 및 스택 세그먼트
  3. 공유 라이브러리와 동적 링크
  4. 메모리 할당: malloc, free 및 할당자
  5. 페이지 테이블과 MMU
  6. 크로스 플랫폼 차이: Linux와 Windows 메모리 레이아웃

제3장: 어셈블리 언어 필수 개념 및 호출 규약

  1. x86 및 x86_64 명령어 세트 개요
  2. 익스플로잇 개발용 공통 명령어
  3. 스택 프레임: 프롤로그, 에필로그 및 로컬 변수
  4. System V AMD64 ABI 호출 규약
  5. Windows x64 호출 규약
  6. 위치 독립 코드 및 리로케이션

제4장: 디버깅 워크플로우 및 바이너리 분석 기초

  1. 보안 연구를 위한 GDB 필수 개념
  2. Windows의 WinDbg, x64dbg 및 Mona.py
  3. 메모리 검사 및 브레이크포인트 전략
  4. radare2 및 Ghidra를 사용한 리버스 엔지니어링
  5. 정적 분석: objdump, readelf 및 PE 도구
  6. Frida를 사용한 동적 분석 및 계측

제5장: 스택 기반 버퍼 오버플로

  1. 스택 기반 오버플로의 해부학
  2. 리턴 어드레스 덮어쓰기 및 제어 흐름 하이재킹
  3. 오프셋 찾기: 패턴 생성 및 크래시 분석
  4. NOP 슬레드와 쉘코드 배치
  5. 환경 변수와 스택 스프레이
  6. Windows 및 Linux 시스템에 미치는 영향
  7. 워크스루: 쉘코드 삽입을 통한 완전한 스택 오버플로 익스플로잇

제6장: 힙 기반 버퍼 오버플로 및 힙 조작

  1. 메모리 할당자의 작동 방식: glibc ptmalloc 및 Windows 힙
  2. 힙 청크 메타데이터 및 프리 리스트 관리
  3. 힙 오버플로 익스플로이팅 기법
  4. 빈 분류 및 병합 공격
  5. House of Force, House of Spirit 및 명명된 힙 기법
  6. 워크스루: 임의 쓰기 원시 기법을 통한 Fastbin 공격

제7장: 관련 메모리 손상 취약점

  1. 오프바이원 오류와 그 익스플로이팅
  2. 메모리 손상으로 이어지는 정수 오버플로
  3. 사용 후 해제(UAF) 취약점
  4. 이중 해제 및 해제된 포인터 조작
  5. 형식 문자열 취약점
  6. 경계 밖 읽기 및 쓰기
  7. 메모리 안전에 영향을 미치는 레이스 컨디션
  8. 워크스루: vtable 덮어쓰기를 통한 Tcache 독성 UAF
  9. 워크스루: GOT 덮어쓰기를 통한 형식 문자열 임의 쓰기

제8장: 쉘코드 기초 및 제어 흐름 하이재킹

  1. 쉘코드란 무엇이며 왜 중요한가
  2. 위치 독립 쉘코드 작성
  3. Linux의 시스템 호출 기반 쉘코드
  4. Windows API 해결 및 LoadLibrary 기법
  5. 널 바이트 처리 및 인코딩
  6. 다형성 및 인코딩된 페이로드
  7. 워크스루: 스택 오버플로에서 쉘코드 빌드 및 실행

제9장: 리턴 지향 프로그래밍 및 코드 재사용 공격

  1. DEP가 해결한 문제와 ROP 솔루션
  2. ROP 체인 구성: 가젯, 피벗 및 레지스터
  3. ropper 및 ROPgadget으로 가젯 찾기
  4. Linux의 ROP: 시스템 호출 구성
  5. Windows의 ROP: VirtualAlloc 및 WinExec
  6. 워크스루: 경화된 바이너리에 대한 완전한 ROP 체인
  7. 점프 지향 프로그래밍 (JOP)
  8. 신호 지향 프로그래밍 (SROP)
  9. 지향 리턴 구성 (ORC)

제10장: 정보 누출 및 주소 공개

  1. ASLR이 익스플로이팅을 더 어렵게 만드는 이유
  2. 힙 스프레이 및 결정론적 메모리 레이아웃
  3. 형식 문자열 정보 공개
  4. Return-to-PLT 및 GOT 덮어쓰기를 통한 누출
  5. 워크스루: ASLR 우회를 통한 다단계 익스플로잇 체인
  6. Windows ASLR 우회 기법
  7. 부분적 덮어쓰기와 감소된 엔트로피
  8. 크로스 프로세스 정보 수집

제11장: 현대적 방어 및 완화 기법

  1. DEP/NX: 비실행 메모리 페이지
  2. ASLR: 주소 공간 레이아웃 무작위화
  3. 스택 카나리 및 ProPolice
  4. PIE, RELRO 및 GOT 보호
  5. SafeSEH 및 Windows의 CFG
  6. 제어 흐름 무결성 (CFI)
  7. Intel CET: 섀도 스택 및 간접 브랜치 추적
  8. ARM 포인터 인증 (PAC)
  9. 샌드박싱 및 프로세스 격리

제12장: 우회 연구 및 익스플로잇-완화 군비 경쟁

  1. 타임라인: 스택 스매싱에서 현대 방어까지
  2. 카나리 우회 기법
  3. ASLR 엔트로피 분석 및 우회
  4. Full RELRO 및 GOT 쓰기 한계
  5. CFI 우회 연구
  6. CET 우회 접근 방식
  7. ARM의 PAC 우회
  8. 미래: 다음은 무엇인가

제13장: 취약점 연구 방법론

  1. 퍼징 전략: 커버리지 기반 및 뮤테이션 기반
  2. 워크스루: 퍼징 캠페인 설정 및 실행
  3. 크래시 트리아지 및 근본 원인 분석
  4. 바이너리 분석: 기호 실행 및 컨콜릭 테스트
  5. 메모리_SANITIZE: ASan, MSan, UBSan
  6. 책임 있는 공개 및 CVE 할당

제14장: 안전한 코딩 관행 및 컴파일러 경화

  1. 안전한 문자열 및 메모리 함수
  2. 경계 검사 및 안전한 정수 산술
  3. 컴파일러 플래그: FORTIFY_SOURCE, StackProtector, CFProtection
  4. 메모리 안전 언어: Rust 대안
  5. 코드 리뷰 기법

제15장: 익스플로잇 탐지, 사건 대응 및 포렌식

  1. 실제 버퍼 오버플로 공격 탐지
  2. EDR 및 동작 모니터링
  3. 코어 덤프 분석 및 사후 디버깅
  4. 네트워크 레벨 익스플로잇 탐지
  5. RCE 이벤트용 사건 대응 플레이북
  6. 포렌식 타임라인 재구성
  7. 주요 익스플로잇 사건에서 배운 교훈
  8. 워크스루: 스택 오버플로 익스플로잇의 포렌식 분석

결론

참고문헌

Get the free sample chapters

Click the buttons to get the free sample in PDF or EPUB, or read the sample online here

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms...

Earn $8 on a $10 Purchase, and $16 on a $20 Purchase

We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earned over $15 million writing, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub