책 소개
▣ 작가 소개
저자 : 김현민
hyunmini 라는 닉네임으로 활동하고 있으며, 2009년부터 보안 까페(secuholic)와 블로그를 운영하고 있다. ActiveX 명령실행 취약점, 메신저 버퍼오버플로우 취약점 등 다수의 취약점 발견 및 신고 경험이 있으며, 매년 다양한 주제로 보안 세미나 및 교육을 진행하였다. 코스콤에서 포렌식 및 침해사고 대응업무를, 금융결제원에서 취약점 분석평가 업무를 거처 현재는 금융보안원에서 모의해킹 업무를 수행하고 있으며, 국내 해커 그룹에서도 활동 중이다.
▣ 주요 목차
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
저자 : 김현민
hyunmini 라는 닉네임으로 활동하고 있으며, 2009년부터 보안 까페(secuholic)와 블로그를 운영하고 있다. ActiveX 명령실행 취약점, 메신저 버퍼오버플로우 취약점 등 다수의 취약점 발견 및 신고 경험이 있으며, 매년 다양한 주제로 보안 세미나 및 교육을 진행하였다. 코스콤에서 포렌식 및 침해사고 대응업무를, 금융결제원에서 취약점 분석평가 업무를 거처 현재는 금융보안원에서 모의해킹 업무를 수행하고 있으며, 국내 해커 그룹에서도 활동 중이다.
▣ 주요 목차
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
01. 반품기한
- 단순 변심인 경우 : 상품 수령 후 7일 이내 신청
- 상품 불량/오배송인 경우 : 상품 수령 후 3개월 이내, 혹은 그 사실을 알게 된 이후 30일 이내 반품 신청 가능
02. 반품 배송비
반품사유 | 반품 배송비 부담자 |
---|---|
단순변심 | 고객 부담이며, 최초 배송비를 포함해 왕복 배송비가 발생합니다. 또한, 도서/산간지역이거나 설치 상품을 반품하는 경우에는 배송비가 추가될 수 있습니다. |
고객 부담이 아닙니다. |
03. 배송상태에 따른 환불안내
진행 상태 | 결제완료 | 상품준비중 | 배송지시/배송중/배송완료 |
---|---|---|---|
어떤 상태 | 주문 내역 확인 전 | 상품 발송 준비 중 | 상품이 택배사로 이미 발송 됨 |
환불 | 즉시환불 | 구매취소 의사전달 → 발송중지 → 환불 | 반품회수 → 반품상품 확인 → 환불 |
04. 취소방법
- 결제완료 또는 배송상품은 1:1 문의에 취소신청해 주셔야 합니다.
- 특정 상품의 경우 취소 수수료가 부과될 수 있습니다.
05. 환불시점
결제수단 | 환불시점 | 환불방법 |
---|---|---|
신용카드 | 취소완료 후, 3~5일 내 카드사 승인취소(영업일 기준) | 신용카드 승인취소 |
계좌이체 |
실시간 계좌이체 또는 무통장입금 취소완료 후, 입력하신 환불계좌로 1~2일 내 환불금액 입금(영업일 기준) |
계좌입금 |
휴대폰 결제 |
당일 구매내역 취소시 취소 완료 후, 6시간 이내 승인취소 전월 구매내역 취소시 취소 완료 후, 1~2일 내 환불계좌로 입금(영업일 기준) |
당일취소 : 휴대폰 결제 승인취소 익월취소 : 계좌입금 |
포인트 | 취소 완료 후, 당일 포인트 적립 | 환불 포인트 적립 |
06. 취소반품 불가 사유
- 단순변심으로 인한 반품 시, 배송 완료 후 7일이 지나면 취소/반품 신청이 접수되지 않습니다.
- 주문/제작 상품의 경우, 상품의 제작이 이미 진행된 경우에는 취소가 불가합니다.
- 구성품을 분실하였거나 취급 부주의로 인한 파손/고장/오염된 경우에는 취소/반품이 제한됩니다.
- 제조사의 사정 (신모델 출시 등) 및 부품 가격변동 등에 의해 가격이 변동될 수 있으며, 이로 인한 반품 및 가격보상은 불가합니다.
- 뷰티 상품 이용 시 트러블(알러지, 붉은 반점, 가려움, 따가움)이 발생하는 경우 진료 확인서 및 소견서 등을 증빙하면 환불이 가능하지만 이 경우, 제반 비용은 고객님께서 부담하셔야 합니다.
- 각 상품별로 아래와 같은 사유로 취소/반품이 제한 될 수 있습니다.
상품군 | 취소/반품 불가사유 |
---|---|
의류/잡화/수입명품 | 상품의 택(TAG) 제거/라벨 및 상품 훼손으로 상품의 가치가 현저히 감소된 경우 |
계절상품/식품/화장품 | 고객님의 사용, 시간경과, 일부 소비에 의하여 상품의 가치가 현저히 감소한 경우 |
가전/설치상품 | 전자제품 특성 상, 정품 스티커가 제거되었거나 설치 또는 사용 이후에 단순변심인 경우, 액정화면이 부착된 상품의 전원을 켠 경우 (상품불량으로 인한 교환/반품은 AS센터의 불량 판정을 받아야 합니다.) |
자동차용품 | 상품을 개봉하여 장착한 이후 단순변심의 경우 |
CD/DVD/GAME/BOOK등 | 복제가 가능한 상품의 포장 등을 훼손한 경우 |
상품의 시리얼 넘버 유출로 내장된 소프트웨어의 가치가 감소한 경우 | |
노트북, 테스크탑 PC 등 | 홀로그램 등을 분리, 분실, 훼손하여 상품의 가치가 현저히 감소하여 재판매가 불가할 경우 |