CHAPTER 1 리버스 엔지니어링 입문1.1 리버스 엔지니어링1.2 프로그램 실행1.3 호출 규약1.4 C 언어와 어셈블리 언어1.5 PE 포맷1.6 x64 아키텍처CHAPTER 2 기드라 입문2.1 기드라란2.2 설치2.3 프로젝트2.4 임포트 2.5 CodeBrowserCHAPTER 3 리버스 엔지니어링 연습3.1 downloader.exe3.2 분석 접근법3.3 함수 인수 분석3.4 독자적인 구조체 수동 정의3.5 downloader.exe 분석을 마치며CHAPTER 4 Ghidra Script/Extension으로 기능 확장 4.1 기드라 기능 확장4.2 Ghidra Script 4.3 Ghidra API4.4 Headless Analyzer4.5 Ghidra ExtensionCHAPTER 5 Ghidra vs. Crackme - ELF 크랙미 분석5.1 크랙미란5.2 Level1: XOR을 통한 단순한 인코더5.3 Level2: 커스텀 인코더5.4 Level3: 버퍼 오버플로5.5 Level4: Go로 구현된 바이너리 해석CHAPTER 6 Ghidra vs. MOTHRA - 윈도우 백도어 분석 6.1 분석 준비6.2 main 함수6.3 C2 서버에서 명령어 검색6.4 명령어 분기6.5 MOTHRA RAT 분석을 마치며CHAPTER 7 Ghidra vs. BlackBicorn - 윈도우 패커 분석7.1 패커란7.2 BlackBicorn 개요7.3 BlackBicorn 분석(스테이지 0)7.4 BlackBicorn 분석(스테이지 1)7.5 BlackBicorn 분석(스테이지 2)7.6 BlackBicorn 분석을 마치며CHAPTER 8 Ghidra vs. Godzilla Loader - 윈도우 멀웨어 분석8.1 멀웨어계의 고질라 Godzilla Loader8.2 분석 대상 파일8.3 패커 분석8.4 문자열 난독화 복원8.5 Godzilla Loader의 기능8.6 Godzilla Loader 분석을 마치며CHAPTER 9 Ghidra vs. SafeSpy - 안드로이드 앱 분석9.1 안드로이드 기초9.2 안드로이드 네이티브 라이브러리의 기초9.3 안드로이드 앱 정적 분석9.4 SafeSpy 앱 분석APPENDIX A 기드라 응용A.1 Binary PatchingA.2 Program DifferenceA.3 Version TrackingA.4 Ghidra ServerA.5 기드라 커스터마이즈A.6 컬러 스키마 변경APPENDIX B Ghidra Script 소개B.1 내장된 Ghidra ScriptB.2 서드 파티 Ghidra ScriptB.3 저자들이 만든 오리지널 스크립트APPENDIX C 실전 문제 풀이C.1 Level1.exeC.2 Level2.exe