(130525) #fitalk ntfs log tracker (korean)

72
FORENSIC INSIGHT; DIGITAL FORENSICS COMMUNITY IN KOREA NTFS Log Tracker blueangel [email protected] forensic-note.blogspot.kr Junghoon Oh

Upload: insight-forensic

Post on 12-Apr-2017

54 views

Category:

Technology


4 download

TRANSCRIPT

Page 1: (130525) #fitalk   ntfs log tracker (korean)

FORENSIC INSIGHT;DIGITAL FORENSICS COMMUNITY IN KOREA

NTFS Log Tracker

blueangel

[email protected]

forensic-note.blogspot.kr

Junghoon Oh

Page 2: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 2

Index

1. Introduction

2. $LogFile

3. $UsnJrnl

4. NTFS Log Tracker

5. Conclusion

Page 3: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 3

Introduction

Page 4: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 4

Introduction

NTFS ์˜ ๋กœ๊ทธ ํŒŒ์ผ

โ€ข $LogFile : ํŠธ๋ž™์ ์…˜ ๋กœ๊ทธ

โ€ข $UsnJrnl : ๋ณ€๊ฒฝ ๋กœ๊ทธ

๊ธฐ์กด์˜ NTFS์— ๋Œ€ํ•œ ํŒŒ์ผ ์‹œ์Šคํ…œ ํฌ๋ Œ์‹

โ€ข $MFT ํŒŒ์ผ ์ค‘์‹ฌ์˜ ํŒŒ์ผ ์‹œ์Šคํ…œ ์ด๋ฒคํŠธ ๋ถ„์„

$MFT : ํŒŒ์ผ ์‹œ์Šคํ…œ์— ์กด์žฌํ•˜๋Š” ๋ชจ๋“  ํŒŒ์ผ, ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ํŒŒ์ผ

โ€ข ์‚ญ์ œ ํŒŒ์ผ์˜ ๊ฒฝ์šฐ, $MFT ์— ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๊ฐ€ ๋‚จ์•„์žˆ์ง€ ์•Š์„ ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Œ

์‚ญ์ œ๋œ ํŒŒ์ผ์— ๋Œ€ํ•œ ํ”์  ์ถ”์ ์˜ ์–ด๋ ค์›€

โ€ข ์‹œ์Šคํ…œ ๋“œ๋ผ์ด๋ธŒ( EX : C:\ )์˜ ๊ฒฝ์šฐ, ์šด์˜์ฒด์ œ๊ฐ€ ํ•ญ์ƒ ์ž„์‹œ ํŒŒ์ผ์„ ์ƒ์„ฑ

โ€ข Win7์˜ ๋ถ€ํ„ฐ ์ฃผ๊ธฐ์ ์ธ ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜

โ€ข SSD์˜ ๊ฒฝ์šฐ, TRIM ์ž‘์—…์— ์˜ํ•ด ๋น„ํ• ๋‹น์˜์—ญ ์ •๋ฆฌ

Page 5: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 5

Introduction

$LogFile, $UsnJrnl ๋ถ„์„

โ€ข ํŠน์ • ๊ธฐ๊ฐ„ ๋™์•ˆ ์ผ์–ด๋‚œ ํŒŒ์ผ ์‹œ์Šคํ…œ ์ด๋ฒคํŠธ๋ฅผ ๋ถ„์„ ๊ฐ€๋Šฅ

โ€ข $MFT ์— ๋‚จ์•„์žˆ์ง€ ์•Š์€ ์ด๋ฒคํŠธ ๋ถ„์„ ๊ฐ€๋Šฅ

์‚ญ์ œ๋œ ํŒŒ์ผ์— ๋Œ€ํ•œ ํžˆ์Šคํ† ๋ฆฌ

ํŠน์ • ํŒŒ์ผ์— ๋Œ€ํ•œ ํžˆ์Šคํ† ๋ฆฌ($MFT ์˜ ๊ฒฝ์šฐ, ๋งˆ์ง€๋ง‰ ์ ‘๊ทผ/์“ฐ๊ธฐ ์‹œ๊ฐ„๋งŒ ๊ธฐ๋ก๋จ)

โ€ข ๊ฐ ์ ‘๊ทผ ์‹œ๊ฐ„ ํŒŒ์•…

โ€ข ๊ฐ ์“ฐ๊ธฐ ์‹œ๊ฐ„ ํŒŒ์•…

Page 6: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 6

$LogFile

- $LogFile ?

- $LogFile ๊ตฌ์กฐ

- $LogFile ์ด๋ฒคํŠธ ๋ถ„์„

Page 7: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 7

$LogFile ?

NTFS ํŠธ๋žœ์ ์…˜ ๋กœ๊ทธ ํŒŒ์ผ

โ€ข ์‹œ์Šคํ…œ ์˜ค๋ฅ˜๋‚˜ ๊ฐ‘์ž‘์Šค๋Ÿฐ ์ „์› ์ฐจ๋‹จ ๋ฐœ์ƒ์‹œ, ์ž‘์—… ์ค‘์ด๋˜ ํŒŒ์ผ ๋ณต๊ตฌ๋ฅผ ์œ„ํ•ด ์‚ฌ์šฉ

โ€ข ๋ชจ๋“  ํŠธ๋žœ์ ์…˜ ์ž‘์—…์„ ๋ ˆ์ฝ”๋“œ ๋‹จ์œ„๋กœ ๊ธฐ๋ก

์ƒˆ๋กœ์šด ํŒŒ์ผ/๋””๋ ‰ํ† ๋ฆฌ ์ƒ์„ฑ

ํŒŒ์ผ/๋””๋ ‰ํ† ๋ฆฌ ์‚ญ์ œ

ํŒŒ์ผ/๋””๋ ‰ํ† ๋ฆฌ ๋‚ด์šฉ ๋ณ€๊ฒฝ

MFT ์—”ํŠธ๋ฆฌ ๋‚ด์šฉ ๋ณ€๊ฒฝ

โ€ข ๊ฐ ์ž‘์—… ๋ ˆ์ฝ”๋“œ๋Š” ๊ณ ์œ ์˜ LSN($LogFile Sequence Number)์„ ๊ฐ€์ง

์ˆœ์ฐจ์ ์œผ๋กœ ์ฆ๊ฐ€

โ€ข ๋ณต๊ตฌ๋ฅผ ์œ„ํ•ด ๊ฐ ๋ ˆ์ฝ”๋“œ๋Š” ์ž‘์—… ๋ฐ์ดํ„ฐ์™€ ์ž‘์—… ์ „ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง

Redo : ์ž‘์—…ํ•œ ๋ฐ์ดํ„ฐ

Undo : ์ž‘์—… ์ „ ๋ฐ์ดํ„ฐ

โ€ข ๊ฐ ๋ณผ๋ฅจ๋งˆ๋‹ค ํ•˜๋‚˜์”ฉ ์กด์žฌ

โ€ข MFT ์—”ํŠธ๋ฆฌ ๋ฒˆํ˜ธ 2์— ์œ„์น˜

Page 8: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 8

$LogFile ?

$LogFile ํฌ๊ธฐ

โ€ข ์ผ๋ฐ˜์ ์ธ ํ•˜๋“œ๋””์Šคํฌ ๋ณผ๋ฅจ์—์„œ๋Š” 64M ํฌ๊ธฐ

โ€ข ๋ณผ๋ฅจ ์šฉ๋Ÿ‰์— ๋”ฐ๋ผ ํฌ๊ธฐ๊ฐ€ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์ง€๋งŒ ๊ธฐ๋ณธ์ ์œผ๋กœ๋Š” ์ตœ๋Œ€ 64M ์ดํ•˜์ž„

โ€ข 64M ๊ธฐ์ค€, ์ผ๋ฐ˜์ ์ธ ์ปดํ“จํ„ฐ ํ™œ๋™(์›น์„œํ•‘, ๋ฌธ์„œ ์ž‘์—…โ€ฆ)์„ ํ•  ๊ฒฝ์šฐ, 2~3 ์‹œ๊ฐ„ ์ •๋„์˜ ๋กœ๊ทธ๊ฐ€ ๋‚จ์Œ

โ€ข ํฌ๋ Œ์‹ ์ค€๋น„๋„ ์ธก๋ฉด์—์„œ ์ €์žฅ ์šฉ๋Ÿ‰์„ ๋Š˜๋ฆด ํ•„์š”๊ฐ€ ์žˆ์Œ

ํฌ๊ธฐ ์กฐ์ ˆ

โ€ข chkdsk ๋ช…๋ น์˜ /L ์˜ต์…˜์— ๋”ฐ๋ผ ํฌ๊ธฐ ์กฐ์ ˆ ๊ฐ€๋Šฅ

โ€ข โ€œ/L : ํŒŒ์ผํฌ๊ธฐ(KB ๋‹จ์œ„)โ€ ํ˜•์‹์œผ๋กœ ์ง€์ •

โ€ข ํฌ๊ธฐ๊ฐ€ ์ง€์ • ๋˜์ง€ ์•Š์œผ๋ฉด ํ˜„์žฌ ํฌ๊ธฐ ํ‘œ์‹œ

Page 9: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 9

$LogFile

- $LogFile ?

- $LogFile ๊ตฌ์กฐ

- $LogFile ์ด๋ฒคํŠธ ๋ถ„์„

Page 10: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 10

$LogFile ๊ตฌ์กฐ

์žฌ์‹œ์ž‘ ์˜์—ญ(Restart Area)์™€ ๋กœ๊น… ์˜์—ญ(Logging Area)๋กœ ๋‚˜๋ˆ„์–ด์ง

โ€ข ๊ฐ ์˜์—ญ์˜ ๊ตฌ์„ฑ๋‹จ์œ„๋Š” ํŽ˜์ด์ง€(ํฌ๊ธฐ : 0x1000)

โ€ข ์žฌ์‹œ์ž‘ ์˜์—ญ

๊ฐ€์žฅ ๋งˆ์ง€๋ง‰(ํ˜„์žฌ ์ž‘์—… ์ค‘์ธ) ์ž‘์—… ๋ ˆ์ฝ”๋“œ๋ฅผ ๊ฐ€๋ฆฌํ‚ด

ํŒŒ์ผ์˜ ์ฒซ ๋‘ ํŽ˜์ด์ง€ ์˜์—ญ(0x0000~0x2000)

โ€ข ๋กœ๊น… ์˜์—ญ

์‹ค์ œ ์ž‘์—… ๋ ˆ์ฝ”๋“œ๋“ค์ด ๊ธฐ๋ก๋จ

์žฌ์‹œ์ž‘ ์˜์—ญ ๋ฐ”๋กœ ๋‹ค์Œ๋ถ€ํ„ฐ ์‹œ์ž‘(0x2000~)

๋ฒ„ํผ ํŽ˜์ด์ง€ ์˜์—ญ๊ณผ ์ผ๋ฐ˜ ํŽ˜์ด์ง€ ์˜์—ญ์œผ๋กœ ๋‚˜๋ˆ„์–ด์ง

์ „์ฒด ๊ตฌ์กฐ

Page 11: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 11

$LogFile ๊ตฌ์กฐ

๊ฐ€์žฅ ๋งˆ์ง€๋ง‰(ํ˜„์žฌ ์ž‘์—… ์ค‘์ธ) ์ž‘์—… ๋ ˆ์ฝ”๋“œ๋ฅผ ๊ฐ€๋ฆฌํ‚ด

โ€ข Current LSN ์ •๋ณด๋ฅผ ํ†ตํ•ด ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰ ์ž‘์—… ๋ ˆ์ฝ”๋“œ์˜ LSN ๋ฒˆํ˜ธ๋ฅผ ์•Œ ์ˆ˜ ์žˆ์Œ

