본문 바로가기

Forensics/Memory

메모리 포렌식

메모리 포렌식 개요

 메모리에는 프로세스가 사용한 데이터, 네트워크 정보 등 하드 디스크에서 찾을 수 없는 흔적이나 휘발성 데이터를 분석하여 악의적인 행동을 조사하고 식별한다.

1. 메모리 포렌식

 - 메모리 포렌식은 메모리(RAM)의 존재하는 휘발성 데이터를 덤프하여 분석하는 것을 의미한다.

* 휘발성 데이터란?
 - 전원 공급이 끊기거나 시간 흐름에 따라 저장공간에서 사라지는 데이터를 의미

2. 메모리 덤프

 - 메모리 덤프는 특정 순간에서 컴퓨터 메모리 데이터의 스냅 샷 캡쳐 파일이다.
메모리 분석 시 무결성을 위해서 가장 순수한(변조되지 않은) 메모리 덤프 파일을 얻어야 한다. 덤프 파일을 얻기 위해 다음과 같은 방법들이 있다.

  1. 하드웨어
    - PCI 장치
    - FireWire 장치
  2. 소프트웨어
    - DD
    - KntDD
    - MDD
    - WIN32(64)DD
    - Fastdd
    - 기타상용도구들..
  3. OS 크래시 덤프
    - OS가 시스템에 일어난 오류문제의 원인을 찾기 위해 생성하는 메모리 덤프이다.
    크래시 덤프 종류로는 작은 메모리 덤프, 커널 메모리 덤프, 전체 메모리 덤프가 있다.
  4. 하이버네이션 파일
    - 최대 절전 모드를 사용하기 위해 현재 작업 중인 내용을 하드 디스크에 기록한다.

3. 메모리 분석 도구

 - Volatility
대표적인 파이썬 기반 메모리 분석 도구로서 다양한 기능과 플러그인을 제공한다.

 - Redline
.NET 프레임워크가 설치되어 있지 않다면 실행되지 않는다는 단점과 함께 포터블 형식으로 다른 시스템에서 사용할 수 있는 장점도 존재한다.