NTFS(New Technology File System) 5일차 $STANDARD_INFORMATION

2022. 4. 7. 16:42Forensic

$STANDARD_INFORMATION

범위(16진수) 설명
속성 헤더 (Attribute header)
0x00  0x07 생성 시간 (Creation time)
0x08  0x0F 수정 시간 (Modified time)
0x10  0x17 MFT 수정 시간 (MFT modified time)
0x18  0x1F 접근 시간 (Last accessed time)
0x20  0x23 속성 플래그 (Flags)
0x24  0x27 버전 최대값 (Maximum number of versions)
0x28  0x2B 버전 번호 (Version number)
0x2C  0x2F 클래스 ID (Class ID)
0x30  0x33 소유자 ID (version 3.0+)
0x34  0x37 보안 ID (version 3.0+)
0x38  0x3F Quota Charged (version 3.0+)
0x40  0x47 USN (Update Sequence Number) (version 3.0+)

생성 시간 : 파일이 생성된 시간

수정 시간 : $DATA나 $INDEX속성의 내용이 마지막으로 수정된 시간

MFT 수정 시간 : MFT 엔트리가 마지막으로 수정된 시간

접근 시간 : 파일 내용에 마지막으로 접근한 시간

 

 

다음은 파일의 속성을 표현하는 속성 플래그 값에 대한 정보이다.

플래그 값 설명
0x0001 읽기 전용 (Read Only)
0x0002 숨긴 파일 (Hidden)
0x0004 시스템 (System)
0x0020 아카이브 (Archive)
0x0040 장치 (Device)
0x0080 일반 (Normal)
0x0100 임시 (Temporary)
0x0200 Sparse 파일
0x0400 Reparse Point
0x0800 압축됨 (Compressed)
0x1000 오프라인 (Offline)
0x2000 빠른 검색을 위해 인덱스 되지 않은 내용
0x4000 암호화됨 (Encrypted)

버전 최대값 : 파일에서 최대로 허용하는 버전 값, 0일  경우 해당 기능이 비활성화

버전 번호 : 파일의 버전 번호, 버전 최대값이 0일 경우 이 값도 0

클래스 ID : 인덱스된 클래스 ID

소유자 ID : 파일 소유자의 ID 값으로 $Quota 파일에서 인덱스로 사용

보안 ID : $Secure 파일의 인덱스로 사용되고 파일 접근 제어 적용시 사용

Quota Charged : 사용자 할당량 중 해당 파일이 할당된 크기(보통 파일 크기와 동일)

USN : 파일의 USN 값으로 $UsnJrnl에서 인덱스로 사용

 

디지털 포렌식적으로 의미가 있는 부분은 시간 정보, 속성 플래그, 소유자 및 보안ID, USN정보 4가지가 있다.

다음 사진은 VMware에서 직접 구성하여 동작하는 Windows 7기반의 NTFS이다.

 

 

위 사진은 $STANDRD_INFORMATION 속성이다. 속성 타입이 0x00000010(16) 값을 가지고 있다. 첫 16바이트는 속성 헤더이다. 0x08의 위치를 보면 Resident 속성인 것을 알 수 있습니다. 따라서 속성 헤더는 24바이트를 사용하게 됩니다. 그 뒤 4개의 연속된 값이 나오는 것까지 확인 할 수 있습니다. 위 4개의 연속적인 값들은 시간 정보를 나타냅니다. 또 다른 확인 방법은 8바이트 시간 정보의 MSB 값은 항상 0x01값을 가지게 됩니다.

 

위 Hex값을 보고 각 속성 값을 확인해 보면

 

생성시간 : 0x01D80D637270A2C1

수정시간 : 0x01D80D637270A2C1

MFT 수정시간 : 0x01D80D637270A2C1

접근 시간 : 0x01D80D637270A2C1

속성 플래그 : 0x00000006

버전 최대 값 : 0x00000000 (사용하지 않는다)

버전 번호 : 0x00000000 (사용하지 않는다)

클래스 ID : 0x00000000 (사용하지 않는다)

소유자 ID : 0x00000000 (사용하지 않는다)

보안 ID : 0x00000100

Quota Charged : 0x00000000 (사용하지 않는다)

USN : 0x00000000 00000000

 

$STANDARD_INFORMATION 속성에서는 시간 속성에 해당되는 4개의 정보가 중요하다. 시간 정보나 속성 플래그 정보는 $FILE_NAME 속성과 중복되는 부분이 있다.