์—ฐ์†๋œ ๋‘ ํŽ˜์ด์ง€๋กœ ๊ตฌ์„ฑ, ๋‘ ๋ฒˆ์งธ ํŽ˜์ด์ง€๋Š” ๋ฐฑ์—…์šฉ

โ€ข ๊ฐ ํŽ˜์ด์ง€๋Š” ๋งค์ง๋„˜๋ฒ„(RSTR)๋กœ ์‹œ์ž‘๋จ

์žฌ์‹œ์ž‘ ์˜์—ญ ํ—ค๋” ํฌ๋ฉง

์žฌ์‹œ์ž‘ ์˜์—ญ ๊ตฌ์กฐ

โ€œRSTRโ€(Magic Number)

Update SequenceOffset

Update Sequence Count

Check Disk LSN

System Page Size Log Page Size Restart Offset

MinorVersion

Major Version

Update Sequence Array

Current LSN Log Client Client List Flags

0 1 2 3 4 5 6 7 8 9 A B C D E F

Page 12: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 12

$LogFile ๊ตฌ์กฐ

์‹ค์ œ ์ž‘์—… ๋ ˆ์ฝ”๋“œ๋“ค์ด ๊ธฐ๋ก๋จ

๋ฒ„ํผ ํŽ˜์ด์ง€ ์˜์—ญ๊ณผ ์ผ๋ฐ˜ ํŽ˜์ด์ง€ ์˜์—ญ์œผ๋กœ ๋‚˜๋ˆ„์–ด์ง

โ€ข ๋ฒ„ํผ ํŽ˜์ด์ง€ ์˜์—ญ ์ฒซ ๋‘ ํŽ˜์ด์ง€(0x2000~0x4000)

์ˆœ์ฐจ์ ์œผ๋กœ ๋ ˆ์ฝ”๋“œ๊ฐ€ ๊ธฐ๋ก๋จ

ํŽ˜์ด์ง€๊ฐ€ ๋ ˆ์ฝ”๋“œ๋กœ ๊ฝ‰ ์ฐจ๋ฉด ํŽ˜์ด์ง€ ๋‚ด์šฉ์„ ์ผ๋ฐ˜ ํŽ˜์ด์ง€ ์˜์—ญ์— ๊ธฐ๋ก

์ตœ๊ทผ ์ž‘์—… ๋ ˆ์ฝ”๋“œ๋“ค์€ ๋ฒ„ํผ ํŽ˜์ด์ง€ ์˜์—ญ์— ์กด์žฌ

โ€ข ์ผ๋ฐ˜ ํŽ˜์ด์ง€ ์˜์—ญ ๋ฒ„ํผ ํŽ˜์ด์ง€ ์˜์—ญ์„ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ ์˜์—ญ(0x4000~)

์ˆœ์ฐจ์ ์œผ๋กœ ๋ ˆ์ฝ”๋“œ๊ฐ€ ๊ธฐ๋ก๋จ

ํŒŒ์ผ ๋๊นŒ์ง€ ๊ธฐ๋ก๋˜๋ฉด ๋‹ค์‹œ ์˜์—ญ ์•ž์—์„œ๋ถ€ํ„ฐ ๋ฎ์–ด์”€

๋กœ๊น… ์˜์—ญ ๊ตฌ์กฐ

Page 13: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 13

$LogFile ๊ตฌ์กฐ

ํŽ˜์ด์ง€ ๊ตฌ์„ฑ

โ€ข ํ•˜๋‚˜์˜ ํ—ค๋”์™€ ๋‹ค์ˆ˜์˜ ์ž‘์—… ๋ ˆ์ฝ”๋“œ๋“ค๋กœ ๊ตฌ์„ฑ๋จ

โ€ข ๋งˆ์ง€๋ง‰ ๋ ˆ์ฝ”๋“œ๊ฐ€ ํŽ˜์ด์ง€๋ฅผ ๋„˜์–ด๊ฐ€๋ฉด ๋‹ค์Œ ํŽ˜์ด์ง€์— ์ด์–ด์„œ ๊ธฐ๋ก๋จ

ํŽ˜์ด์ง€ ํ—ค๋” : ํŽ˜์ด์ง€์˜ ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋จ

โ€ข Magic Number : โ€œRCRDโ€

โ€ข Last LSN : ํŽ˜์ด์ง€๋ฅผ ๋„˜์–ด๊ฐ€๋Š” ๋ ˆ์ฝ”๋“œ๋ฅผ ํฌํ•จํ•ด์„œ ๊ฐ€์žฅ ํฐ LSN

โ€ข Next Record Offset : Last LSN์— ํ•ด๋‹นํ•˜๋Š” ๋ ˆ์ฝ”๋“œ์˜ ํŽ˜์ด์ง€ ๋‚ด Offset

โ€ข Last End LSN : ํŽ˜์ด์ง€๋ฅผ ๋„˜์–ด๊ฐ€์ง€ ์•Š๋Š” ๋ ˆ์ฝ”๋“œ๋“ค ์ค‘์— ๊ฐ€์žฅ ํฐ LSN

ํŽ˜์ด์ง€ ๊ตฌ์กฐ

โ€œRCRDโ€(Magic Number)

Update SequenceOffset

Update Sequence Count

Last LSN or File Offset

Flags Page Count

Page Position

NextRecord Offset

Word Align

DWord Align

Last End LSN

Update Sequence Array

0 1 2 3 4 5 6 7 8 9 A B C D E F

Page 14: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 14

$LogFile ๊ตฌ์กฐ

์ž‘์—… ๋ ˆ์ฝ”๋“œ

โ€ข ์‹ค์ œ ํŠธ๋žœ์ ์…˜ ์ž‘์—…์˜ ๋‚ด์šฉ์ด ๊ธฐ๋ก๋จ

โ€ข ์—ฌ๋Ÿฌ ์ž‘์—… ๋ ˆ์ฝ”๋“œ๊ฐ€ ์ˆœ์ฐจ์ ์œผ๋กœ ๋ชจ์—ฌ์„œ ํ•˜๋‚˜์˜ ํŠธ๋žœ์ ์…˜ ์ž‘์—…์„ ์ด๋ฃธ

Check Point Record : ํŠธ๋žœ์ ์…˜ ์‹œ์ž‘ ๋ ˆ์ฝ”๋“œ

Update Record : ์ค‘๊ฐ„ ์ž‘์—… ๋ ˆ์ฝ”๋“œ

Commit Record : ํŠธ๋žœ์ ์…˜ ๋งˆ์ง€๋ง‰ ๋ ˆ์ฝ”๋“œ

โ€ข Check Point Record ์™ธ ๋ ˆ์ฝ”๋“œ๋“ค์€ ์ž์‹ ์˜ ์ด์ „ ์ž‘์—… ๋ ˆ์ฝ”๋“œ์˜ LSN์„ ๊ฐ€์ง€๊ณ  ์žˆ์Œ

์ž‘์—… ๋ ˆ์ฝ”๋“œ ๊ตฌ์กฐ

Page 15: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 15

$LogFile ๊ตฌ์กฐ

์ž‘์—… ๋ ˆ์ฝ”๋“œ(๊ณ„์†)

โ€ข ์ž‘์—… ๋ ˆ์ฝ”๋“œ ๊ตฌ์„ฑ : ๋ ˆ์ฝ”๋“œ ํ—ค๋”์™€ ๋ฐ์ดํ„ฐ๋กœ ๊ตฌ์„ฑ ๋จ

๋ ˆ์ฝ”๋“œ ํ—ค๋” : ๋ ˆ์ฝ”๋“œ ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ ์ €์žฅ, ๊ณ ์ • ํฌ๊ธฐ(0x58)

๋ ˆ์ฝ”๋“œ ๋ฐ์ดํ„ฐ

โ€ข Redo : ์ž‘์—… ํ›„ ๋‚ด์šฉ(์˜ˆ : ์“ฐ๊ธฐ ์ž‘์—…์ด๋ฉด ์“ฐ์—ฌ์ง„ ๋ฐ์ดํ„ฐ)

โ€ข Undo : ์ž‘์—… ์ „ ๋‚ด์šฉ(์˜ˆ : ์“ฐ๊ธฐ ์ž‘์—…์ด๋ฉด ์“ฐ์—ฌ์ง€๊ธฐ ์ „ ๋ฐ์ดํ„ฐ)

โ€ข ์—๋Ÿฌ ๋ณต๊ตฌ์‹œ์˜ ์ž‘์—… ๋‚ด์šฉ

Commit Record ๋ถ€ํ„ฐ ์ด์ „ LSN ์ •๋ณด๋ฅผ ์ด์šฉ, ์—ญ์œผ๋กœ ์ถ”์ ํ•˜๋ฉด์„œ Undo ๋ฐ์ดํ„ฐ ์ ์šฉ

์ž‘์—… ๋ ˆ์ฝ”๋“œ ๊ตฌ์กฐ

Page 16: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 16

$LogFile ๊ตฌ์กฐ

์ž‘์—… ๋ ˆ์ฝ”๋“œ ํ—ค๋” ํฌ๋ฉง

โ€ข This LSN : ํ˜„์žฌ ์ž‘์—… ๋ ˆ์ฝ”๋“œ์˜ LSN

โ€ข Previous LSN : ์ด์ „ ์ž‘์—… ๋ ˆ์ฝ”๋“œ์˜ LSN

โ€ข Client Undo LSN : ๋ณต๊ตฌ ์‹œ, ๋‹ค์Œ Undo ์ž‘์—…์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋ ˆ์ฝ”๋“œ์˜ LSN, ๋ณดํ†ต Previous LSN๊ณผ ๋™์ผ

โ€ข Client Data Length : ๋ ˆ์ฝ”๋“œ์˜ ํฌ๊ธฐ, Redo Op ์‹œ์ž‘ ์œ„์น˜๋ถ€ํ„ฐ ์ด ๊ฐ’์„ ๋”ํ•˜๋ฉด ๋ ˆ์ฝ”๋“œ ๋์„ ๊ตฌํ•  ์ˆ˜ ์žˆ์Œ

โ€ข Record Type : 0x02 (Check Point Record), 0x01(๊ทธ ์™ธ Record)

โ€ข Flags : 0x01(ํ˜„์žฌ ๋ ˆ์ฝ”๋“œ๊ฐ€ ํŽ˜์ด์ง€๋ฅผ ๋„˜์–ด๊ฐ), 0x00(ํ˜„์žฌ ๋ ˆ์ฝ”๋“œ๊ฐ€ ํŽ˜์ด์ง€๋ฅผ ๋„˜์–ด๊ฐ€์ง€ ์•Š์Œ)

์ž‘์—… ๋ ˆ์ฝ”๋“œ ๊ตฌ์กฐ

This LSN Previous LSN

Client Undo LSN Client Data Length Client ID

Record Type Transaction ID Flags Alignment or Reserved

Redo OP Undo OP Redo Offset Redo Length

Undo Offset UndoLength

Target Attribute

LCNs to follows

Record Offset

Attr Offset MFT ClusterIndex

Alignment or Reserved

Target VCN Alignment or Reserved

Target LCN Alignment or Reserved

0 1 2 3 4 5 6 7 8 9 A B C D E F

Page 17: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 17

$LogFile ๊ตฌ์กฐ

์ž‘์—… ๋ ˆ์ฝ”๋“œ ํ—ค๋” ํฌ๋ฉง(๊ณ„์†)

โ€ข Redo Op : Redo ์—ฐ์‚ฐ ์ฝ”๋“œ

โ€ข Undo Op : Undo ์—ฐ์‚ฐ ์ฝ”๋“œ

