'메모리 분석'에 해당되는 글 2건

  1. 2012.08.12 [InForensics] 메모리 분석 - 2 (2)
  2. 2012.08.09 [InForensics] 메모리 분석 - 1

메모리 덤프 만들기


소프트웨어적인 메모리 덤프 방법과, 하드웨어적인 메모리 덤프 방법을 알아보도록 하자.

각자의 방법 또한 장단점이 존재하며, 소프트웨어 메모리 덤프 방법은 도구에 따라서 또 장단점이 나뉘게 되니 메모리 덤프 방법 및 도구 선택은 매우 신중해져야한다.




하드웨어를 이용한 메모리 덤프



하드웨어를 이용한 메모리 덤프는 다음과 같은 특징을 지니고 있다.



1. 메모리 덤프의 완전성이 높음

2. OS의 특성에 구애받지 않음

3. 루트킷의 영향을 받을 가능성이 낮음

4. DMA를 이용하여 물리 메모리에 빠르게 접근 가능



메모리 덤프 하드웨어 장치는 다음과 같이 나뉜다.



1. PCI 장치


PCI 확장 슬롯에 꼽아 사용할 수 있다. 대표적인 장치로는 ‘Tribble’이 있으며, 실제 구매해 사용하는 용도가 아닌 실험적 용도로 사용된다. ‘Tribble’ 외의 PCI 기반 장치 역시 구매가 가능한 제품이 별로 없다.


2. FireWire 장치


IEEE1394 인터페이스를 이용한 장치이다. 리눅스, 윈도우에서 사용 가능한 특징이 있다. 하지만, FireWire는 소프트웨어 메모리 덤프와 비교해보았을 때 오프셋에 차이가 발생하는 문제점과, UMA 문제로 인해 시스템 크래시 및 메모리 소실이 발생할 수 있는 문제점이 있다.




하드웨어를 메모리 덤프에 대한 장 단점은 아래의 표를 확인하고, 소프트웨어 메모리 덤프로 넘어가 보겠다.







소프트웨어를 이용한 메모리 덤프


이번에는 먼저 소프트웨어를 이용한 경우 어떤 장점지 있고, 어떤 단점이 있는지 살펴보자.






WinDD


메모리 덤프를 위해 세상에 나온 프로그램은 매우 다양하다. 하지만, 모두 일일이 설명하진 않을 것이고 그 중에서 WinDD라는 프로그램을 소개할까 한다.


DD는 원래 GNU 라이센스로 배포되는 유명한 유닉스 프로그램 중 하나인데 간단한 사용 방법 때문인지 인기가 매우 좋은 프로그램으로 널리 알려져있다. 


WinDD는 이러한 DD를 메모리 덤프 전용(물론 WinDD는 프로그램 이름과 같이 윈도우 용으로 만들어졌다)으로 개량한 프로그램이며, Windows XP 이후 버전만을 지원하고 있고 32/64비트 환경을 지원한다.




[Figure 1 - WinDD Memory Dumping]


WinDD에 대해 더 상세히 알고싶다면, 여기를 누르면 된다.


메모리 덤프 프로그램은 이 외에도 Fastdump, ProDiscover가 있다. 각각 CLI, GUI 환경에서 동작하며 자세한 사용 방법은 본인들이 각자 터득해보길 바란다.


'공부 > Forensics' 카테고리의 다른 글

[InForensics] 메모리 분석 - 4  (0) 2012.08.22
[InForensics] 메모리 분석 - 3  (1) 2012.08.22
[InForensics] 메모리 분석 - 2  (2) 2012.08.12
[InForensics] 메모리 분석 - 1  (0) 2012.08.09
[Metasploit]Meterpreter API Cheat Sheet  (0) 2012.07.26
[Forensics]Live Response  (1) 2012.07.25
Posted by extr

댓글을 달아 주세요

  1. 풍만 2012.08.17 01:58 Address Modify/Delete Reply

    언덕풍만~ㅋ

  2. 포만 2012.08.17 19:45 Address Modify/Delete Reply

    ㄴ 언덕포만ㅋ

메모리 분석이란?


메모리에는 복호화된 파일 컨텐츠, 사용자 패스워드 등과 같이 메모리에서만 찾을 수 있는 특유의 정보가 있다.

메모리 포렌식이 오늘날 갑자기 각광 받는 이유를 크게 세 가지 정도 알아보자.




1. 직접 메모리에 로드되어 실행되는 악성코드가 있다.


인 메모리 라이브러리 인젝션이란, 하드 드라이브에 악성 실행 코드를 복사하지 않고, 바로 메모리에 로드하는 기법으로 기술이 예전에 비하여 상당히 고도화된 코드 실행 기법이다. 하지만 악성 코드가 실행되기 위해서는 반드시 평문의 실행 코드가 메모리에 로드되어야 하므로, 결국 이 같은 기법 또한 흔적을 남긴다는 것을 알 수 있다.



2. 애플리케이션의 사용자 프라이버시 보호 기능이 강화되고 있다.


사용자 프라이버시 보호는 디지털 포렌식에 있어서 매우 중요한 문제이다. 특히 소프트웨어 회사들은 사용자 프라이버시 보호를 위해 많은 노력을 기울일 필요가 있다.



3. 안티포렌식 기술의 확산.


이전의 안티 포렌식 도구들은 Slack 영역, MBR 영역, 비 할당 영역, DCO/HPA 영역 등에 컨텐츠를 은닉하거나, 컨텐츠를 삭제하기 위해 무작위의 데이터를 덮어 쓰는 방식 등을 이용했었다. 이 기술들은 최근에도 이용이 되고 있으며, 더욱 발전된 기법들로 포렌식 기술에 대한 대항력을 발전시켜나가고 있다.




이러한 이유로 메모리 분석은 디지털 포렌식 분야에 있어서 빼 놓을 수 없는 분석 단계라 여겨진다. 하지만, 중요한 만큼 분야가 이해하기 상당히 난해하기 때문에 예전부터 사람들이 쉽게 접하지 않는 영역으로 남아있다. 



1. 메모리 분석은 최근부터 관심을 받기 시작했다.


2. 커널 오브젝트 구조와 프로세스 관리, 메모리 관리 기법 등의 지식이 요구된다.


3. 메모리 구조 자체가 매우 난해하며, 여러 환경에 따라 변한다.



라이브 리스폰스와 메모리 분석



라이브 리스폰스와 메모리 분석은 다음과 같은 특징이 존재한다. 





표를 보았을 때 덤프 파일을 대상으로 하는 메모리 분석이 실 상황에서 하는 라이브 리스폰스에 비해 신뢰성과 만족스러운 결과를 보장해주는 것을 알 수 있다.


하지만, 아직 메모리 포렌식은 기법이나 도구들이 많이 발전되지 않은 상태라 우리가 원하는 수준에 미치지 못하고 있다. 하지만, 앞으로의 발전을 통해 메모리 포렌식이 많은 도움을 줄 것이라 기대해 볼 수 있다.




'공부 > Forensics' 카테고리의 다른 글

[InForensics] 메모리 분석 - 3  (1) 2012.08.22
[InForensics] 메모리 분석 - 2  (2) 2012.08.12
[InForensics] 메모리 분석 - 1  (0) 2012.08.09
[Metasploit]Meterpreter API Cheat Sheet  (0) 2012.07.26
[Forensics]Live Response  (1) 2012.07.25
[Metasploit] Msfpayload  (0) 2012.07.21
Posted by extr

댓글을 달아 주세요