본문 바로가기

리디 접속이 원활하지 않습니다.
강제 새로 고침(Ctrl + F5)이나 브라우저 캐시 삭제를 진행해주세요.
계속해서 문제가 발생한다면 리디 접속 테스트를 통해 원인을 파악하고 대응 방법을 안내드리겠습니다.
테스트 페이지로 이동하기

리버스 엔지니어링 기드라 실전 가이드 상세페이지

컴퓨터/IT 개발/프로그래밍

리버스 엔지니어링 기드라 실전 가이드

유사 멀웨어로 익히는 소프트웨어 정적 분석
소장종이책 정가50,000
전자책 정가20%40,000
판매가40,000
리버스 엔지니어링 기드라 실전 가이드 표지 이미지

리버스 엔지니어링 기드라 실전 가이드작품 소개

<리버스 엔지니어링 기드라 실전 가이드> 실전 예제와 함께 순서대로 경험하고 익히는 리버스 엔지니어링



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





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

기드라 활용법에 더욱 익숙해질 수 있는 CTF 형식의 실습 문제와 예제 파일 제공


출판사 서평

단순한 도구 설명서가 아니다!

멀웨어 코드를 읽는 본질적인 힘을 길러주는 리버스 엔지니어링 학습서



2019년 3월 미국 국가안보국(NSA)이 소프트웨어 리버스 엔지니어링 도구 기드라(Ghidra)를 공개했습니다. 기드라 덕분에 디스어셈블러뿐만 아니라 고기능 디컴파일러를 무료로

사용할 수 있게 되었고 리버스 엔지니어링의 벽은 훨씬 낮아졌습니다. 하지만 리버스 엔지니어링 입문자는 여전히 어셈블리 언어를 학습하며 쉽게 좌절감을 느낍니다.



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





- 기초 편

1장 리버스 엔지니어링 입문

리버스 엔지니어링 기초 지식 설명

2장 기드라 입문

기드라 기본 기능 및 조작 방법 설명

3장 리버스 엔지니어링 연습

윈도우 프로그램 분석을 연습하며 기드라를 이용한 리버스 엔지니어링 기법 설명

4장 Ghidra Script/Extension으로 기능 확장

분석을 자동화할 수 있는 Ghidra Script와 기능을 확장해주는 Ghidra Extension 설명



- 실전 편

5장 Ghidra vs. Crackme - ELF 크랙미 분석

CTF와 비슷한 ELF 크랙미를 분석하고 기드라 분석 결과를 바탕으로 멀웨어에 이용되는 인코딩 방법 및 취약점 학습

6장 Ghidra vs. MOTHRA - 윈도우 백도어 분석

윈도우 모의 백도어 MOTHRA를 분석하며 기드라를 활용한 동적 멀웨어 분석 학습

7장 Ghidra vs. BlackBicorn - 윈도우 패커 분석

윈도우 패커(Packer) BlackBicorn을 분석하며 최근 윈도우 멀웨어에 이용되는 패커 구조와 기드라를 활용한 동적 분석 방법 학습

8장 Ghidra vs. Godzilla Loader - 윈도우 멀웨어 분석

윈도우 멀웨어 Godzilla Loader를 분석하며 기드라 분석 결과를 바탕으로 실제 멀웨어 동작 학습

9장 Ghidra vs. SafeSpy - 안드로이드 앱 분석

윈도우 멀웨어 FakeSpy를 무력화한 SafeSpy를 분석하며 기드라를 사용한 동적 안드로이드 앱 분석 방법 학습





부록

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



저자 소개

저자
나카지마 쇼타

㈜사이버디펜스(cyberdefense) 연구소에서 Cyber Threat Intelligence Analyst로 일하며 멀웨어 분석, 사고 대응, 위협 정보 수집·분석 업무를 맡고 있다. 기술 분야 서클 올세이프(Allsafe)의 관리자이기도 하다. JSAC, HITCON CMT, AVAR, CPRCon, Black Hat EUROPE Arsenal, CodeBlue BlueBox 등에서 연설했다.