โ€ข Redo Offset : Redo ๋ฐ์ดํ„ฐ ์‹œ์ž‘ Offset(Redo Op ์œ„์น˜๋ถ€ํ„ฐ)

โ€ข Redo Length : Redo ๋ฐ์ดํ„ฐ ๊ธธ์ด

โ€ข Undo Offset : Undo ๋ฐ์ดํ„ฐ ์‹œ์ž‘ Offset(Redo Op ์œ„์น˜๋ถ€ํ„ฐ)

โ€ข Undo Length : Undo ๋ฐ์ดํ„ฐ ๊ธธ์ด

์ž‘์—… ๋ ˆ์ฝ”๋“œ ๊ตฌ์กฐ

This LSN Previous LSN

Client Undo LSN Client Data Length Client ID

Record Type Transaction ID Flags Alignment or Reserved

Redo OP Undo OP Redo Offset Redo Length

Undo Offset UndoLength

Target Attribute

LCNs to follows

Record Offset

Attr Offset MFT ClusterIndex

Alignment or Reserved

Target VCN Alignment or Reserved

Target LCN Alignment or Reserved

0 1 2 3 4 5 6 7 8 9 A B C D E F

Page 18: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 18

$LogFile ๊ตฌ์กฐ

์ž‘์—… ๋ ˆ์ฝ”๋“œ ํ—ค๋” ํฌ๋ฉง(๊ณ„์†)

โ€ข LCNs to Follows : 0x01(์ด์–ด์ง€๋Š” ๋ ˆ์ฝ”๋“œ๊ฐ€ ์žˆ์Œ), 0x00(์ด์–ด์ง€๋Š” ๋ ˆ์ฝ”๋“œ๊ฐ€ ์—†์Œ)

โ€ข Record Offset

MFT ๋ ˆ์ฝ”๋“œ์— ๋Œ€ํ•œ ์ž‘์—…์ผ ๊ฒฝ์šฐ, Redo/Undo ๋ฐ์ดํ„ฐ๊ฐ€ ์ ์šฉ๋˜๋Š” ์†์„ฑ์˜ MFT ๋ ˆ์ฝ”๋“œ ๋‚ด Offset

MFT ๋ ˆ์ฝ”๋“œ์— ๋Œ€ํ•œ ์ž‘์—…์ด ์•„๋‹Œ ๊ฒฝ์šฐ, ๊ฐ’์€ 0x00

โ€ข Attr Offset

MFT ๋ ˆ์ฝ”๋“œ์— ๋Œ€ํ•œ ์ž‘์—…์ผ ๊ฒฝ์šฐ, Redo/Undo ๋ฐ์ดํ„ฐ๊ฐ€ ์ ์šฉ๋˜๋Š” ์†์„ฑ ๋‚ด Offset

MFT ๋ ˆ์ฝ”๋“œ์— ๋Œ€ํ•œ ์ž‘์—…์ด ์•„๋‹Œ ๊ฒฝ์šฐ, Redo/Undo ๋ฐ์ดํ„ฐ๊ฐ€ ์ ์šฉ๋˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ ๋‚ด Offset

โ€ข MFT Cluster Index : MFT ์—”ํŠธ๋ฆฌ๊ฐ€ ์žˆ๋Š” ํ•˜๋‚˜์˜ ํด๋Ÿฌ์Šคํ„ฐ ๋‚ด์—์„œ ๋ช‡ ๋ฒˆ์งธ ์—”ํŠธ๋ฆฌ์— ํ•ด๋‹นํ•˜๋Š”์ง€์— ๋Œ€ํ•œ ๊ฐ’

1๋ฒˆ์งธ(0x0000), 2๋ฒˆ์งธ(0x0002), 3๋ฒˆ์งธ(0x0003), 4๋ฒˆ์งธ(0x0006)

์ž‘์—… ๋ ˆ์ฝ”๋“œ ๊ตฌ์กฐ

This LSN Previous LSN

Client Undo LSN Client Data Length Client ID

Record Type Transaction ID Flags Alignment or Reserved

Redo OP Undo OP Redo Offset Redo Length

Undo Offset UndoLength

Target Attribute

LCNs to follows

Record Offset

Attr Offset MFT ClusterIndex

Alignment or Reserved

Target VCN Alignment or Reserved

Target LCN Alignment or Reserved

0 1 2 3 4 5 6 7 8 9 A B C D E F

Page 19: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 19

$LogFile ๊ตฌ์กฐ

์ž‘์—… ๋ ˆ์ฝ”๋“œ ํ—ค๋” ํฌ๋ฉง(๊ณ„์†)

โ€ข Target VCN : Redo/Undo ๋ฐ์ดํ„ฐ๊ฐ€ ์ ์šฉ๋˜๋Š” $MFT ์ƒ์˜ VCN(Virtual Cluster Number)

โ€ข Target LCN : Redo/Undo ๋ฐ์ดํ„ฐ๊ฐ€ ์ ์šฉ๋˜๋Š” ๋””์Šคํฌ ์ƒ์˜ LCN(Logical Cluster Number)

์ž‘์—… ๋ ˆ์ฝ”๋“œ ๊ตฌ์กฐ

This LSN Previous LSN

Client Undo LSN Client Data Length Client ID

Record Type Transaction ID Flags Alignment or Reserved

Redo OP Undo OP Redo Offset Redo Length

Undo Offset UndoLength

Target Attribute

LCNs to follows

Record Offset

Attr Offset MFT ClusterIndex

Alignment or Reserved

Target VCN Alignment or Reserved

Target LCN Alignment or Reserved

0 1 2 3 4 5 6 7 8 9 A B C D E F

Page 20: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 20

$LogFile ๊ตฌ์กฐ

Redo/Undo ์—ฐ์‚ฐ ์ฝ”๋“œ

์ž‘์—… ๋ ˆ์ฝ”๋“œ ๊ตฌ์กฐ

NTFS ์ž‘์—… Hex Value

Noop 0x00

CompensationlogRecord 0x01

InitializeFileRecordSegment 0x02

DeallocateFileRecordSegment 0x03

WriteEndofFileRecordSegement 0x04

CreateAttribute 0x05

DeleteAttribute 0x06

UpdateResidentValue 0x07

UpdataeNonResidentValue 0x08

UpdateMappingPairs 0x09

DeleteDirtyClusters 0x0A

SetNewAttributeSizes 0x0B

Page 21: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 21

$LogFile ๊ตฌ์กฐ

Redo/Undo ์—ฐ์‚ฐ ์ฝ”๋“œ(๊ณ„์†)

์ž‘์—… ๋ ˆ์ฝ”๋“œ ๊ตฌ์กฐ

AddindexEntryRoot 0x0C

DeleteindexEntryRoot 0x0D

AddIndexEntryAllocation 0x0F

SetIndexEntryVenAllocation 0x12

UpdateFileNameRoot 0x13

UpdateFileNameAllocation 0x14

SetBitsInNonresidentBitMap 0x15

ClearBitsInNonresidentBitMap 0x16

PrepareTransaction 0x19

CommitTransaction 0x1A

ForgetTransaction 0x1B

OpenNonresidentAttribute 0x1C

DirtyPageTableDump 0x1F

TransactionTableDump 0x20

UpdateRecordDataRoot 0x21

Page 22: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 22

$LogFile

- $LogFile ?

- $LogFile ๊ตฌ์กฐ

- $LogFile ํŒŒ์ผ๋‹จ์œ„์ด๋ฒคํŠธ๋ถ„์„

Page 23: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 23

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„์˜ ํ•„์š”์„ฑ

โ€ข $LogFile ์˜ ๊ฐ ์ž‘์—…๋ ˆ์ฝ”๋“œ์— ์ €์žฅ๋œ ์ •๋ณด๋Š” ํŒŒ์ผ ๋‹จ์œ„์˜ ์ด๋ฒคํŠธ๊ฐ€ ์•„๋‹˜

์—ฌ๋Ÿฌ ์ž‘์—… ๋ ˆ์ฝ”๋“œ๋“ค์ด ๋ชจ์—ฌ์„œ ํ•˜๋‚˜์˜ ํŠธ๋žœ์ ์…˜ ์ด๋ฒคํŠธ๋ฅผ ์ด๋ฃธ

โ€ข ๋ถ„์„๊ฐ€์—๊ฒŒ ์˜๋ฏธ ์žˆ๋Š” ํŒŒ์ผ ๋‹จ์œ„์˜ ์ด๋ฒคํŠธ๋กœ ๋ณ€๊ฒฝํ•ด์•ผ ํ•จ~!!!

โ€ข ๋ถ„์„ ๋Œ€์ƒ ์ด๋ฒคํŠธ

ํŒŒ์ผ ์ƒ์„ฑ

ํŒŒ์ผ ์‚ญ์ œ

ํŒŒ์ผ ๋ฐ์ดํ„ฐ ์ž‘์„ฑ

ํŒŒ์ผ๋ช… ๋ณ€๊ฒฝ

ํŒŒ์ผ ์ด๋™

Page 24: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 24

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

Resident File ์ƒ์„ฑ ๊ด€๋ จ ์ด๋ฒคํŠธ

โ€ข Resident ํŒŒ์ผ ์ƒ์„ฑ ์ด๋ฒคํŠธ ์ˆœ์„œ(Redo/Undo)

1. 0x15/0x16(Set Bits In Nonresident Bit Map/Clear Bits In Nonresident Bit Map)

2. 0x00/0x03(Noop/Deallocate File Record Segment)

3. 0x0E/0x0F(Add Index Entry Allocation/Delete Index Entry Allocation)

4. 0x02/0x00(Initialize File Record Segment/Noop)

5. 0x1B/0x01(Forget Transaction/Compensation Log Record)

โ€ข ์œ„ ํ™”๋ฉด์€ $LogFile ์ž‘์—… ๋ ˆ์ฝ”๋“œ๋“ค์„ ๊ทธ๋Œ€๋กœ ํŒŒ์‹ฑํ•ด์ฃผ๋Š” Research Version ๋„๊ตฌ์˜ ์บก์ณ ํ™”๋ฉด์ž„

ํŒŒ์ผ ์ƒ์„ฑ ์ด๋ฒคํŠธ

Page 25: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 25

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

Resident File ์ƒ์„ฑ ๊ด€๋ จ ์ด๋ฒคํŠธ์—์„œ ์–ป์–ด ์˜ฌ ์ˆ˜ ์žˆ๋Š” ์ •๋ณด 1

โ€ข MFT ๋ ˆ์ฝ”๋“œ ๋ฒˆํ˜ธ, ์ƒ์„ฑ ํŒŒ์ผ ์ „์ฒด ๊ฒฝ๋กœ

0x15/0x16(Set Bits In Nonresident Bit Map/Clear Bits In Nonresident Bit Map) ์ž‘์—…์˜ Redo ๋ฐ์ดํ„ฐ์—์„œ ์–ป์–ด์˜ด

Redo ๋ฐ์ดํ„ฐ์˜ ์ฒซ 4๋ฐ”์ดํŠธ๋Š” ์ž‘์—… ๋Œ€์ƒ MFT ๋ ˆ์ฝ”๋“œ ๋ฒˆํ˜ธ์ž„

MFT ๋ ˆ์ฝ”๋“œ ๋ฒˆํ˜ธ๋ฅผ ํ†ตํ•ด ํ•ด๋‹น ํŒŒ์ผ์˜ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Œ

โ€ข ํ•ด๋‹น MFT ๋ ˆ์ฝ”๋“œ์˜ $FILE_NAME ์†์„ฑ์—์„œ ์ƒ์„ฑ ํŒŒ์ผ๋ช… ํš๋“

