@port139 Blog

基本的にはデジタル・フォレンジックの技術について取り扱っていますが、記載内容には高確率で誤りが含まれる可能性があります。

NTFS $OBJECT_ID と Removable

NTFS $OBJECT_ID (0x40) に関する基本情報は、Kazamiya さんが書かれている「ObjectID アーティファクト」を参考にしてください。

Windows 10環境上で、USBメモリ内のファイルを参照した場合に、ObjectIDが作成されるか確認します。

Windows 10 へ USB メモリを接続、Disk 1 で Removableとして認識されています。

f:id:hideakii:20170923072938p:plain

画像ファイルをD:ドライブへコピーします。

f:id:hideakii:20170923073230p:plain

fsutilコマンドを利用し、ObjectIDを確認します。ファイルにObjectIDは付与されていません。

f:id:hideakii:20170923073433p:plain

エクスプローラから画像ファイルをダブルクリックし参照します。

f:id:hideakii:20170923073701p:plain

 再度 fsutil コマンドを使い ObjectID を確認すると、ObjectID が付与された事を確認できます。

f:id:hideakii:20170923073836p:plain

Autopsy でFile Metadataを確認します。

f:id:hideakii:20170923075701p:plain

エクスプローラから画像ファイルを参照したので、RecentフォルダにLNKファイルが作成されています。

LECmd を使い、C:ドライブに作成された Penguin.jpg.lnk ファイルをパースします。 

LECmd version 0.9.7.0

Author: Eric Zimmerman (saericzimmerman@gmail.com)
https://github.com/EricZimmerman/LECmd

Command line: -f c:\temp\LNK\Penguin.jpg.lnk

Processing 'c:\temp\LNK\Penguin.jpg.lnk'

Source file: c:\temp\LNK\Penguin.jpg.lnk
Source created: 2017-09-21 09:43:15
Source modified: 2017-09-22 22:35:39
Source accessed: 2017-09-22 22:35:39

--- Header ---
Target created: 2017-09-22 22:31:33
Target modified: 2017-09-17 22:38:46
Target accessed: 2017-09-22 22:31:33

File size: 6,856,704
Flags: HasTargetIdList, HasLinkInfo, HasWorkingDir, IsUnicode, DisableKnownFolderTracking
File attributes: FileAttributeArchive
Icon index: 0
Show window: SwNormal (Activates and displays the window. The window is restored to its original size and position if the window is minimized or maximized.)

Working Directory: D:\

--- Link information ---
Flags: VolumeIdAndLocalBasePath

>>Volume information
Drive type: Removable storage media (Floppy, USB)
Serial number: 34AF8C2D
Label: USB
Local path: D:\Penguin.jpg

--- Target ID information (Format: Type ==> Value) ---

Absolute path: D:\\Penguin.jpg

-Users property view?: Drive letter ==> D:\

-File ==> Penguin.jpg
Short name: Penguin.jpg
Modified: 2017-09-17 22:38:48
Extension block count: 1

--------- Block 0 (Beef0004) ---------
Long name: Penguin.jpg
Created: 2017-09-22 22:31:34
Last access: 2017-09-22 22:31:34
MFT entry/sequence #: 38/1 (0x26/0x1)

--- End Target ID information ---

--- Extra blocks information ---

>> Tracker database block
Machine ID: msedgewin10
MAC Address: 08:00:27:36:0e:0b
MAC Vendor: CADMUS COMPUTER SYSTEMS
Creation: 2017-09-23 14:21:54

Volume Droid: 00000000-0000-0000-0000-000000000000
Volume Droid Birth: 00000000-0000-0000-0000-000000000000
File Droid: 8ca7c142-a06a-11e7-a81d-080027360e0b
File Droid birth: 8ca7c142-a06a-11e7-a81d-080027360e0b

>> Property store data block (Format: GUID\ID Description ==> Value)
446d16b1-8dad-4870-a748-402ea43d788c\104 (Description not available) ==> Unmapped GUID: ba3f9a8b-9f35-11e7-a818-806e6f6e6963


---------- Processed 'c:\temp\LNK\Penguin.jpg.lnk' in 0.03150620 seconds ----------

ファイルを移動

画像ファイルを、D: から C: へ移動した後、fsutilコマンドを利用し、ObjectIDを確認します。移動された画像ファイルはObjectIDを維持していません。

f:id:hideakii:20170923080345p:plain

ファイルの移動後、Penguin.jpg.lnkからファイルを参照しても画像は表示されませんが、LNKファイルの内容は更新されます。

Shell Links
https://msdn.microsoft.com/ja-jp/library/windows/desktop/bb776891(v=vs.85).aspx のLink Resolution項目より引用

When a Shell link is created, the system saves information about the link. When resolving a link—either automatically or with an IShellLink::Resolve call—the system first retrieves the path associated with the Shell link by using a pointer to the Shell link's identifier list. For more information about the identifier list, see Item Identifiers and Identifier Lists. The system searches for the associated object in that path and, if it finds the object, resolves the link. If the system cannot find the object, it calls on the Distributed Link Tracking and Object Identifiers (DLT) service, if available, to locate the object. If the DLT service is not available or cannot find the object, the system looks in the same directory for an object with the same file creation time and attributes but with a different name. This type of search resolves a link to an object that has been renamed.

