본문 바로가기

[+] Forensic

File System - NTFS (14)

이번 글에서는 표준 속성 중 MFT 엔트리에 가장 기본적으로 할당되는 $STANDARD_INFORMATION 속성과 $FILE_NAME 속성에 대해서 알아 볼 것이다.

[$STANDARD_INFORMATION 속성]
해당 속성은 항상 거주 속성으로 타입 식별자는 16이다. 또 모든 파일과 디렉토리에 존재하며, 파일이나 디렉토리를 위한 기본 메타데이터 파일들을 포함하고 있다. 아래는 해당 속성의 오프셋 별로 의미하는 것을 분석하여 두었다.

[그림 1 - $STANDARD_INFORMATION 속성 오프셋]

 - 4개의 시간 값 : 해당 시간값들이 우리가 흔히 속성 창에서 볼 수 있는 시간 값이며, 1601년 1월 1일 UTC부터 100나노초 단위로 계산되어 저장된다.

 - 플래그 : 해당 파일에 적용 될 수 있는 속성들 중 어떠한 속성을 나타내는 값이 저장되는 오프셋이다. 플래그 리스트는 아래와 같다.


[그림 2 - 플래그 리스트]

 - 보안 ID : 이 값은 $Sparse 파일의 인덱스 값으로 보안 ID 값이 아니다.

 * 참고 : 소유자 ID, 보안 ID, 할당량, 업데이트 순서번호는 버전 3.0 이상부터 존재한다. 


[$FILE_NAME 속성]
해당 속성 타입 식별자는 48이며, 파일이름과 부모 디렉토리 정보를 저장하기 위해 MFT 엔트리에 위치하고 있고 디렉토리 인덱스에서 사용된다. MFT 엔트리에서 사용 될 때에는 포함되어 있는 정보가 필수적이지 않지만, 디렉토리 인덱스에서 사용 될 때에는 그렇지 않다. 해당 속성은 위에서 설명한 $STANDARD_INFORMATION 속성과 함께 필수적인 속성으로 항상 거주 속성이다.

 * 참고 : 만약 하나의 파일에 여러 MFT 엔트리가 할당 될 경우 다른 비기준 엔트리의 속성을 포함하는 $ATTRIBUTE_LIST 속성이 $STANDARD_INFORMATION 속성과 $FILE_NAME 속성 사이에 위치한다.


아래는 해당 속성의 오프셋이다.

[그림 3 - $FILE_NAME 속성 오프셋]

 - 부모 디렉토리 파일 참조 : 이 값의 상위 2바이트는 부모 디렉토리의 순서번호이며, 하위 6바이트는 부모 디렉토리의 MFT 엔트리 번호이다.

 - 플래그 : 해당 오프셋의 값은 $STANDARD_INFORMATION의 플래그 리스트 값과 동일하다(그림 2 참조)

 - 네임 스페이스 : 이름 필드의 값이 어떤 형식인지 나타내는 값이 해당 오프셋에 들어 갈 수 있는 값이 몇가지 있는데 그 값은 아래와 같다.


 [그림 4 - 네임 스페이스 리스트]

 - 이름 : 이름 오프셋의 길이는 파일명에 따라 달라진다. 정확한 길이를 알고자 하면 이름 길이 오프셋을 참고하면 된다. 


'[+] Forensic' 카테고리의 다른 글

File System - NTFS (16)  (0) 2012.02.16
File System - NTFS (15)  (0) 2012.02.16
File System - NTFS (14)  (0) 2012.02.15
File System - NTFS (13)  (0) 2012.02.15
File System - NTFS (12)  (0) 2012.02.14