- 혹시나 디지털 포렌식 전문가 2급 시험을 준비하는 사람들은 아래 게시물도 추가로 참조하길 바란다
https://isc9511.tistory.com/182
* Windows Timeline
- Windows 10(1803)부터 새롭게 제공된 기능으로, CDP(Connected Devices Platform) 서비스의 일부
- 사용자의 최근 활동 내역을 최대 30일까지 확인 가능한 기능 (Windows + Tab 버튼 / 작업표시줄의 작업 표시 버튼)(단, Windows 11에서는 제외되었다. Win11 너무 불편...)
- 시간에 따른 사용자 행위 추적과, 구체적인 응용 프로그램의 사용 시간의 확인이 가능하다
- 물론 이 경우는 본인의 로컬 PC나, 물리적으로 PC를 점유한 상태에서 분석하여 확인이 가능하다는 제한점이 있다
* Windows Timeline 활성화
- 해당 기능의 활성화 여부는 [설정] → [개인정보] → [활동기록] -> '이 장치에 내 활동 기록 저장' 체크를 한다
* ActivitiesCache.db
- 기능 활성화 및, 분석하는 PC 자체를 점유해서 분석한다면 위 방식으로 확인 및 분석을 진행하면 된다
- 하지만 포렌식이란게 역시 뜻대로 되지 않는 경우가 많고 그렇다면 별도 로그를 찾아야 한다.
- 관련 로그로 ActivitiesCache.db라는 파일이 있으며, SQLite 포맷의 DB 파일이다
- 저장 위치 : %UserProfile%\Appdata\Local\ConnectedDevicesPlatform\FOLDER(Account)\ActivitiesCache.db
- 위 이미지에서도 알 수 있듯이, 폴더 경로는 'L.계정명'으로 Windows 10 Local 계정을 의미한다
- 단, 16자리 영문 숫자 혼합인 폴더는 MS 계정을 의미하니 차이에 유의할 것
- ex) …\AppData\Local\ConnectedDevicesPlatform\a1b2c3d4e5f6h8\ActivitiesCache.db
- AAD.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx : MS Azure AD ID / Office365 계정
* DB Browser for SQLite
- SQL로 작성된 DB 파일 탐색 및 편집과 쿼리 실행 등을 지원하는 프로그램
- 해당 툴은 .db 파일 뿐 아니라, 웹 History 파일 또한 업로드해도 확인 가능함
- 테이블에 각각 정보들이 직관적이라 확인이 수월한 편
1) 포렌식 소프트웨어에서 해당 경로의 ActivitiesCache.db 파일 추출
2) 분석 대상 DB 파일 열기
3) 분석할 테이블 선택
- 대부분 Activity Table의 분석에서 대다수의 정보가 확인 가능함
(이런 이유에서, 아래 예시는 Activity Table만 열거함)
4) Activity Table의 각 요소 및 설명
구성 요소 | 설명 |
AppID | * 실행됐던 Application과 Platform을 JSON 포맷으로 기록 * Platform 유형 - host : 특정 행위가 Host 머신에서 이루어진 경우 - x_exe_path : 독립 실행 파일(무설치)인 경우 - windows_win32 : 설치된 응용 프로그램인 경우 - windows_universal : UWP(Universal Windows Platform) 응용 프로그램인 경우 - 그 외, Android, ios, web 등 |
AppActivityId | * 실행됐던 파일명 (응용 프로그램이 아닌, 사용자가 작성하고 열어본 파일을 의미)
- Edge 브라우저에 한해서는, 접속했던 URL 주소의 확인도 가능 |
Activity Type | * 파일과 프로그램의 실행 등 활동 유형을 숫자별로 기록 - Activity Type 5 : 파일 및 프로그램을 실행함 - Activity Type 6 : 응용 프로그램이 활성화 되어 사용중(종료 X) - Activity Type 16 : 복사(Copy)/붙여넣기(Paste) 작업 (Type 16은 Group 칼럼에 Copy 등으로 기록됨) |
Activity Status | * 타임라인의 타일의 상태 정보 기록
- Activity Status 1 : 응용 프로그램이 열려있음 - Activity Status 2 : 이전의 Active Entry가 업데이트 됨 - Activity Status 3 : 타임라인에서 타일이 제거됨 |
Start Time | * 프로그램 시작 시간을 의미(출력 값은 Dcoding 하거나, 출력 방식을 변경해야 함) - Activity Type 5인 경우 : 응용 프로그램을 실행한 시간(단순 프로그램 실행만 된 상태) - Activity Type 6인 경우 : 응용 프로그램이 활성화된 시간(직접 사용자가 제어하는 상태) * Dcode를 통한 값 확인 * DB Browser의 출력 시간 형식의 변경 - 단순히 우클릭해서 속성을 찾아 변경하면 된다 |
End Time | * 프로그램 종료 시간을 의미 (출력 값은 Dcoding 하거나, 출력 방식을 변경해야 함) - Activity Type 5인 경우 : 응용프로그램 종료 시각 (Last Modified Time과 동일) - Activity Type 6인 경우 : 응용프로그램이 비활성화된 시각 (사용자가 커서로 직접 컨트롤 하지 않게 비활성화 된 상태 / 다른 프로그램 사용으로 이동 등) |
LastModifiedTime | * 마지막 프로그램 수정 시간 즉, 활동이 마지막으로 기록된 시간으로 End Time과 일반적으로 동일함 |
Expiration Time | * 타임라인의 작업 기록이 만료되는 시간 - 즉, Last Modified Time + 30일 |
Payload | * 실행한 응용 프로그램 및 파일에 대한 세부 정보를 기록 1) Activity Type 5인 경우 : 타임라인에 보여지는 정보 확인 - Displaytext : 열었던 파일명 또는 URL 주소 - appDisplayName : 응용 프로그램 이름 - Description : 열었던 파일 / URL의 전체 경로 / URL 2) Activity Type 6인 경우 : 실행한 응용프로그램 및 파일에 대한 세부 정보를 기록 - Type : 활동 유형 - activeDurationSeconds : 활동 지속 시간(초) - userTimezone : 타임존 정보 |
- 이외, 분석 예시는 다양하게 있으나 보통 시간 정보, 사용한 응용 프로그램, 경로, 파일명 등을 파악하는 용도로 주로 확인된다
'Information Security > Digital Forensic' 카테고리의 다른 글
[Digital Forensic] Windows Memory Forensic (1) | 2024.10.11 |
---|---|
[Digital Forensic] NTFS Log Tracker (1) | 2024.09.27 |
[Digital Forensic] Prefetch (0) | 2024.09.27 |
[Digital Forensic] Jump List (0) | 2024.09.26 |
[Digital Forensic] 네트워크 정보 확인 (0) | 2024.09.26 |