Log2timeline

Digital Forensic Wikipedia
둘러보기로 가기 검색하러 가기

소개

log2timeline은 Kristinn Gudjonsson에서 개발한 타임라인 분석 도구이며, 프리웨어로 제공된다. 최신 업데이트 일자는 2012년 5월 22일이며, 최신 버전은 0.66이다. log2timeline은 Linux, Macintosh 운영체제 환경에서 사용가능하다. log2timeline은 35종 이상의 로그 파일을 분석하여 타임라인을 제공하며, 출력 형식으로 BeeDocs, CEF, SCV, SQLite Database 포맷 등을 지원한다. log2timeline은 Perl로 작성되었으나 제작자의 실행 테스트는 Mac OS X(10.5.7+, 10.6.+)에서 이루어졌다. log2timeline의 일부 기능은 Windows에서도 작동한다. 운영체제별로 설치 방법이 다르며, 구성 요소가 모두 갖추어져 있어야 정상적으로 동작한다. log2timeline의 실행 화면은 [그림 1]과 같다.

[그림 1] log2timeline 실행 화면



사용법

log2timeline 압축파일을 해제 한 후 [그림 2]와 같은 명령어를 실행하여 설치한다. 단, 설치과정은 root 권한으로 진행해야 한다.

[그림 2] log2timeline 설치 명령어

설치 후, log2timeline을 실행하면 perl module이 존재하지 않는다는 에러 메시지를 확인할 수 있다. [그림 3]과 같은 명령어를 수행하여 필요한 module을 추가적으로 설치해야한다.

[그림 3] log2timeline 추가 모듈 설치

perl moudle을 설치 후, log2timeline을 실행하면 Usage 화면이 [그림 4]와 같이 나타난다.

[그림 4] log2timeline usage

log2timeline에서 사용하는 옵션들은 [표 1]과 같다.

[표 1] log2timeline 옵션
옵션 설명
-s TIME original machine의 시간 지연을 나타낸다.
TIME의 포맷은 X |Xs |Xm |Xh 이며 X는 정수 s, m, h는 각각 초, 분, 시를 나타낸다.
-m TEXT 파일의 경로를 제공하기 위해 파일 명 앞에 TEXT를 붙이기 위해 사용된다.
Ex) -m C:\는 모든 파일 명의 앞에 C:\를 붙여 파일이 존재하는 파티션을 나타낸다.
-f FORMAT log2timeline이 parsing할 파일의 포맷을 나타낸다. 파일 포맷 리스트는 -f list를 통해 확인할 수 있다.
-u log2timeline의 최신 버전을 체크한다.
-name HOST 정보를 추출한 host name을 정의한다.
-o FORMAT log2timeline의 parsing 결과의 출력 포맷을 나타낸다. 파일 포맷 리스트는 -o list를 통해 확인할 수 있다.
-d input module이 MFT Entry나 prefetch와 같은 정보를 포함할 수 있도록 한다.
-w FILENAME 출력 파일명을 정의하며 이 옵션이 없을 경우 stdout으로 화면에 출력된다.
-z TIMEZONE log 파일이 존재하는 컴퓨터의 timezone을 정의한다. 기본 값은 log2timeline이 실행되는 컴퓨터의 timezone을 따른다.
-Z TIMEZONE output module이 사용하는 timezone을 설정한다. 기본 값은 -z 옵션과 동일하다.
-t DIR Tool이 사용하는 임시 디렉터리를 정의한다.
-log FILENAME log2timeline의 에러나 information message를 파일에 기록한다. 옵션이 없을 경우 stderr가 사용된다.
-c file의 MD5를 계산하여 timestamp object에 저장한다.
-x log2timeline의 동작 속도를 빠르게 하여 입력 파일이 input module에 정확히 들어있는지를 테스트 하는 과정을 생략한다.
-e LIST 콤마(",")로 구분된 파일들을 스캔 대상에서 제외한다.
-r log2timeline을 timesacnner와 같이 동작하게 만든다.
-p log2timeline이 -r 옵션에서 동작할 경우 사용가능하다. 이 옵션을 통해 image file을 검사하여 의심되는 drive에서 hostname과 같이 다른 module에서 필요한 정보를 추출한다.
-v debugging 정보를 출력한다.
-V 버전 정보를 출력한다.
-h help 메시지를 출력한다.



도구 기능

log2timeline은 아래 [표 2]와 같은 입력 포맷을 지원한다.

[표 2] log2timeline 지원 입력 포맷
입력 파일 포맷
Apache2 Access logs
Apache2 Error logs
Google Chrome history
Encase dirlisting
Windows Event Log files (EVT)
Windows Event Log files (EVTX)
EXIF. Extracts exif information or metadata from various media files
Firefox bookmarks
Firefox 2 history
Firefox 3 history
FTK Imager Dirlisting CSV 파일
Linux 로그파일
Internet Explorer history 파일,index.dat파일
Windows IIS W3C 로그파일
ISA server text export 파일
Mactime body 파일
McAfee AntiVirus 로그파일
MS-SQL Error 로그파일
Opera Global and Direct browser history 파일
Office 2007 문서 메타데이터 추출을 위한 OpenXML 메타 데이터
PCAP 파일
생성 일자 캡처를 위한 PDF파일
Windows Prefetch 디렉터리
Windows 휴지통(INFO2orI$)
Windows 복구지점
Safari Browser history 파일
Windows XP SetupAPI.log 파일
Adobe Local Shared Object 파일(SOL/LSO), akaFlashCookies
Squid Access 로그(httpd_emulateoff)
TLN (timeline) body 파일
UserAssist key of the Windows registry
volatility의psscan,psscan2modules 실행결과 파일
Windows 바로가기 아이콘(LNK)
Windows WMIProv 로그파일
Windows XP Firewall 로그파일(W3Cformat)



log2timeline은 [표 3]과 같은 출력 포맷을 지원한다.

[표 3] log2timeline 지원 출력 포맷
출력파일 포맷 설명
BeeDocs Mac OS X의 시각화 도구
CEF ArcSight의 Common Event Format
CFTL CyberForensics TimeLab에서 사용하는 XML 파일
CSV CSV 파일 포맷
Mactime TSK's mactime 지원 포맷
SIMILE 타임 라인 시각화 도구인 SIMILE timeline widget용 XML
SQLite 파일 포맷 SQLite 파일 포맷
TLN Tab Delimited File 포맷



제한사항

log2timeline은 공식 홈페이지 상의 최신 버전이 v0.64이며, -u 옵션을 통해 업데이트 가능한 최신 버전은 v0.65이나 git-hub에서 얻을 수 있는 최신 버전은 v0.66으로 버전 관리 상 문제점이 존재한다. 즉, 업데이트 버전 확인의 경우 git-hub의 clone 기능을 통하여 최신 버전을 습득하여야 한다. git-hub는 [표 4]의 명령어를 통해, Ubuntu에서 설치할 수 있다.

[표 4] apt-get을 통한 git 설치
apt-get install git

git-hub를 통한 log2timeline의 최신 버전은 [표 5]의 명령어로 설치 가능하다.

[표 5] git를 통한 log2timeline 다운로드
git clone https://code.google.com/p/log2timeline/

상기한 Live CD/VM인 SIFT에는 SANS에서 커스터마이징한 log2timeline이 설치되어 있으므로 이를 사용하는 것이 더욱 효율적일 수 있다.

수사 활용 방안

log2timeline은 입출력 파일 포맷이 방대하다는 장점을 가지고 있어, 이를 구조화 하여 관리할 필요성이 있다. 예를 들어 네트워크 침해 사고의 경우 pcap 파일을 분석할 수 있는 기능을 log2timeline이 제공하고, 그 결과를 SQLite Database 파일 포맷 또는 CSV 파일 포맷 등으로도 제공한다. 입출력 파일 포맷이 방대함에 따라 다른 도구와 호환이 잘 된다는 장점을 가지고 있으며, 이로 인해 분석 효율성을 높일 수 있다.