리버스 엔지니어링 기드라 실전 가이드 (유사 멀웨어로 먹히는 소프트웨어 정적 분석)

리버스 엔지니어링 기드라 실전 가이드 (유사 멀웨어로 먹히는 소프트웨어 정적 분석)

$51.04
Description
[한국어판 특별 부록 수록]

실전 예제와 함께 순서대로 경험하고 익히는 리버스 엔지니어링

소프트웨어 리버스 엔지니어링은 주로 소스코드가 없는 환경에서 타깃 프로그램을 분석할 때 사용된다. 리버스 엔지니어링 도구 기드라(Ghidra)는 디컴파일러 이외에도 다양한 아키텍처나 실행 파일 등을 제공하여 악성 프로그램 분석, 펌웨어 분석, 취약점 진단 등 다양한 분야에서 활용될 수 있다. 그러나 기드라를 제대로 활용하기 위해서는 풍부한 경험이 필요하다. 이 책은 실습을 중심으로 조작 방법이나 분석 방법을 효과적으로 배울 수 있도록 구성했다. 기드라를 사용해 다양한 연습용 프로그램을 분석하며 정체를 밝혀가는 묘미를 느껴보길 바란다.
저자

나카지마쇼타

㈜사이버디펜스(cyberdefense)연구소에서CyberThreatIntelligenceAnalyst로일하며멀웨어분석,사고대응,위협정보수집·분석업무를맡고있다.기술분야서클올세이프(Allsafe)의관리자이기도하다.JSAC,HITCONCMT,AVAR,CPRCon,BlackHatEUROPEArsenal,CodeBlueBlueBox등에서연설했다.

목차

CHAPTER1리버스엔지니어링입문
1.1리버스엔지니어링
1.2프로그램실행
1.3호출규약
1.4C언어와어셈블리언어
1.5PE포맷
1.6x64아키텍처

CHAPTER2기드라입문
2.1기드라란
2.2설치
2.3프로젝트
2.4임포트
2.5CodeBrowser

CHAPTER3리버스엔지니어링연습
3.1downloader.exe
3.2분석접근법
3.3함수인수분석
3.4독자적인구조체수동정의
3.5downloader.exe분석을마치며

CHAPTER4GhidraScript/Extension으로기능확장
4.1기드라기능확장
4.2GhidraScript
4.3GhidraAPI
4.4HeadlessAnalyzer
4.5GhidraExtension

CHAPTER5Ghidravs.Crackme-ELF크랙미분석
5.1크랙미란
5.2Level1:XOR을통한단순한인코더
5.3Level2:커스텀인코더
5.4Level3:버퍼오버플로
5.5Level4:Go로구현된바이너리해석

CHAPTER6Ghidravs.MOTHRA-윈도우백도어분석
6.1분석준비
6.2main함수
6.3C2서버에서명령어검색
6.4명령어분기
6.5MOTHRARAT분석을마치며

CHAPTER7Ghidravs.BlackBicorn-윈도우패커분석
7.1패커란
7.2BlackBicorn개요
7.3BlackBicorn분석(스테이지0)
7.4BlackBicorn분석(스테이지1)
7.5BlackBicorn분석(스테이지2)
7.6BlackBicorn분석을마치며

CHAPTER8Ghidravs.GodzillaLoader-윈도우멀웨어분석
8.1멀웨어계의고질라GodzillaLoader
8.2분석대상파일
8.3패커분석
8.4문자열난독화복원
8.5GodzillaLoader의기능
8.6GodzillaLoader분석을마치며

CHAPTER9Ghidravs.SafeSpy-안드로이드앱분석
9.1안드로이드기초
9.2안드로이드네이티브라이브러리의기초
9.3안드로이드앱정적분석
9.4SafeSpy앱분석

APPENDIXA기드라응용
A.1BinaryPatching
A.2ProgramDifference
A.3VersionTracking
A.4GhidraServer
A.5기드라커스터마이즈
A.6컬러스키마변경

APPENDIXBGhidraScript소개
B.1내장된GhidraScript
B.2서드파티GhidraScript
B.3저자들이만든오리지널스크립트

APPENDIXC실전문제풀이
C.1Level1.exe
C.2Level2.exe

출판사 서평

[한국어판특별부록수록]

단순한도구설명서가아니다!
멀웨어코드를읽는본질적인힘을길러주는리버스엔지니어링학습서

2019년3월미국국가안보국(NSA)이소프트웨어리버스엔지니어링도구기드라(Ghidra)를공개했습니다.기드라덕분에디스어셈블러뿐만아니라고기능디컴파일러를무료로
사용할수있게되었고리버스엔지니어링의벽은훨씬낮아졌습니다.하지만리버스엔지니어링입문자는여전히어셈블리언어를학습하며쉽게좌절감을느낍니다.

그래서이책에서는가능한한어셈블리언어를읽지않고리버스엔지니어링을배울수있도록,기드라의디컴파일러가출력하는유사C언어를기초로설명합니다.기초지식을습득한후모의파일을분석하며멀웨어코드를읽는본질적인힘을기르고다양한실전경험을쌓을수있도록구성했습니다.실전을순차적으로경험하는것은멀웨어분석학습에서가장어렵고도중요합니다.어셈블리언어가어려워도전하지못했거나어셈블리언어를읽기힘들어정적분석을포기했었다면지금이바로기회입니다!

기초편
● 1장리버스엔지니어링입문
리버스엔지니어링기초지식설명
● 2장기드라입문
기드라기본기능및조작방법설명
● 3장리버스엔지니어링연습
윈도우프로그램분석을연습하며기드라를이용한리버스엔지니어링기법설명
● 4장GhidraScript/Extension으로기능확장
분석을자동화할수있는GhidraScript와기능을확장해주는GhidraExtension설명

실전편
● 5장Ghidravs.Crackme-ELF크랙미분석
CTF와비슷한ELF크랙미를분석하고기드라분석결과를바탕으로멀웨어에이용되는인코딩방법및취약점학습
● 6장Ghidravs.MOTHRA-윈도우백도어분석
윈도우모의백도어MOTHRA를분석하며기드라를활용한동적멀웨어분석학습
● 7장Ghidravs.BlackBicorn-윈도우패커분석
윈도우패커(Packer)BlackBicorn을분석하며최근윈도우멀웨어에이용되는패커구조와기드라를활용한동적분석방법학습
● 8장Ghidravs.GodzillaLoader-윈도우멀웨어분석
윈도우멀웨어GodzillaLoader를분석하며기드라분석결과를바탕으로실제멀웨어동작학습
● 9장Ghidravs.SafeSpy-안드로이드앱분석
윈도우멀웨어FakeSpy를무력화한SafeSpy를분석하며기드라를사용한동적안드로이드앱분석방법학습

부록
기초편,실전편에서다루지않은기드라응용기능과더불어리버스엔지니어링에도움이되는GhidraScript소개.한국어판특별부록으로CTF형식의문제를실제로풀어볼수있는부록C를추가