티스토리 뷰

Digital Forensic

Microsoft Office 2013 MRU with Python

Digitalis_Kim 2016. 3. 20. 13:54



Microsoft Office 2013 MRU with Python


얼마 전 Forensic-Proof 에서 Acrobat PDF의 사용 기록에 관한 글을 보게 되었다.

많은 어플리케이션에서 제공하는 최근 문서 (Recent Document) 기능을 이용해

사용자가 열어 봤거나 수정했는 파일들의 정보 (수정 시간, 마지막 사용 시간,파일 경로) 를 알 수 있는데 이 정보들이

Acrobat PDF의 경우 파일로 저장되어 삭제하지 않는 이상,

이 정보를 수집하여 활용할 수 있다는 내용이였다.


8.0 이하는 MySQL을 활용하여 저장을 하며

9.0 이상은 SQLite를 활용하여 저장을 하여 SQLite Browser로

손쉽게 그 내용을 확인 할 수 있게 된다.



여기서 궁금한 점이 들었다. 물론 Adobe사의 Acrobat Reader도 많은 사람이

사용하는 범용 소프트웨어 중 하나이지만 Microsoft의 Office 시리즈도

세계적으로 많이 사용되는 제품이며 Acrobat Reader와 동일하게

최근 문서를 보여주는 기능이 존재한다.


Acrobat Reader의 경우에는 최근 사용 문서 목록을 아래의 경로에 파일의 형태로 저장한다.

C:\Users\DongHyun\AppData\LocalLow\Adobe\Acrobat\9.0\파일 명


그렇다면 Microsoft Office의 경우에도 일반적으로 파일 형태로 저장되어 있지 않을까?

라고 생각하여 Acrobat Reader와 유사하게 파일들을 찾아 보았다.



그러나 최근 문서와 관련된 파일들을 찾을 수 없었는데, 구글링 결과

레지스트리에서 최근 문서와 관련된 정보를 찾을 수 있다는 것을 알게 되었다.



그렇다면 아래와 같은 레지스트리 경로로 찾아 들어가보자.

HKEY_CURRENT_USER\Software\Microsoft\Office\15.0



위와 같은 경로로 접근하게 되면 Word, Excel, Powerpoint와 같은

Office 프로그램 목록이 로드 될 것이다. 이중에 우리가 살펴봐야할 레지스트리 값은

User MRU (User Most Recently Used File)로

각 프로그램 마다 이 값이 존재한다.

예시로 자주 사용되는 Excel의 User MRU 값을 살펴 보도록 하자.




다음과 같이 최근 사용한 파일들이 동일하게 저장되어있음을 확인 할 수 있다.

다만 어플리케이션 상에서 항목을 제거하게 되면 동시에 레지스트리의 값도 사라지게 된다.




이렇게 레지스트리 편집기를 통해서 확인할 수 있지만,

해당 값을 구하기 위해서 매번 편집기를 이용하는 것은 번거로운 점이 존재한다.

그래서 Python을 이용하여 툴을 만들어 해당 값을 빠르게 알아 볼 수 있도록 하였다.



위와 같이 툴이 작동되며 소스코드는 아래와 같다.


Microsoft Office 2013 MRU Loader


원할한 사용을 위해서는 최초 사용시, 레지스트리 경로를 바꾸어주어야 한다.

최초 사용시에는 번거로운 점이 있을수 있지만, 그 이후부터는 편리하게 정보를

습득 할 수 있을 것이다.

'Digital Forensic' 카테고리의 다른 글

Google Chrome History with Python  (0) 2016.03.22
Adobe Reader DC Recent Files with Python  (0) 2016.03.21
HWP Recent File with Python  (0) 2016.03.21
[문서] Volatility Cookbook  (0) 2016.03.19
Windows MBR Analysis Document  (2) 2016.03.19
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday