1. 타임라인 분석이란 ?
타임라인 분석은 파일시스템의 메타데이터( 할당/비할당 포함 )에 있는 파일 시간을 기준으로 각 파일 시간별 정렬을 통해 가장 최근시간, 가장 오래된 시간, 사용빈도 등의 분석을 통해 시계열 분석을 하는 것이다.
타임라인 분석 대상은 상당히 다양하게 존재한다. NTFS, FAT 파일시스템의 파일 스템프값, 레지스트리 상의 운영체제 설치 시간, USB 연결시간, 레지스트리의 마지막 쓰기 값, 이벤트 로그 생성/기록 값, 프리패치의 마지막 실행 값 등 타임라인 분석에 포함시켜야 할 대상은 이보다 더 많이 존재한다. 분석가는 타임라인 분석에 포함시켜야 할 대상을 선별하고 각 타임라인 분석대상에 대한 특성을 파악하고 있어야 원활한 분석을 수행할 수 있다.
타임라인 분석 대상 중 가장 비중이 큰 파일시스템에 존재하는 시간값도 파일시스템 종류에 따른 특성 등을 이해하고 있어야만 제대로 된 타임라인 분석을 수행할 수 있다.
2. 파일 타임 시스템이란 ?
파일타임은 1601년 1월 1일 12:00 AM, UTC를 시작으로 100 나노세컨드 단위로 64비트 값으로 저장된다. 시스템은 프로그램이 파일을 생성, 접근, 수정했을 경우 파일타임을 기록한다.
NTFS 파일시스템은 UTC 포맷으로 시간값을 저장하며, 타임존이 변경되더라도 영향을 받지 않는다. 이는 타임존에 따라 저장되는 시간값이 달라지지 않는다는 것을 의미한다.
(ex)
타임존이 Asis/Seoul(+9) 일때 NTFS 파일시스템에 저장되어 있는 파일의 시간값이 2016/1/1 10:00 AM이면, 저장될 때에는 UTC 기준으로 2016/1/1 01:00 AM 으로 저장된다.
타임스탬프는 다양한 이유에 의해 업데이트 되며, 변경이 종료된 후 파일시간이 변경된다.
모든 파일시스템이 생성시간, 마지막 접근 시간을 기록하지 않으며, 방식 또한 다르다.
(ex)
FAT 파일시스템에서의 파일 생성시간은 10 밀리세컨드 단위로 되는 반면, 수정시간은 2초 단위로, 접근시간은 1일 단위로 기록된다.
(ex)
NTFS 파일시스템은 마지막 접근시간에 대한 기록을 마지막 접근 시간의 한시간이 지난 후에 기록한다.
3. 일반적인 타임스탬프별 특성
- 수정시간
수정시간이란, 파일이 마지막으로 쓰여진 시간( 내용이 마지막으로 업데이트 된 시간 )으로 파일명이 변경되는 것은 파일의 시간값에 영향을 주지 않으며, 파일을 단지 열기만 하는 것은 영향을 주지 않는다.
- 접근시간
접근시간이란, 볼륨에서 파일이 열리거나 수정된 시간이다. FAT 파일시스템에서는 접근시간은 날짜로만 기록된다.
- 생성시간
파일 또는 폴더가 해당 볼륨에 최초 생성된 시간이다.
4. 타임라인 분석 대상 및 정보
분석 대상 |
분석 대상 위치 |
세부 분석 대상 |
포함 시간정보 |
NTFS |
Root\$MFT |
$SIA(Standard Information Attribute) $FNA(File Name Attribute) |
Created Time Written Time Last Accessed Time Entry Modified Time |
FAT |
Directory Entry영역 |
Directory Entry |
Created Time Written Time Last Accessed Date |
ExFAT |
File Directory Entry영역 |
File Directory Entry |
Created Time Written Time Last Accessed Time |
Registry Hive |
C:\Windows\System32\config
C:\Users\[User]\ |
Hive Key ㅇSAM, SECURITY, SOFTWARE, SYSTEM, NTUSER.DAT |
Last Written Time |
EVT Event Log |
|
EventLogRecord |
TimeGenerated, TimeWritten |
EVTX Event Log |
|
Event Record |
TimeCreated |
Prefetch |
|
Header |
Last Run Time Filesystem Created Time |
Shortcut(LNK) |
|
ShellLinkHeader |
Target’s Created Target’s Written Target’s LastAccessed |
Recycle Bin |
|
INFO2, $I |
Deleted time/date |
Internet Explorer |
|
URL Record(index.dat) |
LastModified, LastAccessed, ExpiryTime |
Chrome |
|
History(SQLite) |
urls(last_visit_time), visits(visit_time), downloads(start_time) |
Firefox |
|
cookies.sqlite, downloads.sqlite, places.sqlite |
cookies(Expiry, lastAccessed), downloads(startTime, endTime), places(last_visit_date, visit_date, dateAdded, lastModified)
|
MS Word |
|
|
|
아래 한글 |
|
|
|
5. 타임라인 분석 문제
[01-2]_타임라인 포렌식 분석 기초 테스트.docx
위 파일을 받아 문제를 풀어 보자.
문제는 전체적으로 복사와 이동에 대한 차이를 알고 있는지를 묻고 있다.
복사와 이동에 대해서는 다음 표에서 설명한다.
|
복사 |
이동 |
생성시간 |
변경 |
유지 |
수정시간 |
유지 |
유지 |
접근시간 |
변경 |
변경 |
위 표에 대한 정보를 가지고 문제를 풀면 쉽게 풀 수 있다.
6. 타임라인 분석 문제 - 해설
[01-2]_타임라인 포렌식 분석 기초 테스트 - 해설.docx
'NCS보안3기 > 디지털 포렌식' 카테고리의 다른 글
[Forensics] FAT32 데이터 복구 실습 II (0) | 2017.05.13 |
---|---|
[Forensics] FAT32 데이터 복구 실습 I (0) | 2017.05.13 |
[Forensics] FAT32 파일 생성( LFN ) (0) | 2017.05.11 |
[Forensics] FAT32 파일 생성( SFN ) (0) | 2017.05.10 |
[Forensics] FAT32 파일추적 및 복구 (0) | 2017.04.29 |