更新されたLNKファイルをLECmdで確認してみます。

LECmd version 0.9.7.0

Author: Eric Zimmerman (saericzimmerman@gmail.com)
https://github.com/EricZimmerman/LECmd

Command line: -f c:\temp\LNK2\Penguin.jpg.lnk

Processing 'c:\temp\LNK2\Penguin.jpg.lnk'

Source file: c:\temp\LNK2\Penguin.jpg.lnk
Source created: 2017-09-21 09:43:15
Source modified: 2017-09-22 23:04:33
Source accessed: 2017-09-22 23:04:33

--- Header ---
Target created:
Target modified:
Target accessed:

File size: 0
Flags: HasTargetIdList, HasLinkInfo, HasWorkingDir, IsUnicode, DisableKnownFolderTracking
File attributes: 0
Icon index: 0
Show window: SwNormal (Activates and displays the window. The window is restored to its original size and position if the window is minimized or maximized.)

Working Directory: D:\

--- Link information ---
Flags: VolumeIdAndLocalBasePath

>>Volume information
Drive type: Removable storage media (Floppy, USB)
Serial number: 34AF8C2D
Label: USB
Local path: D:\Penguin.jpg

--- Target ID information (Format: Type ==> Value) ---

Absolute path: D:\\Penguin.jpg

-Users property view?: Drive letter ==> D:\

-File ==> Penguin.jpg
Short name: Penguin.jpg
Modified:
Extension block count: 1

--------- Block 0 (Beef0004) ---------
Long name: Penguin.jpg
Created:
Last access:

--- End Target ID information ---

---------- Processed 'c:\temp\LNK2\Penguin.jpg.lnk' in 0.01762540 seconds ----------

 C:ドライブのファイルを、USBメモリにコピーした場合もObjectIDは失われます。

f:id:hideakii:20170923094615p:plain

 

ObjectID タイムスタンプ

  System Boot Time: 9/23/2017, 12:05:44 AM (UTC)

prairie dog.jpgをエクスプローラから参照し、ObjectIDを作成します。

f:id:hideakii:20170923091407p:plain

LECmdでタイムスタンプを確認します。

>> Tracker database block
Machine ID: msedgewin10
MAC Address: 08:00:27:36:0e:0b
MAC Vendor: CADMUS COMPUTER SYSTEMS
Creation: 2017-09-23 00:05:44

Volume Droid: 00000000-0000-0000-0000-000000000000
Volume Droid Birth: 00000000-0000-0000-0000-000000000000
File Droid: f1c1b166-9ff2-11e7-a81f-080027360e0b
File Droid birth: f1c1b166-9ff2-11e7-a81f-080027360e0b

 秒以下の桁を確認していませんが、以降ObjectIDが作成されるとカウントが上がっていくはずです。

なお、--mp オプションを利用すれば秒以下も確認できます。 

>> Tracker database block
Machine ID: msedgewin10
MAC Address: 08:00:27:36:0e:0b
MAC Vendor: CADMUS COMPUTER SYSTEMS
Creation: 2017-09-23 00:05:44.4994406

Volume Droid: 00000000-0000-0000-0000-000000000000
Volume Droid Birth: 00000000-0000-0000-0000-000000000000
File Droid: f1c1b166-9ff2-11e7-a81f-080027360e0b
File Droid birth: f1c1b166-9ff2-11e7-a81f-080027360e0b

 タイムスタンプを手動で計算したい場合は、The Meaning of Linkfiles In Forensic Examinations のページ14が参考になります。

RecentとLNK

 FileTypesMan を利用すれば、Recent フォルダに LNK を作成しないように設定できます。

RecentフォルダにLNKファイルを作成しないように設定した場合でも、ファイルが参照されればObjectIDが作成されます。

f:id:hideakii:20170923092827p:plain

EXEファイルは設定に関わらず、デフォルトで参照(実行)しても ObjectID は付与されないようです。

f:id:hideakii:20170923123251p:plain

MTFレコード更新日時 (MFT Modified)

ObjectIDが無い時点でのタイムスタンプ情報

Name: Penguin.jpg

$STANDARD_INFORMATION Attribute Values:
Flags: Archive
Owner ID: 0
Security ID: 264 ()
Created: 2017-09-23 11:48:40.038303700 (UTC)
File Modified: 2017-09-17 22:38:46.051882200 (UTC)
MFT Modified: 2017-09-22 22:30:36.512728100 (UTC)
Accessed: 2017-09-23 11:48:40.038303700 (UTC)

ObjectIDを設定

f:id:hideakii:20170923210023p:plain

ObjectID設定後のタイムスタンプ

$STANDARD_INFORMATION Attribute Values:
Flags: Archive
Owner ID: 0
Security ID: 264 ()
Created: 2017-09-23 11:48:40.038303700 (UTC)
File Modified: 2017-09-17 22:38:46.051882200 (UTC)
MFT Modified: 2017-09-23 11:53:49.039747800 (UTC)
Accessed: 2017-09-23 11:48:40.038303700 (UTC)

 

参考URL:

http://computerforensics.parsonage.co.uk/downloads/TheMeaningofLIFE.pdf

 

f:id:hideakii:20170923093522j:plain