$LogFile
$LogFile
- 파일시스템의 저널링 기능을 위해 존재하는 파일
- 저널링: 데이터 변경을 디스크에 반영하기 전에 행위를 기록해 오류 발생 시 복구하도록 하는 기능
- 데이터 기록 이전 그 위치와 시점을 별도의 파일에 기록해두고, 문제 발생 시 해당 파일을 참조해 작업이 이루어지기 전 상태로 시스템 복원
트랜잭션
- 저널링 단위로, 쪼갤 수 없는 업무 처리의 최소 단위
- 파일 또는 디렉토리 생성, 수정, 삭제 행위가 각각 트랜잭션에 해당함
- $LogFile은 트랜잭션을 기록하는 파일
$LogFile 수집 및 분석
[root]\$LogFile
- 해당 경로에 저장
- FTK Imager로 해당 파일 추출, 추가적으로 분석에 사용되는 $MFT파일도 추출(동일 경로에 존재)

- NTFS Log Tracker로 분석 가능

- 도구에 $LogFile, $MFT 경로 추가 후 분석
- 아래 창이 나오면 결과값 저장할 DB 값을 입력하고 시작
- 이때 DB파일은 프로그램이 생성하기 때문에 미리 파일 생성 필요x
- 완료되면 결과 조회 가능
- 편의를 위해서는 별도의 프로그램 이용 가능


- SQLite 형식 DB 조회 프로그램 DB Browser for SQLite로 데이터베이스 확인 가능

12799행 기록
EventTime: 이벤트가 발생한 시간, 시스템 시간으로 표현됨
- 2024-04-04 22:15:38(UTC+9)
Event: 이벤트 정보
- Renaming File은 파일 이름이 변경된 이벤트
Detail: 이벤트 상세 기록
- 미확인 760647.crdownload -> NTFS Log Tracker v1.71.zip
- 크롬 브랑주로 NTFS Log Tracker v1.71.zip 파일을 다운하는 과정에서 미확인 760647.crdownload 파일이 임시 생성되었다가 다운로드 완료 이후 NTFS Log Tracker v1.71.zip 파일로 이름이 변경됨
Filename&FullPath: 파일의 이름과 전체 경로

File Creation 키워드로 검색
- 새 파일 생성 이벤트
- 해당 문자열이 포함된 기록들만 필터링됨
- EventTime 칼럼 관찰 시, 로그가 $LogFile에 저장되는 시간이 길지 않은 것 확인 가능
- 많은 프로그램 실행 중이면 보통 경우보다 저장 시간이 짧을 수 있음
$LogFile 분석 팁

$UsnJrnl
$UsnJrnl
- 응용 프로그램이 특정 파일의 변경 여부 파악을 위해 사용하는 로그
- $LogFile과 달리 파일 복원 목적인 로그가 아니라 단순 파일에 작업이 있었다는 사실 확인 목적으로 생성
- 시간 순서대로 엔트리를 저장하고, 오래된 데이터는 삭제
$UsnJrnl 경로
[root]\$Extend\$UsnJrnl\$J
- FTK Imager로 $UsnJrnl로 이동

- 파일 더블클릭 시 아래 사진처럼 진입 가능
- $J 파일 추출($UsnJrnl이라고 부르는 파일이 $J파일)

- $MFT파일도 함께 추출
$UsnJrnl 분석
- NTFS Log Tracker 도구 이용
- $UsnJrnl, $MFT 경로 입력 후 분석

- 데이터 베이스를 DB Browser for SQLite로 열고 나열된 데이터 확인

- $LogFile과 마찬가지로 NTFS Log Tracker v1.71.zip 파일 다운로드 흔적이 있음
TimeStamp: 이벤트 발생 시각, 시스템 시각으로 출력
- 2024-04-04 22:15:38(UTC+9)
FileName: 이벤트가 발생한 대상 파일
- 미확인 760647.crdownload
- NTFS Log Tracker v1.71.zip
Event: 대상 파일에 발생한 이벤트
- 미확인 760647.crdownload: File_Renamed_Old
- NTFS Log Tracker v1.71.zip: File_Renamed_new
- 위 파일이 아래 파일로 이름 변경 확인
FullPath: 대상 파일의 경로
- $MFT와 연계해 가져오는 데이터
$UsnJrnl 분석 팁

$LogFile, $UsnJrnl 활용
$LogFile, $UsnJrnl 활용
1) 랜섬웨어 분석 상황
- 랜섬웨어: 컴퓨터에 있는 모든 파일 암호화 후 원격 서버로 전송하고, 원본 파일은 삭제해 사용불가로 만듦
- 이 과정에서 파일의 암호화, 전송할 임시 파일 생성, 원본 파일 삭제 등 관련 로그 다수 발생
- $LogFile을 깊게 분석하면 트랜잭션을 복구해 몇몇 파일을 되살리는 작업 가능
- $UsnJrnl로 파일 암호화, 이름 변경, 압축 등 다양한 이벤트 확인 가능
2) 자료 유출 사건 분석 상황
- 회사 내부망에서 파일을 다운로드해 USB로 옮기고, 다운로드한 파일은 삭제했다 가정
- 내부망 PC에서 파일 다운로드(파일 생성, 데이터 쓰기) 기록 발견, 이후 삭제 기록 발견
- USB가 NTFS 시스템이면, USB에서도 $LogFile, $UsnJrnl로 파일이 생성된 흔적과 생성 시각 확인 가능
3) 안티-포렌식 행위 분석 상황
- 안티-포렌식: 디지털 포렌식 분석을 막기 위해 의도적으로 관련 파일 삭제나 훼손하는 행위
- $LogFile, $UsnJrnl로 공격자가 삭제한 아티펙트 종류, 삭제 시간 확인 가능
교차 검증
- 하나의 사건이 발생한 흔적을 여러 자료로부터 중복되게 확인하는 것
- 디지털 포렌식의 사실 관계 밝히는 방법은 주로 귀납적 관찰
- 귀납적 관찰: 개별적으로 발생한 사건들을 관찰해 전체에 대한 일반적인 인식으로 바꾸는 과정
- but 귀납적 방식도 오류가 종종 나옴
=> 이러한 경우 방지를 위한 방법이 교차 검증
- 같은 이벤트를 기록하는 여러 아티펙트를 동시 관찰해 사실관계 파악을 중복 확인해야 함
'SWUFORCE > 드림핵' 카테고리의 다른 글
| Track_the_file(시스템 로그 실습) (0) | 2026.05.19 |
|---|---|
| 레지스트리 (0) | 2026.05.06 |
| 파일 시스템 (0) | 2026.04.29 |
| 디지털 데이터와 디지털 장치 (0) | 2026.04.01 |
| [Digital Forensics Basics] 디지털 증거(디스크 이미징, 메모리 덤프, 해시함수) (0) | 2026.03.27 |