โ€ข MFT ๋ฒˆํ˜ธ๋ฅผ ์•Œ๋ฉด MFT ํ•ด์„์„ ํ†ตํ•ด ์ƒ์„ฑ๋œ ํŒŒ์ผ์˜ ์ „์ฒด ๊ฒฝ๋กœ๋ฅผ ๊ฐ€์ ธ ์˜ฌ ์ˆ˜ ์žˆ์Œ

ํŒŒ์ผ ์ƒ์„ฑ ์ด๋ฒคํŠธ

Current LSN

Previous LSN

Redo Op

Undo Op

Page 26: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 26

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

Resident File ์ƒ์„ฑ ๊ด€๋ จ ์ด๋ฒคํŠธ์—์„œ ์–ป์–ด ์˜ฌ ์ˆ˜ ์žˆ๋Š” ์ •๋ณด 2

โ€ข ํŒŒ์ผ ์ƒ์„ฑ ์‹œ๊ฐ„๊ณผ ์ƒ์„ฑ ํŒŒ์ผ๋ช…, ๋ถ€๋ชจ๋””๋ ‰ํ„ฐ๋ฆฌ ์ •๋ณด, ํŒŒ์ผ/๋””๋ ‰ํ„ฐ๋ฆฌ ๊ตฌ๋ถ„

0x02/0x00(Initialize File Record Segment/Noop) ์ž‘์—…์˜ Redo ๋ฐ์ดํ„ฐ์—์„œ ์–ป์–ด์˜ด

Redo ๋ฐ์ดํ„ฐ ๋‚ด์šฉ์€ MFT ๋ ˆ์ฝ”๋“œ์˜ ๋‚ด์šฉ

โ€ข $STANDARD_INFORMATION ์†์„ฑ์—์„œ ํŒŒ์ผ ์ƒ์„ฑ ์‹œ๊ฐ„์„ ๊ฐ€์ ธ์˜ด

โ€ข $FILE_NAME ์†์„ฑ์—์„œ ์ƒ์„ฑ ํŒŒ์ผ์˜ ์ด๋ฆ„์„ ๊ฐ€์ ธ์˜ด, Parent File Reference Address ๊ฐ’์„ ํ†ตํ•ด ๋ถ€๋ชจ๋””๋ ‰ํ† ๋ฆฌ์™€ ์ „์ฒด ๊ฒฝ๋กœ(with $MFT)๋ฅผ ์•Œ ์ˆ˜ ์žˆ์Œ

โ€ข $INDEX_ROOT ์†์„ฑ์ด ์žˆ๋‹ค๋ฉด ๋””๋ ‰ํ† ๋ฆฌ ์ƒ์„ฑ์ž„

ํŒŒ์ผ ์ƒ์„ฑ ์ด๋ฒคํŠธ

Current LSN

Previous LSN

Redo Op

Undo Op

Redo Data

Page 27: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 27

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

Non Resident ํŒŒ์ผ ์ƒ์„ฑ ์ด๋ฒคํŠธ

โ€ข Resident ํŒŒ์ผ๊ณผ ๋™์ผ

MFT ๋ ˆ์ฝ”๋“œ ํ• ๋‹นํ•˜๋Š” ๊ฒƒ์—์„œ๋Š” Resident ํŒŒ์ผ ์ƒ์„ฑ ์ž‘์—…๊ณผ ์ฐจ์ด ์—†์Œ

Resident ํŒŒ์ผ ์ƒ์„ฑ ๊ฒฝ์šฐ์™€ ๋™์ผํ•˜๊ฒŒ ์ •๋ณด ํš๋“ ๊ฐ€๋Šฅ

ํŒŒ์ผ ์ƒ์„ฑ ์ด๋ฒคํŠธ

Page 28: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 28

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

๊ธด ํŒŒ์ผ๋ช…์˜ ํŒŒ์ผ ์ƒ์„ฑ์ผ ๊ฒฝ์šฐ

โ€ข 0x0E/0x0F(Add Index Entry Allocation/Delete Index Entry Allocation) ์ž‘์—…์„ ํ•œ ๋ฒˆ ๋” ๋ฐ˜๋ณตํ•จ

๊ธด ํŒŒ์ผ๋ช…์ด๊ธฐ ๋•Œ๋ฌธ์— Index Entry๋ฅผ ํ•˜๋‚˜ ๋” ํ• ๋‹น

โ€ข ํŒŒ์ผ๋ช…์„ ๊ฐ€์ ธ์˜ฌ ๊ฒฝ์šฐ, ๋‘ ๋ฒˆ์งธ $FILE_NAME ์†์„ฑ์—์„œ ๊ฐ€์ ธ์˜ด

ํŒŒ์ผ ์ƒ์„ฑ ์ด๋ฒคํŠธ

Page 29: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 29

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

ํŒŒ์ผ ์‹œ์Šคํ…œ ํ„ฐ๋„๋ง์— ๋Œ€ํ•œ ์ƒ์„ฑ ์‹œ๊ฐ„ ํš๋“

โ€ข ํŒŒ์ผ ์‹œ์Šคํ…œ ํ„ฐ๋„๋ง ?

๋™์ผํ•œ ๋””๋ ‰ํ„ฐ๋ฆฌ ์•„๋ž˜์—์„œ ํŒŒ์ผ์ด ์‚ญ์ œ๋˜๊ณ  15์ดˆ ์•ˆ์— ๋™์ผํ•œ ์ด๋ฆ„์˜ ํŒŒ์ผ์ด ์ƒ์„ฑ๋˜๋ฉด ์ด์ „์— ์กด

์žฌํ–ˆ๋˜ ํŒŒ์ผ์˜ ์‹œ๊ฐ„์ •๋ณด๊ฐ€ ์ƒˆ๋กœ ์ƒ์„ฑ๋œ ํŒŒ์ผ์— ๊ทธ๋Œ€๋กœ ์ €์žฅ๋จ

โ€ข ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ MFT Modified Time ์ˆ˜์ •ํ•˜๋Š” ์ž‘์—… ๋ ˆ์ฝ”๋“œ

Redo : Update Resident Value

Record Offset : 0x38

Attr Offset : 0x20

ํŒŒ์ผ ์ƒ์„ฑ ์ด๋ฒคํŠธ

Page 30: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 30

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

ํŒŒ์ผ ์‹œ์Šคํ…œ ํ„ฐ๋„๋ง์— ๋Œ€ํ•œ ์ƒ์„ฑ ์‹œ๊ฐ„ ํš๋“(๊ณ„์†)

โ€ข ์ƒ์„ฑ ํŒŒ์ผ์˜ ๋ถ€๋ชจ ๋””๋ ‰ํ„ฐ๋ฆฌ MFT Modified Time ์ˆ˜์ • ์ด๋ฒคํŠธ ์ฐพ๊ธฐ

Parent MFT Reference Number ํš๋“

โ€ข ํŒŒ์ผ ์ƒ์„ฑ ์ด๋ฒคํŠธ์˜ โ€œInitialize File Record Segmentโ€ Redo ๋ฐ์ดํ„ฐ์—์„œ ํš๋“

Target VCN = Parent MFT Reference Number / 4

MFT Cluster Index = Parent MFT Reference Number % 4

๊ณ„์‚ฐํ•œ Target VCN, MFT Cluster Index ๊ฐ’์„ ๊ฐ€์ง„ ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ MFT Modified Time ์ˆ˜์ •ํ•˜๋Š” ์ž‘์—…

๋ ˆ์ฝ”๋“œ๋ฅผ ์ฐพ์Œ.(์ƒ์„ฑ ์ด๋ฒคํŠธ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ด ์ „ ์ด๋ฒคํŠธ๋“ค ์ค‘์—์„œ)

โ€ข ํŒ๋‹จ ๊ธฐ์ค€

IF( ํŒŒ์ผ์˜ ์ƒ์„ฑ ์‹œ๊ฐ„ != ๋ถ€๋ชจ ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ MFT Modified Time ์ˆ˜์ • ์‹œ๊ฐ„)

ํŒŒ์ผ ์‹œ์Šคํ…œ ํ„ฐ๋„๋ง ์ด๋ฒคํŠธ~!!

100% ๋‹ค ์ฐพ์„ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด ์•„๋‹˜, OS๊ฐ€ 1์ดˆ์— ์ˆ˜์‹ญ์”ฉ ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ  ์‚ญ์ œํ•˜๊ธฐ ๋•Œ๋ฌธ์—โ€ฆ

์ƒ์„ฑ ์ด๋ฒคํŠธ๋“ค ์ค‘, ์ƒ์„ฑ์‹œ๊ฐ„์ด ์—ฐ์†์ ์ด์ง€ ์•Š์€ ์ด๋ฒคํŠธ์˜ ๊ฒฝ์šฐ, ํŒŒ์ผ ์‹œ์Šคํ…œ ํ„ฐ๋„๋ง์œผ๋กœ ํŒ๋‹จ

ํŒŒ์ผ ์ƒ์„ฑ ์ด๋ฒคํŠธ

Page 31: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 31

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

Resident File ์‚ญ์ œ ๊ด€๋ จ ์ด๋ฒคํŠธ

โ€ข Resident File ์‚ญ์ œ ์ด๋ฒคํŠธ ์ˆœ์„œ(Redo/Undo)

1. 0x0F/0x0E(Delete Index Entry Allocation/Add Index Entry Allocation)

2. 0x03/0x02(Deallocation File Record Segment/Initialize File Record Segment)

3. 0x16/0x15(Clear Bits In Nonresident Bit Map/Set Bits In Nonresident Bit Map)

4. 0x1B/0x01(Forget Transaction/Compensation Log Record)

ํŒŒ์ผ ์‚ญ์ œ ์ด๋ฒคํŠธ

Page 32: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 32

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

Resident File ์‚ญ์ œ ๊ด€๋ จ ์ด๋ฒคํŠธ์—์„œ ์–ป์–ด ์˜ฌ ์ˆ˜ ์žˆ๋Š” ์ •๋ณด

โ€ข ์‚ญ์ œ๋œ ํŒŒ์ผ๋ช…๊ณผ ๋ถ€๋ชจ ๋””๋ ‰ํ„ฐ๋ฆฌ ์ •๋ณด ๊ทธ๋ฆฌ๊ณ  ํŒŒ์ผ/๋””๋ ‰ํ„ฐ๋ฆฌ ๊ตฌ๋ถ„

0x0F/0x0E(Delete Index Entry Allocation/Add Index Entry Allocation) ์ž‘์—…์˜ Undo ๋ฐ์ดํ„ฐ์—์„œ์–ป์–ด์˜ด

Undo ๋ฐ์ดํ„ฐ์˜ ๋‚ด์šฉ์€ Index Entry ์•ˆ์˜ Content ๋‚ด์šฉ($FILE_NAME ์†์„ฑ)

โ€ข Parent File Reference Address ๊ฐ’์„ ํ†ตํ•ด ๋ถ€๋ชจ ๋””๋ ‰ํ† ๋ฆฌ์™€ ์ „์ฒด ๊ฒฝ๋กœ๋ฅผ ์•Œ ์ˆ˜ ์žˆ์Œ(with $MFT)

โ€ข Name ๊ฐ’์„ ํ†ตํ•ด ์‚ญ์ œ๋œ ํŒŒ์ผ๋ช… ํš๋“

โ€ข Flag ์ •๋ณด๋ฅผ ํ†ตํ•ด ํŒŒ์ผ or ๋””๋ ‰ํ„ฐ๋ฆฌ ๊ตฌ๋ถ„

