2014년 8월 30일 토요일

물리 메모리 수집(Physical Memory Acquisition)

Page info



물리 메모리 수집(Physical Memory Acquisition)



물리 메모리(RAM)는 컴퓨터의 구성 요소 기억 장치에 상응하는 요소이다. 지속적인 전력 공급을 요구하여 시스템 전원을 내리면 보관하던 데이터가 사라지기 때문에 휘발성 메모리라고도 한다. 


주 기억 장치는 컴퓨터의 필수 요소로, 데이터를 읽고 쓰는 속도가 빨라시스템 운용에 중요한 역할을 하고 성능에도 큰 영향을 미친다. 

실제로, 중앙 처리 장치(CPU)에서 연산되는 모든 데이터는  기억 장치를 거쳐 시스템에 저장되거나 결과를 사용자에게 전달한다. 사실상 운영체제 부팅 시, 운용에 필요한 모든 데이터는 물리 메모리에 로딩된다고 보는 것이 맞다. 


물리 메모리 수집의 필요성


휘발성 데이터 수집에서 다룬 내용과 같이 시스템 명령으로 추출하는 휘발성 데이터도 결국은 물리 메모리에 로딩된 정보를 가공하여 보여주는 것이 뿐이다. 

하지만, 시스템 명령는 사용의 편리성만큼 추출할 수 잇는 정보가 매우 한정적이라는 단점이 있다. 반면, 물리 메모리에는 시스템 운용정보 이외에도 웹 접속 로그인 비밀번호 같은 복호화된 데이터나 은닉된 프로세스처럼 커널영역의 조작된 정보 등, 조사에 유용한 정보를 다수 포함하고 있기에 꼭 수집하여 분석할 필요가 있는 것이다. 


시스템 유틸리티를 이용한 수집 vs 물리 메모리에서의 정보 추출

디지털 포렌식 초기에는 물리메모리에 대한 분석 기술이 부족하여, 시스템 유틸리티를 이용하여 데이터를 수집하지 않으면 원활한 활성 시스템 분석이 이루어지지 않았다. 
하지만 최근에는 꾸준한 연구 결과 활성 시스템 조사에 필요한 거의 대부분의 정보를 물리메모리에서 추출 가능 수준에 이르렀다. 

결론적으로, 손쉽게 수집하여 빠르게 시스템 활성 정보를 확인하기 위한 경우에는 시스템 유틸리티를 이용하는 것이 옳다. , 가능할 경우 물리 메모리 덤프를 우선적으로 수집하여 향후 분석에 활용하는 것이 조사에 도움이 된다는 점을 기억하자. 

페이지에서는, 물리 메모리에 저장된 데이터에 관련된 데이터를 수집하는 방법에 관한 정보를 기술하고자 한다. 


분석 대상(Target)

※ 아래의 내용은 PFP-List와 연동되는 정보로, PFP에서 확인 및 분석에 직접적인 활용이 가능합니다.
   (PFP ManualPFP DownloadPFP home)


운영체제의 물리 메모리 오브젝트(Physical Memory object)
Target Path(Location)
Physical Memory object
Check List
Physical memory dump image
Related Tools
[Public] Memory Acquisition

물리 메모리에 포함된 내용을 획득하는 가장 일반적인 방법은, 시스템 운영체제에서 관리하고 있는 물리 메모리 관련 오브젝트에 접근하여 내용을 복사(덤프)하는 것이다. 

시스템의 하위 레벨로 접근을 해야 가능한 기술로, 다소 구현이 어려울 수 있지만 잘 만들어져 제공되는 도구(PFP의 [Public] Memory Acquisition 참고)들이 많이 존재하므로 잘 활용하면 어렵지 않게 물리 메모리의 내용을 획득할 수 있다. 

단, Swap 파일(페이지 파일)에 저장된 내용은 획득할 수 없으므로, 별도로 획득할 필요가 있다. 

Swap파일은 메모리 공간을 효율적으로 사용하기 위해 자주 사용되지 않는 주기억 장치의 내용 보조 기억 장치로 옮겨놓을 사용하는 파일이다.
(파일 위치, 아래 페이지 파일 참고)




VMWare 가상 메모리(VMWare virtual memory file)
Target Path(Location)
%VmwareFolder%\*.vmem
Check List
*.vmem files
Related Tools
[Public] Raw Copy

VMware 이미지가 조사 대상인 경우에, 가상 환경으로 구동된 운영체제는 물리 메모리 영역을 vmem이라는 확장자로 하여 파일로 관리한다. 

*.vmem파일을 획득하면 VMWare 시스템을 suspend하였을 때의 물리메모리 내용을 획득할 수 있다.




페이지 파일(Pagefile)
Target Path(Location)
%SystemDrive%\pagefile.sys
Check List
pagefile.sys
Related Tools
[Public] Raw Copy

Windows에서 사용하는 Swap 파일이다. 물리메모리 덤프와 연계하여 Swap out된 내용까지 고려하여 분석을 진행하는 것이 가장 이상적인 물리 메모리 영역의 분석 방법이다. 
(아직은 페이지 파일을 연계한 분석이 원활하게 진행되는 상황은 아니지만, 꾸준한 연구가 이루어지고 있으므로, 향후의 정밀한 연구 결과를 기대해 보자)



하이버네이션(Hibernation)
Target Path(Location)
%SystemDrive%\hiberfil.sys
Check List
Hibernation file
Related Tools
Hibr2Bin
[Public] Raw Copy

하이버네이션 파일은 시스템이 최대 절전 모드로 전환될 생성된다. 향후 복원을 위해 메모리의 내용을 상세히 기록하므로, 전환 당시 상황에 관한 많은 내용을 얻을 수 있다. 

단, 조사하는 대상은 시스템의 가장 최근 최대 절전 모드 직전의 내용인 점을 구분할 필요가 있다. 특정 도구(ex.Hibr2Bin)를 이용하여 물리 메모리 이미지로 변환이 가능하므로, 변환 후 물리 메모리의 분석 기법을 이용하여 정밀하게 조사할 수 있다. 




크래시 덤프(Crash dump)
Target Path(Location)
%SystemRoot%\Minidump\*.dmp
Check List
Crash dump file
Related Tools
[Public] Raw Copy



크래시 덤프(Crash Dump)는 시스템 커널에서 충돌이 발생한 경우 BSOD(Blue Screen Of Death) 함께 생성되는 메모리 덤프 파일이다. 

시스템에 크래시 덤프가 존재할 시, 충돌 당시의 시스템 상황을 살필  있는 정보를 담고 있을 가능성이 크기 때문에 가급적 수집하는 것이 옳다. 

다만, 이와 같은 분석은 보통 정밀 조사 단계에서 진행되므로, 활성 시스템 분석 절차에는 적합하지 않다는 것을 알아두자. 



관련 문서 

    댓글 없음:

    댓글 쓰기

    질문이나 조언은 언제든 환영입니다.
    악의적 댓글이나 무조건적인 비방은 삼가주세요.