저자
고타케 다이치

㈜아카쓰키(Akatsuki Inc.)에서 보안 엔지니어로 일하며 스마트폰 게임이나 웹 애플리케이션 취약점 진단, 사내 네트워크 침투 테스트 업무를 맡고 있다. 치트 대책 도구나 진단 도구 등의 개발도 좋아한다. Black Hat USA 2020 Arsenal에서 연설했다.

저자
하라 히로아키

㈜트렌드마이크로(Trend Micro Inc.)에서 멀웨어 분석이나 위기 대응, 위협 정보 수집·분석 업무를 맡아 레드팀에서 일한다. 기술 분야 서클 올세이프의 아트디렉터이기도 하다.

저자
가와바타 고헤이

㈜트렌드마이크로에서 사이버 범죄나 표적형 공격에 이용되는 멀웨어 분석과 더불어 취약점 연구를 한다. 기술 분야 그룹 올세이프의 CTO이기도 하다. RSA 콘퍼런스 APJ와 초대 손님으로만 운영되는 프라이빗 콘퍼런스에서 연설했다.

역자
이창선

1998년 리눅스를 처음 시작했다. 이후 각종 CTF 대회에서 입상했고 다양한 보안 콘퍼런스 및 보안 관련 세미나에서 발표했다. 현재 기아에서 차량 보안을 담당하고 있다.

역자
임재용

2012년 처음 보안 공부를 시작했다. 이후 각종 CTF 대회 등을 참여했고 보안 컨설팅 업무를 맡았었다. 현재는 일본 LINE에서 근무하며 코인 거래소 보안 업무를 맡고 있다.

목차

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 CodeBrowser



CHAPTER 3 리버스 엔지니어링 연습

3.1 downloader.exe

3.2 분석 접근법

3.3 함수 인수 분석

3.4 독자적인 구조체 수동 정의

3.5 downloader.exe 분석을 마치며



CHAPTER 4 Ghidra Script/Extension으로 기능 확장

4.1 기드라 기능 확장

4.2 Ghidra Script

4.3 Ghidra API

4.4 Headless Analyzer

4.5 Ghidra Extension



CHAPTER 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 Loader

8.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 Patching

A.2 Program Difference

A.3 Version Tracking

A.4 Ghidra Server

A.5 기드라 커스터마이즈

A.6 컬러 스키마 변경



APPENDIX B Ghidra Script 소개

B.1 내장된 Ghidra Script

B.2 서드 파티 Ghidra Script

B.3 저자들이 만든 오리지널 스크립트



APPENDIX C 실전 문제 풀이

C.1 Level1.exe

C.2 Level2.exe


리뷰

구매자 별점

5.0

점수비율
  • 5
  • 4
  • 3
  • 2
  • 1

2명이 평가함

리뷰 작성 영역

이 책을 평가해주세요!

내가 남긴 별점 0.0

별로예요

그저 그래요

보통이에요

좋아요

최고예요

별점 취소

구매자 표시 기준은 무엇인가요?

'구매자' 표시는 리디에서 유료도서 결제 후 다운로드 하시거나 리디셀렉트 도서를 다운로드하신 경우에만 표시됩니다.

무료 도서 (프로모션 등으로 무료로 전환된 도서 포함)
'구매자'로 표시되지 않습니다.
시리즈 도서 내 무료 도서
'구매자’로 표시되지 않습니다. 하지만 같은 시리즈의 유료 도서를 결제한 뒤 리뷰를 수정하거나 재등록하면 '구매자'로 표시됩니다.
영구 삭제
도서를 영구 삭제해도 ‘구매자’ 표시는 남아있습니다.
결제 취소
‘구매자’ 표시가 자동으로 사라집니다.

이 책과 함께 구매한 책


이 책과 함께 둘러본 책



본문 끝 최상단으로 돌아가기

spinner
모바일 버전