본문 바로가기

[+] Forensic

Memory Analysis (3)

이번에는 메모리 덤프 방법 중 소프트웨어를 이용한 덤프 방법을 알아볼 것이다.

종류를 알아보기 전 소프트웨어를 이용한 메모리 덤프의 장단점을 알아보자.

[소프트웨어를 이용한 메모리 덤프의 장단점]
1. 장점
    - 메모리 덤프를 하기 위해 추가적인 장비가 필요하지 않음.
    - 상용 도구와 크게 다르지 않은 성능을 가지고 있는 공개 도구들이 있음.
    - 상용 제품들은 원격에 있는 컴퓨터에서도 메모리 덤프를 수집할 수 있음.

2. 단점
    - 커널 레벨 루트킷과 악성 프로그램에 매우 취약함.
    - OS의 종류와 버전에 따라 사용할 수 있느 도구에 제약을 받음.
    - 수집하는 메모리에 자신의 흔적을 남김. 


위의 내용에서 보았듯이 소프트웨어를 이용한 메모리 덤프에도 장단점이 존재한다.

하드웨어를 이용한 메모리 덤프는 얻어지는 결과에 대해서는 좋지만 그 과정에 제약사항이 많고 검증되지 않은 기법들이어서

보통 소프트웨어를 통한 메모리 덤프를 수행한다.

이제 소프트웨어를 통한 메모리 덤프에는 어떠한 방법들이 있는지 알아보겠다.

(도구들 중 Windows XP SP2의 /device/physicalmemory 를 참조하여 메모리 덤프를 수행하는 툴들이 있는데 SP2 이후에는 /device/physicalmemory 를 참조할 수 없어 작동하지 않는 도구들이 있다. 이 도구들은 설명에서 제외되었다.)

[DD]
DD는 유닉스도구 중 하나로 GNU License로 배포되는 도구이다. 사용법이 간단한것에 비해 결과물이 좋아 인기가 좋은 도구이다. 유닉스 도구를 기초로 하여 윈도우에서도 적용이 가능한 윈도우버전도 존재한다. DD는 사용자가 접근 가능한
모든 데이터를 바이트 또는 블록 단위로 복사하는데, 복사하려고 하는 영역을 OS가 인식하지 못하거나, 사용자권한이
낮아 접근하지 못하는 영역이거나, 지원하는 API가 없는 경우를 제외하고는 모든 시스템 데이터를 덤프할 수 있다.
DD의 포맷이미지는 로우 데이터 포맷이미지라고 하여 대부분의 포렌식 도구에서 이 포맷을 지원한다.
DD의 장점으로는 데이터의 형태를 그대로 덤프한다는 것이고, 단점은 부가정보가 제공되지 않아 분석하는데 시간이 오래
걸린다는 것이다.


[KntDD]
이 도구는 DFRWS 2005의 Memory Analysis 대회에서 처음 제작되었으며, 이 대회의 우승팀 중 한팀이 문제를 풀기위해 제작한 도구이다. 이 도구는 메모리 덤프를 네트워크로 전송하는 기능을 포함하고 있으며, 메모리 덤프를 윈도우 크래시 덤프 포맷으로 변환하는 기능도 가지고 있다. 하지만 이 도구는 보안전문회사, 군대, 정부기관에만 제공되고 있어 일반인들은 사용 할 수 없다.
이런 이유에서 실습이 불가하다. 


[MDD]
Mantech에서 만들어진 도구이며 메모리 덤프만을 위해 만들어진 도구이다. Windows XP SP2(32bit) 이후 버전에서도 문제없이 수행가능하지만 업데이트가 되지 않는 것이 문제이다. 또 64bit를 지원하지 않아 모든 시스템에 적용하기에는 무리가 있다.
사용법 : mdd -o <파일이름.mdd> --> 파일의 확장자는 조사관의 판단에 따라 임의적으로 정할 수 있음

[그림 1 - mdd 실행화면]

* 너무 시간이 오래걸려 결과물은 얻지 못하고 실행화면만 첨부한다.


[WIN32(64)DD]
이 도구도 mdd처럼 메모리 덤프 전용으로 개발된 도구이다. 많은 기능을 포함하고 있으며, 지원하는 윈도우 버전이 많다.
이 도구는 기본적으로 로우포맷을 지원하며, 추가로 크래시포맷과 하이버네이션 포맷을 지원한다. 
또 이 도구는 네트워크 전송 기능도 가지고 있으며, 64bit 시스템도 지원하고 4GB 이상의 메모리 덤프도 지원한다.

* 이 도구의 CLI 버전을 구할 수 없어 실습을 할 수 없었다. Sourceforge에 GUI 버전이 있는데 그 버전은 내 시스템에서는 작동하지 않아 실습 진행이 되지 않는다.  


[Fastdd]
포렌식 분야를 연구하고 있는 baadc0de라는 닉네임을 사용하는 국내 블로거가 제작한 메모리 덤프 도구로 제작자의 말에 따르면 win32dd보다 속도가 빠르다고 한다. 32bit 시스템과 64bit 시스템을 모두 지원한다.
참고 URL :  http://baadc0de.blogspot.com/2010/12/fastdd-fastest-windows-physical-memory.html 

* 현재 다운로드 링크에 파일이 지워져 도구를 구하지 못해 제작자가 캡쳐한 이미지로 대신하겠다.

[그림 2 - Fastdd 실행화면]



[기타 상용 도구]
위에서 알아본 것들 외에 상용도구들이 있는데 목록은 다음과 같다.
 - FastDump : CLI 기반의 도구로 HDGary사에서 제작하였다.
 - Pro Discover IR: Technology Pathway 사에서 제작했으며 메모리 덤프 전용이 아닌 침해사고용으로 개발된 도구이다.
 - EnCase Enterprise : Guidance software 사에서 제작했다.
 - AccessData Enterprise : AccessData 사에서 제작했으며, 기업 환경에서의 네트워크에 있는 컴퓨터의 메모리 덤프를
                                       수집하는데 목적이 있다. 

대부분 상용도구들은 메모리 덤프 전용이 아닌 복합적 기능이 구현된 도구들이다. 그렇기에 가격도 비싸 메모리 덤프만 할 것이라면 굳이 구입 할 필요는 없다.


'[+] Forensic' 카테고리의 다른 글

Memory Analysis (5)  (0) 2011.12.26
Memory Analysis (4)  (0) 2011.12.25
HardDisk 구조  (0) 2011.12.24
Memory Analysis (2)  (0) 2011.12.24