책 소개
요약
저자 드미트리 보스토코프가 직접 운영하는 www.patterndiagnostics.com의 교육 교재로, 악성코드에 감염된 Windows 시스템의 메모리를 WinDbg로 분석하는 방법을 다루는 실전 안내서다. 악성코드에 감염된 시스템에서는 시스템 또는 애플리케이션의 비정상 행위 발생할 수 있는데, 저자가 개발한 패턴 지향 진단 방법을 활용해 악성코드 여부를 파악 하는 방법을 설명한다. 실사례를 기반으로 제작된 실습 예제 파일을 주제별로 제공해 독자가 따라 할 수 있는 형식으로 구성됐으며, 각 주제별로 필요한 지식을 설명한다.
이 책에서 다루는 내용
■ 메모리 덤프 분석을 위한 WinDbg 사용법
■ 프로세스, 커널, 컴플릿, 물리 메모리 등 여러 유형의 메모리 덤프 분석 방법
■ 직접 분석을 따라 할 수 있는 실습 파일 제공
■ 메모리 영역의 구성 및 PE 포맷
■ 모듈 로딩 전 모듈의 헤더와 버전 정보
■ 모듈 로딩 후 주소 맵, 모듈 헤더, 버전 정보, IAT, 임포트 라이브러리 호출, 모듈 무결성 확인
■ 패킹 또는 숨겨진 모듈 및 실행 흔적 검사
■ 피해 프로그램 프로세스의 메모리 덤프에서 악성코드 점검
■ 커널 메모리 영역을 살펴보고, CPU, 프로세스, 스레드 목록화 및 분석
■ CPU, IDT, SSDT, 드라이버, 디스패치 테이블 확인
■ 컴플릿 메모리 덤프에서 프로세스 탐색, 64비트 SSDT 확인, 프로세스와 스레드 토큰 확인, 숨겨진 프로세스 및 드라이버 발견, RIP 스택
■ 악성코드 분석 패턴별 정리
이 책의 대상 독자
이 과정은 Debugging Tools for Windows에 포함된 WinDbg 디버거를 이용해 복잡한 소프트웨어 환경상의 메모리 덤프를 분석해야 하거나, 소프트웨어가 비정상적으로 동작할 경우에 악성코드에 의한 것일지 악성코드의 존재 여부를 확인해야 하는 기술 지원 인력 및 고급 엔지니어를 대상으로 한다.
따라서 이 책은 컴퓨터 메모리 분석을 위해 WinDbg 디버거를 사용해보지 않은 소프트웨어 엔지니어, 품질 보증 및 소프트웨어 관리 엔지니어, 보안 연구원, 악성코드 분석가들에게 매우 유용할 것이다. 뿐만 아니라, 악성코드 탐지 및 분석 개념이 WinDbg 명령에 어떻게 적용되는지도 배우게 될 것이다. 어셈블리어를 읽을 수 있다면 일부분 도움이 되겠지만, 반드시 필요한 것은 아니다.
이 책을 읽는 독자들은 이미 WinDbg에 어느 정도 익숙하다고 가정하고, 독자들이 예제 연습에 집중하도록 구성하고 필요시 개념을 설명하는 방법을 선택했다.
■ WinDbg 디버거를 사용해보지 않은 소프트웨어 엔지니어, 품질 보증 및 소프트웨어 관리 엔지니어, 보안 연구원 및 악성코드 분석가
■ 메모리에서 악성코드 존재 여부를 확인하고자 하는 기술 지원 인력 및 고급 엔지니어
상세 이미지
목차
목차
- 소개
- 실전 연습
- 연습 0: WinDbg 다운로드, 설치 및 확인
- 연습 M1A
- 연습 M2
- 연습 M3
- 연습 M4
- 주요 질문/답변
- 부록
- 악성코드 분석 패턴
- 비정상 모듈
- 비정상 토큰
- 드라이버 장치 모음
- 실행 흔적
- 가짜 모듈
- 숨겨진 모듈
- 숨겨진 프로세스
- 훅스웨어
- 네임스페이스
- 심볼이 없는 컴포넌트
- 모듈 외부의 포인터
- 패킹된 코드
- 패치된 코드
- 사전 난독화 흔적
- 원시 포인터
- RIP 스택 트레이스
- 자가 진단(커널 모드)
- 스택 트레이스 모음
- 스택 트레이스 모음(I/O 요청)
- 문자열 힌트
- 알려지지 않은 모듈
- 모든 스레드의 원시 스택 덤프(커널 영역)
- 64비트 시스템에서의 컴플릿 스택 트레이스
- 악성코드 분석 패턴