โ€ข ์‚ญ์ œ ์‹œ๊ฐ„ : ๋ถ€๋ชจ ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ MFT Modified ์‹œ๊ฐ„ ์ •๋ณด๋กœ ๋ถ€ํ„ฐ ํš๋“

ํŒŒ์ผ ์‚ญ์ œ ์ด๋ฒคํŠธ

Current LSN

Previous LSN

Redo Op

Undo Op

Undo Data

Page 33: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 33

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

๊ธด ํŒŒ์ผ๋ช…์˜ ํŒŒ์ผ์„ ์‚ญ์ œํ•  ๊ฒฝ์šฐ

โ€ข 0x0F/0x0E(Delete Index Entry Allocation/Add Index Entry Allocation) ์ž‘์—…์ด ๋‘ ๋ฒˆ ์ผ์–ด๋‚จ ๊ธด ํŒŒ์ผ๋ช…์ด๊ธฐ ๋•Œ๋ฌธ์— Index Entry๊ฐ€ ๋‘ ๊ฐœ์ด๊ธฐ ๋•Œ๋ฌธ

โ€ข ์‚ญ์ œ๋œ ํŒŒ์ผ๋ช…์„ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋‘ ๋ฒˆ์งธ 0x0F/0x0E(Delete Index Entry Allocation/Add Index Entry Allocation) ์ž‘์—…์˜ Undo ๋ฐ์ดํ„ฐ์—์„œ ๊ฐ€์ ธ์˜ด

ํŒŒ์ผ ์‚ญ์ œ ์ด๋ฒคํŠธ

Page 34: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 34

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

Non Resident ํŒŒ์ผ ์‚ญ์ œ ์ด๋ฒคํŠธ

โ€ข Resident ์‚ญ์ œ ์ž‘์—…๊ณผ ๋™์ผํ•˜๊ฒŒ ํŒ๋‹จ

Resident ์‚ญ์ œ ์ž‘์—…๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ํŒŒ์ผ๋ช…์ด ๊ธด ๊ฒฝ์šฐ, Delete Index Entry Allocation ์ž‘์—…์ด ๋‘ ๋ฒˆ ์ผ์–ด๋‚จ

์‚ญ์ œ ํŒŒ์ผ๋ช…, ์ „์ฒด ๊ฒฝ๋กœ๋Š” Resident ํŒŒ์ผ ์‚ญ์ œ์˜ ๊ฒฝ์šฐ์™€ ๋™์ผํ•˜๊ฒŒ ํš๋“

โ€ข Non Resident File ์‚ญ์ œ ์ด๋ฒคํŠธ ์ˆœ์„œ(Redo/Undo)

1. 0x0F/0x0E(Delete Index Entry Allocation(or Root)/Add Index Entry Allocation(or Root))

2. 0x03/0x02(Deallocation File Record Segment/Initialize File Record Segment)

3. 0x16/0x15(Clear Bits In Nonresident Bit Map/Set Bits In Nonresident Bit Map)

4. 0x1B/0x01(Forget Transaction/Compensation Log Record)

ํŒŒ์ผ ์‚ญ์ œ ์ด๋ฒคํŠธ

Page 35: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 35

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

Resident File ํŒŒ์ผ ๋ฐ์ดํ„ฐ ์ž‘์„ฑ( Windows XP ๊นŒ์ง€ ์ ์šฉ๋จ, Win7 ๋ถ€ํ„ฐ ์ ์šฉ ์•ˆ๋จ )

โ€ข Redo ์ž‘์—…์ด Update Resident Value ์ด๊ณ  Record Offset ์ด 0xF8 ์ด์ƒ, ๊ทธ๋ฆฌ๊ณ  Attr Offset ์ด0x18 ์ด์ƒ์ด๋ฉด $DATA ์†์„ฑ์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ ์ž‘์—…์ด๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ์Œ

ํŒŒ์ผ๋ช… ๊ธธ์ด๊ฐ€ 1์ธ ๊ฒฝ์šฐ(์งง์€ ํŒŒ์ผ๋ช…), $Data์†์„ฑ์˜ ์‹œ์ž‘์œ„์น˜๋Š” 0xF8

$DATA ์†์„ฑ์—์„œ 0x18 ์œ„์น˜๋ถ€ํ„ฐ ์‹ค์ œ ๋ฐ์ดํ„ฐ๊ฐ€ ๋“ค์–ด๊ฐ

โ€ข Undo์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ชจ๋‘ 0์ด๋ฉด ์ƒˆ๋กœ์šด ํŒŒ์ผ ๋‚ด์šฉ ์ž‘์„ฑ, ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ํŒŒ์ผ ๋‚ด์šฉ ์ˆ˜์ •

ํŒŒ์ผ ๋ฐ์ดํ„ฐ ์ž‘์„ฑ ์ด๋ฒคํŠธ

Current LSN

Previous LSN

Redo Op

Undo Op

Redo Data

Undo Data

Record Offset

Attr Offset

Page 36: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 36

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

Resident File ํŒŒ์ผ ๋ฐ์ดํ„ฐ ์ˆ˜์ •( Windows XP ๊นŒ์ง€ ์ ์šฉ๋จ, Win7 ๋ถ€ํ„ฐ ์ ์šฉ ์•ˆ๋จ )

โ€ข Undo ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ์Œ

Undo์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์ˆ˜์ • ์ „์˜ ๋‚ด์šฉ

Redo์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์ˆ˜์ • ํ›„์˜ ๋‚ด์šฉ

ํŒŒ์ผ ๋ฐ์ดํ„ฐ ์ž‘์„ฑ ์ด๋ฒคํŠธ

Current LSN

Previous LSN

Redo Op

Undo Op

Redo Data

Undo Data

Record Offset

Attr Offset

Page 37: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 37

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

๋Œ€์ƒ ํŒŒ์ผ ์ฐพ๊ธฐ

โ€ข Update Resident Value ์ž‘์—…์˜ Target LCN, MFT Cluster Index ๊ฐ’๊ณผ Initialize File Record Segment ์ž‘์—…์˜

Target LCN(VCN), MFT Cluster Index ๊ฐ’์„ ๋น„๊ต

โ€ข ๊ฐ™์€ Target LCN(VCN), MFT Cluster Index ๊ฐ’์„ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉด Initialize File Record Segment ์ž‘์—…์„ ํ†ตํ•ด ์ƒ์„ฑ

๋œ ํŒŒ์ผ์˜ ๋‚ด์šฉ์„ ์ž‘์„ฑ/์ˆ˜์ •ํ•œ ๊ฒƒ์ด๋ผ ๋ณผ ์ˆ˜ ์žˆ์Œ

โ€ข ์ด ๋ฐฉ๋ฒ•๋„ 100% ๋ชจ๋‘ ์ฐพ๋Š” ๊ฒƒ์ด ์•„๋‹˜(OS๊ฐ€ 1์ดˆ์— ์ˆ˜์‹ญ ๊ฐœ์”ฉ ํŒŒ์ผ์„ ์ง€์šฐ๊ณ  ์‚ญ์ œํ•˜๊ธฐ ๋•Œ๋ฌธ)

ํŒŒ์ผ ๋ฐ์ดํ„ฐ ์ž‘์„ฑ ์ด๋ฒคํŠธ

Page 38: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 38

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

Non Resident ๋‚ด์šฉ/์ž‘์„ฑ ์ˆ˜์ • ์ด๋ฒคํŠธ

โ€ข Non Resident ํŒŒ์ผ์˜ ๊ฒฝ์šฐ, ์‹ค์ œ ํŒŒ์ผ์˜ ๋‚ด์šฉ์ด ์™ธ๋ถ€ ํด๋Ÿฌ์Šคํ„ฐ์— ์ €์žฅ๋จ

0x09/0x09(Update Mapping Pairs/Update Mapping Pairs) ์ž‘์—…์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ ์ž‘์„ฑ ์œ„์น˜๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Œ

Attr Offset์ด 0x40 ์ผ ๊ฒฝ์šฐ, Cluster Run ์ž‘์„ฑ ๋‚ด์šฉ์„ Redo ๋ฐ์ดํ„ฐ์—์„œ ํš๋“ํ•  ์ˆ˜ ์žˆ์Œ(0x41์ผ ๊ฒฝ์šฐ, ํ™•์ธ ๋ถˆ๊ฐ€)

์•„๋ž˜์˜ ๊ฒฝ์šฐ, 0x26๋ฒˆ์งธ ํด๋Ÿฌ์Šคํ„ฐ๋ถ€ํ„ฐ 2ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์‚ฌ์šฉ๋˜์—ˆ์Œ

ํŒŒ์ผ ๋ฐ์ดํ„ฐ ์ž‘์„ฑ ์ด๋ฒคํŠธ

Current LSN

Previous LSN

Redo Op

Undo Op

Redo Data

Undo Data

Record Offset

Attr Offset

Page 39: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 39

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

Non Resident ํŒŒ์ผ ์ƒ์„ฑ์‹œ, ํ•ด๋‹น ํŒŒ์ผ์˜ ๋ฐ์ดํ„ฐ ์œ„์น˜ ํŒŒ์•…ํ•˜๊ธฐ

โ€ข Resident ํŒŒ์ผ ๋‚ด์šฉ ์ž‘์„ฑ์˜ ๊ฒฝ์šฐ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ Target LCN, MFT Cluster Index ๋น„๊ต๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๊ฐ€ ์ž‘์„ฑ๋˜๋Š” ํŒŒ์ผ์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Œ

โ€ข ์ผ๋ฐ˜์ ์œผ๋กœ ํŒŒ์ผ ์ƒ์„ฑ ์ด๋ฒคํŠธ ๋‹ค์Œ์— ๋ฐ”๋กœ ์˜ค๋Š” Update Mapping Pairs ์ž‘์—…์ด ์ƒ์„ฑํ•œ ํŒŒ์ผ์˜ ๋ฐ์ดํ„ฐ ์“ฐ๊ธฐ ์ž‘์—…์ž„

โ€ข Non Resident ํŒŒ์ผ ์ƒ์„ฑ์‹œ, ๋ฐ์ดํ„ฐ ์ž‘์„ฑ ์ด๋ฒคํŠธ

1. 0x06/0x05(Delete Attribute/Create Attribute)

2. 0x05/0x06(Create Attribute/Delete Attribute)

3. 0x15/0x16(Set Bits In Nonresident Bit Map/Clear Bits In Nonresident Bit Map)

4. 0x0B/0X0B(Set New Attribute Sizes/ Set New Attribute Sizes)

5. 0X09/0X09(Update Mapping Pairs/ Update Mapping Pairs)

6. 0x0B/0X0B(Set New Attribute Sizes/ Set New Attribute Sizes)

7. 0X1B/0X01(Forget Transaction/Compensation Log Record)

ํŒŒ์ผ ๋ฐ์ดํ„ฐ ์ž‘์„ฑ ์ด๋ฒคํŠธ

Page 40: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 40

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

ํŒŒ์ผ๋ช… ๋ณ€๊ฒฝ ์‹œ, ์ผ์–ด๋‚˜๋Š” ์ž‘์—…

โ€ข $FILE_NAME ์†์„ฑ ์‚ญ์ œ, ์ถ”๊ฐ€ ์ž‘์—…

Record Offset ์ด 0x98, Attr Offset ์ด 0x00 ์ธ Delete Attribute์™€ Create Attribute ์ž‘์—…์ด ์—ฐ์†์ ์œผ๋กœ ์˜ค๋ฉด ํŒŒ์ผ๋ช… ๋ณ€๊ฒฝ ์ผ๋ฐ˜์ ์œผ๋กœ $FILE_NAME ์†์„ฑ์€ MFT ๋ ˆ์ฝ”๋“œ์—์„œ 0x98 ์œ„์น˜์— ์žˆ์Œ

๋‘ ์ž‘์—…์˜ Target LCN์ด ๋™์ผํ•ด์•ผ ํ•จ

โ€ข ํŒŒ์ผ๋ช… ๋ณ€๊ฒฝ ์ด๋ฒคํŠธ ์ˆœ์„œ

1. 0x0F/0X0E(Delete Index Entry Allocation/Add Index Entry Allocation)

2. 0x06/0x05(Delete Attribute/Create Attribute)

3. 0x05/0x06(Create Attribute/Delete Attribute)

4. 0x0E/0x0F(Add Index Entry Allocation/Delete Index Entry Allocation)

5. 0x1B/0x01(Forget Transaction/Compensation Log Record)

ํŒŒ์ผ๋ช… ๋ณ€๊ฒฝ ์ด๋ฒคํŠธ

Page 41: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 41

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

Delete Attribute(0x06) Create Attribute(0x05)

โ€ข ๊ฐ ์ž‘์—…์˜ Redo Data($FILE_NAME ์†์„ฑ) ์—์„œ ๋ณ€๊ฒฝ ์ „ ํŒŒ์ผ๋ช…๊ณผ ๋ณ€๊ฒฝ ํ›„ ํŒŒ์ผ๋ช…์„ ์•Œ ์ˆ˜ ์žˆ์Œ

โ€ข ํŒŒ์ผ๋ช… ๋ณ€๊ฒฝ ์‹œ๊ฐ„ : ๋ถ€๋ชจ ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ MFT Modified ์‹œ๊ฐ„ ์ •๋ณด๋กœ ๋ถ€ํ„ฐ ํš๋“

โ€ข Flag ๊ฐ’์„ ํ†ตํ•ด ์ด๋ฆ„์„ ๋ณ€๊ฒฝํ•œ ๊ฐ์ฒด๊ฐ€ ํŒŒ์ผ์ธ์ง€ ๋””๋ ‰ํ„ฐ๋ฆฌ์ธ์ง€ ๊ตฌ๋ถ„

ํŒŒ์ผ๋ช… ๋ณ€๊ฒฝ ์ด๋ฒคํŠธ

Current LSN

Previous LSN

Redo Op

Undo Op

Target LCN

Redo Data

Record Offset

Attr Offset

Page 42: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 42

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ๋ถ„์„

ํŒŒ์ผ๋ช… ๋ณ€๊ฒฝ ์ด๋ฒคํŠธ์™€ ์ฐจ์ด์ 

โ€ข ๋ณ€๊ฒฝ ์ „๊ณผ ๋ณ€๊ฒฝ ํ›„์˜ ์ด๋ฆ„์ด ๊ฐ™๊ณ  ๋ถ€๋ชจ ๋””๋ ‰ํ„ฐ๋ฆฌ ์ •๋ณด๊ฐ€ ๋‹ค๋ฅด๋‹ค๋ฉด ์ด๋™ ์ด๋ฒคํŠธ๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ์Œ

โ€ข ๋‚˜๋จธ์ง€ ์ •๋ณด๋“ค์€ ํŒŒ์ผ๋ช… ๋ณ€๊ฒฝ ์ด๋ฒคํŠธ์™€ ๋™์ผ

ํŒŒ์ผ ์ด๋™ ์ด๋ฒคํŠธ

Page 43: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 43

$UsnJrnl

- $UsnJrnl ?

- $UsnJrnl ๊ตฌ์กฐ

Page 44: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 44

$UsnJrnl ?

NTFS ๋ณ€๊ฒฝ ๋กœ๊ทธ ํŒŒ์ผ

โ€ข ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ํŠน์ • ํŒŒ์ผ์˜ ๋ณ€๊ฒฝ ์—ฌ๋ถ€๋ฅผ ํŒŒ์•…ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ

โ€ข ๊ธฐ๋ณธ์ ์œผ๋กœ Windows 7 ๋ถ€ํ„ฐ ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์Œ

๋น„ํ™œ์„ฑํ™” ๋˜์–ด์žˆ์„ ์‹œ, Fsutil ๋กœ ํ™œ์„ฑํ™” ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Œ

> fsutil usn [createjournal] m=<MaxSize> a=<AllocationDelta> <VolumePath>

Fsutil ์˜ ์ž์„ธํ•œ ์‚ฌ์šฉ๋ฒ•์€ http://technet.microsoft.com/en-us/library/cc788042.aspx

โ€ข $Max ์†์„ฑ๊ณผ $J ์†์„ฑ์œผ๋กœ ๊ตฌ์„ฑ

$Max : ๋ณ€๊ฒฝ ๋กœ๊ทธ์˜ ๊ธฐ๋ณธ ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ ์ €์žฅ

$J ์†์„ฑ : ์‹ค์ œ ๋ณ€๊ฒฝ ๋กœ๊ทธ ๋ ˆ์ฝ”๋“œ ์ €์žฅ

โ€ข ๊ฐ ๋ ˆ์ฝ”๋“œ๋“ค์€ USN(Update Sequence Number) ์ •๋ณด๋ฅผ ๊ฐ€์ง

โ€ข USN ์ •๋ณด๋ฅผ ํ†ตํ•ด ๊ฐ ๋ ˆ์ฝ”๋“œ๋“ค์˜ ์ˆœ์„œ ๊ตฌ๋ถ„

โ€ข ์‹ค์ œ USN ๊ฐ’์€ $J ์†์„ฑ ๋‚ด์—์„œ์˜ ๋ ˆ์ฝ”๋“œ์˜ Offset ๊ฐ’

โ€ข USN ๊ฐ’์€ MFT ์—”ํŠธ๋ฆฌ์˜ $STANDARD_INFORMATION ์†์„ฑ์—๋„ ์ €์žฅ๋˜์–ด ์žˆ์Œ

Page 45: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 45

$UsnJrnl ?

NTFS ๋ณ€๊ฒฝ ๋กœ๊ทธ ํŒŒ์ผ(๊ณ„์†)

โ€ข ๋ฃจํŠธ์— ์žˆ๋Š” โ€œ$Extendโ€ ํด๋” ์•„๋ž˜ ์œ„์น˜

โ€ข ๊ธฐ๋ก ๋˜๋Š” ๋กœ๊ทธ ๋ฐ์ดํ„ฐ์˜ ์–‘(์ผ๋ฐ˜์ ์œผ๋กœโ€ฆ)

์ปดํ“จํ„ฐ๋ฅผ ๊ณ„์† ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ, 1~2์ผ ์ •๋„์˜ ๋กœ๊ทธ๊ฐ€ ๋‚จ์Œ

๊ทœ์น™์ ์œผ๋กœ ์“ธ ๊ฒฝ์šฐ(ํ•˜๋ฃจ 8์‹œ๊ฐ„), 4~5์ผ ์ •๋„์˜ ๋กœ๊ทธ๊ฐ€ ๋‚จ์Œ

Page 46: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 46

$UsnJrnl

- $UsnJrnl ?

- $UsnJrnl ๊ตฌ์กฐ

Page 47: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 47

$UsnJrnl ๊ตฌ์กฐ

$Max ์†์„ฑ์˜ ํฌ๊ธฐ

โ€ข 32 Byte ๊ณ ์ • ํฌ๊ธฐ๋ฅผ ๊ฐ€์ง

$Max ์†์„ฑ์˜ ์ €์žฅ ์ •๋ณด

$Max ์†์„ฑ์˜ ๊ตฌ์กฐ

Offset Size Stored Information Detail

0x00 8 Maximum Size ๋กœ๊ทธ ๋ฐ์ดํ„ฐ์˜ ์ตœ๋Œ€ ํฌ๊ธฐ

0x08 8 Allocation Size ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋  ๋•Œ ํ• ๋‹น ๋˜๋Š” ์˜์—ญ์˜ ํฌ๊ธฐ

0x10 8 USN ID โ€œ$UsnJrnlโ€ ํŒŒ์ผ์˜ ์ƒ์„ฑ์‹œ๊ฐ„(FILETIME)

0x18 8 Lowest Valid USN ํ˜„์žฌ ์ €์žฅ๋œ ๋ ˆ์ฝ”๋“œ ์ค‘ ๊ฐ€์žฅ ์ž‘์€ USN ๊ฐ’์ด ์ •๋ณด๋ฅผ ํ†ตํ•ด $J ์†์„ฑ ๋‚ด ์ฒซ ๋ฒˆ์งธ ๋ ˆ์ฝ”๋“œ๋กœ ๋ฐ”๋กœ ์ด๋™ ๊ฐ€๋Šฅ

Page 48: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 48

$UsnJrnl ๊ตฌ์กฐ

$J ์†์„ฑ ๊ตฌ์กฐ

โ€ข ๊ฐ€๋ณ€ ํฌ๊ธฐ์˜ ๋กœ๊ทธ ๋ ˆ์ฝ”๋“œ๋“ค์ด ์—ฐ์†์ ์œผ๋กœ ๋‚˜์—ด๋จ

โ€ข ์†์„ฑ์˜ ์•ž ๋ถ€๋ถ„์€ 0์œผ๋กœ ์ฑ„์›Œ์ง„ โ€œSparse Areaโ€ ๋ฅผ ๊ฐ€์ง

์ด๋Ÿฌํ•œ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง€๋Š” ์ด์œ ๋Š” ์šด์˜์ฒด์ œ๊ฐ€ $J ์†์„ฑ์— ์ €์žฅ๋˜๋Š” ๋กœ๊ทธ ๋ฐ์ดํ„ฐ์˜ ํฌ๊ธฐ๋ฅผ ์ผ์ •ํ•˜๊ฒŒ ์œ ์ง€ํ•˜๋ ค๊ณ  ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž„

$J ์†์„ฑ์˜ ๋ ˆ์ฝ”๋“œ ํ• ๋‹น ์ •์ฑ…

1. ์ƒˆ๋กœ์šด ๋กœ๊ทธ ๋ ˆ์ฝ”๋“œ๋“ค์€ ์†์„ฑ ๋์— ์ถ”๊ฐ€๋จ

2. ์ถ”๊ฐ€๋œ ๋ ˆ์ฝ”๋“œ๋“ค์˜ ์ด ํฌ๊ธฐ๊ฐ€ โ€œAllocation Sizeโ€๋ฅผ ๋„˜์œผ๋ฉด ์ถ”๊ฐ€ ๋ ˆ์ฝ”๋“œ๋“ค์„ ํฌํ•จํ•˜์—ฌ ์ „์ฒด ๋กœ๊ทธ ๋ฐ์ดํ„ฐ์˜ ํฌ๊ธฐ๊ฐ€ โ€œMaximum Sizeโ€ ๋ฅผ ๋„˜๋Š”์ง€ ํ™•์ธ

3. ์ „์ฒด ๋กœ๊ทธ ๋ฐ์ดํ„ฐ์˜ ํฌ๊ธฐ๊ฐ€ โ€œMaximum Sizeโ€ ๋ฅผ ๋„˜๋Š” ๋‹ค๋ฉด ๋กœ๊ทธ ๋ฐ์ดํ„ฐ์˜ ์•ž ๋ถ€๋ถ„์„ โ€œAllocation Sizeโ€ ๋งŒํผ 0์œผ๋กœ ์ฑ„์›Œ โ€œSparse Areaโ€ ๋กœ ๋งŒ๋“ฌ

๋”ฐ๋ผ์„œ $J ์†์„ฑ์˜ ๋…ผ๋ฆฌ์ ์ธ ํฌ๊ธฐ๋Š” ๊ณ„์† ์ปค์ง€์ง€๋งŒ ์‹ค์ œ ๋ฐ์ดํ„ฐ๊ฐ€ ํ• ๋‹น๋œ ์˜์—ญ์€ ์ผ์ •ํ•˜๊ฒŒ ์œ ์ง€๋จ

์ผ๋ฐ˜์ ์œผ๋กœ 0x200000 ~ 0x23FFFFF ์˜ ๋กœ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅ

Page 49: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 49

$UsnJrnl ๊ตฌ์กฐ

$J ์†์„ฑ์˜ ๋กœ๊ทธ ๋ ˆ์ฝ”๋“œ ๊ตฌ์กฐ(http://msdn.microsoft.com/en-us/library/aa365722.aspx)

โ€ข MFT Reference Number ๋Œ€์‹  Parent MFT Reference Number ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ 

MFT Reference Number ๋ฅผ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ, ํ•ด๋‹น ํŒŒ์ผ์ด ์‚ญ์ œ๋˜์—ˆ์„ ๋•Œ ์ „์ฒด ๊ฒฝ๋กœ๋ฅผ ๋ชป ์–ป์„ ์ˆ˜๋„ ์žˆ๊ธฐ ๋•Œ๋ฌธ

Offset Size Stored Information Detail

0x00 4 Size of Record ๋ ˆ์ฝ”๋“œ ํฌ๊ธฐ

0x04 2 Major Version 2(ํ˜„์žฌ ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” Change Journal Software์˜ ๋ฒ„์ „์€ 2.0)

0x06 2 Minor Version 0(ํ˜„์žฌ ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” Change Journal Software์˜ ๋ฒ„์ „์€ 2.0)

0x08 8 MFT Reference Number ํ˜„์žฌ ๋ณ€๊ฒฝ ์ด๋ฒคํŠธ๊ฐ€ ์ ์šฉ๋˜๋Š” ํŒŒ์ผ ํ˜น์€ ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ MFT Reference Number

0x10 8 Parent MFT Reference Number ํ˜„์žฌ ๋ณ€๊ฒฝ ์ด๋ฒคํŠธ๊ฐ€ ์ ์šฉ๋˜๋Š” ํŒŒ์ผ ํ˜น์€ ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ ๋ถ€๋ชจ ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ MFT Reference Number$MFT ์ •๋ณด์™€ ์กฐํ•ฉํ•˜์—ฌ ์ „์ฒด ๊ฒฝ๋กœ ํš๋“ ๊ฐ€๋Šฅ

0x18 8 USN Update Sequence Number

0x20 8 TimeStamp(FILETIME) ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•œ ์‹œ๊ฐ„(UTC +0)

0x28 4 Reason Flag ๋ณ€๊ฒฝ ์ด๋ฒคํŠธ ์ •๋ณด ํ”Œ๋ž˜๊ทธ

0x2C 4 Source Information ๋ณ€๊ฒฝ ์ด๋ฒคํŠธ๋ฅผ ๋ฐœ์ƒ์‹œํ‚จ ์ฃผ์ฒด์— ๋Œ€ํ•œ ์ •๋ณด

0x30 4 Security ID ๋ณด์•ˆ ID

0x34 4 File Attributes ๋ณ€๊ฒฝ ์ด๋ฒคํŠธ์˜ ๋Œ€์ƒ์ด ๋˜๋Š” ๊ฐ์ฒด์— ๋Œ€ํ•œ ์ •๋ณด์ผ๋ฐ˜์ ์œผ๋กœ ๋Œ€์ƒ์ด ํŒŒ์ผ์ธ์ง€ ๋””๋ ‰ํ„ฐ๋ฆฌ์ธ์ง€ ๊ตฌ๋ถ„

0x38 2 Size of Filename ๊ฐ์ฒด ์ด๋ฆ„ ์ •๋ณด์˜ ํฌ๊ธฐ

0x3A 2 Offset to Filename ๊ฐ์ฒด ์ด๋ฆ„ ์ •๋ณด์˜ ๋ ˆ์ฝ”๋“œ ๋‚ด ์œ„์น˜

0x3C N Filename ํ˜„์žฌ ๋ณ€๊ฒฝ ์ด๋ฒคํŠธ๊ฐ€ ์ ์šฉ๋˜๋Š” ๊ฐ์ฒด(ํŒŒ์ผ ํ˜น์€ ๋””๋ ‰ํ„ฐ๋ฆฌ)์˜ ์ด๋ฆ„

Page 50: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 50

$UsnJrnl ๊ตฌ์กฐ

Reason Flag ์ •๋ณด(http://msdn.microsoft.com/en-us/library/aa365722.aspx)

Flag Description

0x01 ๊ธฐ๋ณธ $Data ์†์„ฑ์— ๋ฐ์ดํ„ฐ๊ฐ€ Overwrite ๋จ

0x02 ๊ธฐ๋ณธ $Data ์†์„ฑ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์ถ”๊ฐ€๋จ

0x04 ๊ธฐ๋ณธ $Data ์†์„ฑ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์ค„์–ด๋“ฌ

0x10 ์ด๋ฆ„ ์žˆ๋Š” $Data ์†์„ฑ์— ๋ฐ์ดํ„ฐ๊ฐ€ Overwrite ๋จ

0x20 ์ด๋ฆ„ ์žˆ๋Š” $Data ์†์„ฑ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์ถ”๊ฐ€๋จ

0x40 ์ด๋ฆ„ ์žˆ๋Š” $Data ์†์„ฑ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์ค„์–ด๋“ฌ

0x100 ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์ƒ์„ฑ๋จ

0x200 ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์‚ญ์ œ๋จ

0x400 ํŒŒ์ผ์˜ ํ™•์žฅ๋œ ์†์„ฑ์ด ๋ณ€๊ฒฝ๋จ

0x800 ์ ‘๊ทผ ๊ถŒํ•œ์ด ๋ณ€๊ฒฝ๋จ

0x1000 ๊ฐ์ฒด๋ช… ๋ณ€๊ฒฝ์‹œ, ๋ณ€๊ฒฝ ์ „ ์ด๋ฆ„

0x2000 ๊ฐ์ฒด๋ช… ๋ณ€๊ฒฝ์‹œ, ๋ณ€๊ฒฝ ํ›„ ์ด๋ฆ„

0x4000 ์ธ๋ฑ์Šค ์ƒํƒœ๊ฐ€ ๋ณ€๊ฒฝ๋จ

0x8000 ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ ์†์„ฑ์ด ๋ณ€๊ฒฝ๋จ

0x10000 ํ•˜๋“œ ๋งํฌ๊ฐ€ ์ƒ์„ฑ๋˜์—ˆ๊ฑฐ๋‚˜ ์‚ญ์ œ๋จ

0x20000 ์••์ถ• ์ƒํƒœ๊ฐ€ ๋ณ€๊ฒฝ๋จ(์••์ถ•๋จ or ์••์ถ•์ด ํ’€๋ฆผ)

0x40000 ์•”ํ˜ธํ™” ์ƒํƒœ๊ฐ€ ๋ณ€๊ฒฝ๋จ(์•”ํ˜ธํ™”๋จ or ๋ณตํ˜ธํ™”๋จ)

0x80000 ๊ฐ์ฒด ID๊ฐ€ ๋ณ€๊ฒฝ๋จ

0x100000 Reparse ์ง€์ ๊ฐ’์ด ๋ณ€๊ฒฝ๋จ

0x200000 ์ด๋ฆ„ ์žˆ๋Š” $Data ์†์„ฑ์˜ ์ƒ์„ฑ or ์‚ญ์ œ or ๋ณ€๊ฒฝ๋จ

0x80000000 ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ๋‹ซํž˜

Page 51: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 51

$UsnJrnl ๊ตฌ์กฐ

Source Information ์ •๋ณด(http://msdn.microsoft.com/en-us/library/aa365722.aspx)

Flag Description

0x00 ์‚ฌ์šฉ์ž๊ฐ€ ๋ฐœ์ƒ์‹œํ‚จ ์ด๋ฒคํŠธ

0x01 ์šด์˜์ฒด์ œ์— ์˜ํ•ด ๋ฐœ์ƒํ•œ ์ด๋ฒคํŠธ

0x02 The operation adds a private data stream to a file or directory.

0x04 The operation creates or updates the contents of a replicated file.

Page 52: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 52

$UsnJrnl ๊ตฌ์กฐ

File Attribute ์ •๋ณด(http://msdn.microsoft.com/en-us/library/gg258117.aspx)

Value Description

0x01 ์ฝ๊ธฐ ์ „์šฉ ์†์„ฑ

0x02 ์ˆจ๊น€ ์†์„ฑ

0x04 ์‹œ์Šคํ…œ ํŒŒ์ผ

0x10 ๋””๋ ‰ํ„ฐ๋ฆฌ

0x20 Archive ํŒŒ์ผ

0x40 ๋””๋ฐ”์ด์Šค ํŒŒ์ผ

0x80 ์ผ๋ฐ˜ ํŒŒ์ผ

0x100 ์ž„์‹œ ํŒŒ์ผ

0x200 Sparse ํŒŒ์ผ

0x400 Reparse ์†์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ๊ฑฐ๋‚˜ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ ํŒŒ์ผ

0x800 ์••์ถ•๋จ

0x1000 This attribute indicates that the file data is physically moved to offline storage.

0x2000 ์ธ๋ฑ์‹ฑ ์•ˆ๋จ

0x4000 ์•”ํ˜ธํ™”๋จ

0x8000 The directory or user data stream is configured with integrity (only supported on ReFSvolumes).

0x10000 ๊ฐ€์ƒ ํŒŒ์ผ

0x20000 The user data stream not to be read by the background data integrity scanner (AKA scrubber).

Page 53: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 53

NTFS Log Tracker

- ๋„๊ตฌ์„ค๊ณ„๋ฐ๊ตฌํ˜„

- ๋„๊ตฌ ๊ธฐ๋Šฅ

- ๊ธฐ์กด ๋„๊ตฌ์™€์˜ ๋น„๊ต

- Case Study

Page 54: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 54

NTFS Log Tracker ์„ค๊ณ„

๋„๊ตฌ ์„ค๊ณ„

Page 55: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 55

NTFS Log Tracker

๋„๊ตฌ ๊ตฌํ˜„ : https://code.google.com/p/ntfs-log-tracker/

Page 56: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 56

NTFS Log Tracker

- ๋„๊ตฌ ์„ค๊ณ„

- ๋„๊ตฌ๊ธฐ๋Šฅ

- ๊ธฐ์กด ๋„๊ตฌ์™€์˜ ๋น„๊ต

- Case Study

Page 57: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 57

NTFS Log Tracker

$LogFile ํŒŒ์ผ ๋‹จ์œ„ ์ด๋ฒคํŠธ ์ถ”์ถœ

โ€ข ํŒŒ์ผ ์ƒ์„ฑ/์‚ญ์ œ ์ด๋ฒคํŠธ(ํŒŒ์ผ์‹œ์Šคํ…œ ํ„ฐ๋„๋ง ํฌํ•จ)

์ด๋ฒคํŠธ๋“ค ์ค‘ ์ค‘๊ฐ„์— ์‹œ๊ฐ„์ด ์ด์ƒํ•œ ์ด๋ฒคํŠธ๋“ค์€ โ€œํŒŒ์ผ ์‹œ์Šคํ…œ ํ„ฐ๋„๋งโ€œ ์ด๋ฒคํŠธ๋กœ ํŒ๋‹จํ•ด์ฃผ์„ธ์š”~^^

โ€ข ํŒŒ์ผ ๋ฐ์ดํ„ฐ ์ž‘์„ฑ ์ด๋ฒคํŠธ

โ€ข ํŒŒ์ผ๋ช… ๋ณ€๊ฒฝ/์ด๋™ ์ด๋ฒคํŠธ

โ€ข ์ถ”๊ฐ€์ ์œผ๋กœ $LogFile์™€ $MFT ์—์„œ LSN ์ด ๊ฒน์น˜๋Š” ๋ ˆ์ฝ”๋“œ๋“ค์€ ์ถœ๋ ฅํ•จ(ํŒŒ์ผ๋ช… ํฌํ•จ)

๋„๊ตฌ ๊ธฐ๋Šฅ

Page 58: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 58

NTFS Log Tracker

$UsnJrnl ๋กœ๊ทธ ์ถœ๋ ฅ

โ€ข TimeStamp

โ€ข USN

โ€ข FileName

โ€ข Full Path(from $MFT)

โ€ข Event

โ€ข Source Info

โ€ข File Attribute

๋„๊ตฌ ๊ธฐ๋Šฅ

Page 59: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 59

NTFS Log Tracker

ํ‚ค์›Œ๋“œ ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ

CSV Export ๊ธฐ๋Šฅ

SQLite DB Import ๊ธฐ๋Šฅ

๋„๊ตฌ ๊ธฐ๋Šฅ

Page 60: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 60

NTFS Log Tracker

- ๋„๊ตฌ ์„ค๊ณ„

- ๋„๊ตฌ ๊ธฐ๋Šฅ

- ๊ธฐ์กด๋„๊ตฌ์™€์˜๋น„๊ต

- Case Study

Page 61: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 61

NTFS Log Tracker

JP(Windows Journal Parser) : http://tzworks.net/prototype_page.php?proto_id=5

โ€ข Full Path ์ถœ๋ ฅ

JP ๋Š” Full Path ์ •๋ณด๋ฅผ ์ถœ๋ ฅํ•ด ์ฃผ์ง€ ์•Š์Œ

โ€ข ํŒŒ์ผ๋ช… ๋ณ€๊ฒฝ ์ด๋ฒคํŠธ

โ€ข ํŒŒ์ผ/๋””๋ ‰ํ„ฐ๋ฆฌ ๊ตฌ๋ถ„

๊ธฐ์กด ๋„๊ตฌ์™€ ๋น„๊ต

Page 62: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 62

NTFS Log Tracker

$LogFileParser : https://code.google.com/p/mft2csv/wiki/LogFileParser

โ€ข $LogFile, $UsnJrnl ๋ ˆ์ฝ”๋“œ ๋‹จ์œ„ ํŒŒ์‹ฑ

โ€ข Data Run ์ถ”์ 

โ€ข Full Path ์ •๋ณด ์—†์Œ

โ€ข ํ˜„์žฅ ๋ถ„์„์šฉ์ด๊ธฐ ๋ณด๋‹ค๋Š” ์—ฐ๊ตฌ์šฉ

๊ธฐ์กด ๋„๊ตฌ์™€ ๋น„๊ต

Page 63: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 63

NTFS Log Tracker

Encase v7

โ€ข MFT Transaction ๋ถ„์„ ๊ธฐ๋Šฅ

$LogFile ๋‚ด์˜ MFT Entry, Index Record ์นด๋น™

ํŒŒ์ผ ๋‹จ์œ„์˜ ์ด๋ฒคํŠธ ์ •๋ณด๋ฅผ ์ถ”์ถœํ•˜์ง€ ์•Š์Œ

๊ธฐ์กด ๋„๊ตฌ์™€ ๋น„๊ต

Page 64: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 64

NTFS Log Tracker

NTFS TriForce( https://docs.google.com/forms/d/1GzOMe-QHtB12ZnI4ZTjLA06DJP6ZScXngO42ZDGIpR0/viewform )

โ€ข $MFT, $LogFile, $UsnJrnl ๊ต์ฐจ ๋ถ„์„

โ€ข ์ƒ์„ฑ, ์‚ญ์ œ, ์ด๋ฆ„ ๋ณ€๊ฒฝ ์ด๋ฒคํŠธ ์ถœ๋ ฅ

โ€ข SQLite, CSV ํŒŒ์ผ ์ถœ๋ ฅ

X-Ways Forensics

โ€ข $LogFile Viewer

โ€ข ์ƒ์šฉ๋„๊ตฌ๋ผ ์•„์ง ์จ๋ณด์งˆ ๋ชปํ–ˆ์Œโ€ฆ

๊ธฐ์กด ๋„๊ตฌ์™€ ๋น„๊ต

Page 65: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 65

NTFS Log Tracker

- ๋„๊ตฌ ์„ค๊ณ„

- ๋„๊ตฌ ๊ธฐ๋Šฅ

- ๊ธฐ์กด ๋„๊ตฌ์™€์˜ ๋น„๊ต

- Case Study

Page 66: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 66

NTFS Log Tracker

๋ถ€ํŒ…์‹œ ์ƒ์„ฑ๋˜๊ณ  ์ง€์›Œ์ง€๋Š” ์•…์„ฑ์ฝ”๋“œ ์ถ”์ถœ

โ€ข ๋ถ€ํŒ…์‹œ ์ƒ์„ฑ๋˜๋Š” ๋“œ๋ผ์ด๋ฒ„ ํŒŒ์ผ ๋ฐœ๊ฒฌ

โ€ข ํ•ด๋‹น ํŒŒ์ผ์€ $MFT ์—์„œ ํ”์ ์„ ์ฐพ์„ ์ˆ˜ ์—†์Œ(๋กœ๋”ฉ๋˜๊ณ  ์ง€์›Œ์ ธ ์žˆ๋Š” ์ƒํƒœ)

โ€ข Cluster Number ์ •๋ณด๋ฅผ ํ†ตํ•ด ๋””์Šคํฌ ๋น„ํ• ๋‹น์˜์—ญ์—์„œ ํ•ด๋‹น ๋“œ๋ผ์ด๋ฒ„ ํŒŒ์ผ ์ถ”์ถœ

โ€ข ๋ฆฌ๋ฒ„์‹ฑ์„ ํ†ตํ•ด ํ•ด๋‹น ๋“œ๋ผ์ด๋ฒ„์˜ ์ •ํ™•ํ•œ ์—ญํ• ์„ ์•Œ ์ˆ˜ ์žˆ์—ˆ์Œ

Case Study 1

Page 67: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 67

NTFS Log Tracker

๋ฉ”๋ชจ๋ฆฌ ๋‚ด์—์„œ๋งŒ ์กด์žฌํ•˜๋Š” ์•…์„ฑ์ฝ”๋“œ ํ”์  ํ™•์ธ

โ€ข ์•…์„ฑ์ฝ”๋“œ๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ ๋‚ด์—์„œ๋งŒ ์กด์žฌ

โ€ข ์‹œ์Šคํ…œ ์ข…๋ฃŒ ์ด๋ฒคํŠธ๋ฅผ ํƒ์ง€ํ•˜์—ฌ Reloading ํŒŒ์ผ ์ƒ์„ฑ

โ€ข ๋ถ€ํŒ… ํ›„, ๋ฉ”๋ชจ๋ฆฌ์— ๋กœ๋”ฉ ๋œ ํ›„, Reloading ํŒŒ์ผ ์‚ญ์ œ;;

โ€ข ํ•ด๋‹น ํŒŒ์ผ์€ $MFT ์—์„œ ํ”์ ์„ ์ฐพ์„ ์ˆ˜ ์—†์Œ

โ€ข $UsnJrnl ๊ณผ ์ด๋ฒคํŠธ ๋กœ๊ทธ๋ฅผ ๊ต์ฐจ ๋ถ„์„ํ•˜์—ฌ ์ข…๋ฃŒ๋  ๋•Œ ์ƒ์„ฑ๋˜๊ณ  ๋ถ€ํŒ…๋  ๋•Œ ์‚ญ์ œ๋˜๋Š” ํŒŒ์ผ ๋ฐœ๊ฒฌ

Case Study 2

Page 68: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 68

NTFS Log Tracker

Domain Controller(Win2008 R2)์˜ $UsnJrnl ๋ถ„์„

โ€ข ์ผ๋ฐ˜์  2008 R2 ์„œ๋ฒ„์˜ ๊ฒฝ์šฐ, 1~2์ผ ์ •๋„์˜ ๋ณ€๊ฒฝ ๋กœ๊ทธ๊ฐ€ ๋‚จ์Œ

โ€ข DC(Domain Controller)์˜ ๊ฒฝ์šฐ, 1๋‹ฌ ์ด์ƒ์˜ ๋กœ๊ทธ๊ฐ€ ๊ธฐ๋ก๋˜์–ด ์žˆ์Œ(์ด์œ  ๋ชจ๋ฆ„;;)

โ€ข DC์˜ $UsnJrnl ์—์„œ ๊ณต๊ฒฉ์ž๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ์•…์„ฑ์ฝ”๋“œ ํ”์ ์„ ์ฐพ๊ธฐ๊ฐ€ ์šฉ์ดํ•จ

ํš๋“ํ•œ ํ‚ค์›Œ๋“œ๋Š” ํƒ€ ์‹œ์Šคํ…œ ๋ถ„์„์— ํ™œ์šฉ

Case Study 3

Page 69: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 69

NTFS Log Tracker

CTF ๋ฌธ์ œ ํ’€์ด ํ™œ์šฉ( thanks to Deok9~ )

โ€ข 2013 CodeGate CTF, Forensic 200

โ€ข ๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ ์ด๋ฏธ์ง€์˜ $LogFile ๋ถ„์„

ํŠน์ • ๊ฒฝ๋กœ์— ์ƒ์„ฑ๋˜๋Š” ํŒŒ์ผ ๋ฐœ๊ฒฌ

๋ฌธ์ œ๋ฅผ ๋งŒ๋“œ๋Š” ๋™์•ˆ์˜ ๋ชจ๋“  ํŒŒ์ผ ์‹œ์Šคํ…œ ์ด๋ฒคํŠธ๋ฅผ ํ™•์ธ ๊ฐ€๋Šฅ

โ€ข ์ž์„ธํ•œ ๋ฌธ์ œ ํ’€์ด๋Š” ์•„๋ž˜ URL ์—์„œ ํ™•์ธ

http://forensicinsight.org/wp-content/uploads/2013/03/F-INSIGHT-CodeGate-2013-Write-ups.pdf

Case Study 4

Page 70: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 70

Conclusion

Page 71: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 71

Conclusion

NTFS ์˜ ๋กœ๊ทธ ํŒŒ์ผ : $LogFile, $UsnJrnl

$MFT ์—๋งŒ ์˜์กดํ•œ ํŒŒ์ผ ์‹œ์Šคํ…œ ๋ถ„์„์€ ํ•œ๊ณ„๊ฐ€ ์žˆ์Œ

โ€ข ์‚ญ์ œ๋œ ํŒŒ์ผ์˜ ํ”์ 

โ€ข ํŠน์ • ํŒŒ์ผ์˜ ๋™์ผํ•œ ์ด๋ฒคํŠธ

$LogFile, $UsnJrnl ์„ ํ†ตํ•œ ํŒŒ์ผ ์‹œ์Šคํ…œ ์ด๋ฒคํŠธ ๋ถ„์„์ด ํ•„์š”ํ•จ

NTFS Log Tracker

โ€ข $LogFile, $UsnJrnl ์ด๋ฒคํŠธ ๋ถ„์„

โ€ข $MFT ๋ฅผ ํ†ตํ•ด Full Path ์ถ”์ถœ

โ€ข ํ‚ค์›Œ๋“œ ๊ฒ€์ƒ‰, CSV Export, SQLite ์ง€์›

Page 72: (130525) #fitalk   ntfs log tracker (korean)

forensicinsight.org Page 72

Question and Answer