정보보안공부
디지털 포렌식_NTFS_MFT 분석_기본개념정리 본문
@@ Base MFT Entry & Non-Base MFT Entry
** Base MFT Entry : 파일의 정보를 하나의 MFT Entry에 담지 못할 경우 여러개의 MFT Entry를 사용하게 되는데 이때 처음 MFT Entry
** non-Base MFT Entry : Base MFT Entry 이외의 MFT Entry
-> 32번 MFT Entry 경우 : File Reference to Base MFT Entry 가 22 00 00 00 00 00 xx xx ( xx xx 는 34번 MFT Entry의 Sequence Value 값을 사용 )
-> 36번 MFT Entry 경우 : File Reference to Base MFT Entry 가 22 00 00 00 00 00 xx xx ( xx xx 는 34번 MFT Entry의 Sequence Value 값을 사용 )
-> 34번 MFT Entry 경우 : File Reference to Base MFT Entry 가 00 00 00 00 00 00 00 00 으로 사용한다.
@@ File Reference Address
-> MFT Entry Address : 모든 MFT Entry는 48bit의 고유 주소를 가지고 있음
-> File Reference Address : MFT Entry Header에 있는 Sequence Value와 조합하여 사용된다.
=> 만약 리틀엔디언으로 보여지는 File Reference Address 값이 05 00 00 00 00 00 03 00 이라면
=> 05 00 00 00 00 00 은 MFT Entry Address로 5
=> 03 00 은 MFT Entry Header에 있는 Sequence Value값으로 3을 의미한다.
@@ Resident Attribute & Non-Resident Attribute
-> Offset Runlist 값은 Attr Type ID 맨 앞에서부터 Runlist 값만큼 Bytes단위로 이동하면 그위치가 Cluster Run 구조체가 있는 위치이다.
-> Starting VCN of runlist와 Ending VCN of Runlist 를 이용해 몇개의 클러스터를 사용하는지 확인할 수 있다.
-> Starting VCN of runlist가 0 이고 Ending VCN of Runlist가 3이라면 4개의 클러스터를 사용한다고 파악한다.
-> Length 값과 Offset 값은 클러스터 단위이다.
-> 헤더부분에서 0011 0010 은 32이므로 2가 Run Length , 3이 Run Offset 부분이된다.
-> Offset값을 구하면 클러스터 단위이므로 x 8을 통해 섹터단위로 변경 -> Offset 값에 x 8을 하고 BR의 위치를 더해줘야한다.@@ B-Tree 구조
- NTFS는 인덱스를 관리하는 방법으로 B-Tree를 사용한다.
@@ Index_Root_Header
Type of attribute in Index : 인덱스 엔트리가 담고있는 속성 식별 값
Collation Sorting Rule : 인덱스 엔트리가 담고있는 형식 ( 00 01 00 00 이면 오름차순을 의미 )
Size of each Index Record in Bytes : $INDEX_ALLOCATION 속성이 가지는 인덱스 레코드의 바이트 크기
Size of each Index Record in Cluster : $INDEX_ALLOCATION 속성이 가지는 인덱스 레코드의 클러스터 크기
@@ Index_Node_Header
Offset to Start of Index Entry List : 인덱스 엔트리 목록 시작 위치
Offset to End of Used Portion of Index Entry List : 인덱스 엔트리의 실제 크기
Offset to End of Allocated Index Entry List Buffer : 인덱스 엔트리의 할당 크기
Flags : 0x00은 인덱스 노드의 자식노드가 없음, 0x01은 인덱스 노드의 자식 노드가 있음
@@ Index_Entry
File Reference Address for filename : 해당 파일 및 디렉터리의 파일 참조 주소
Length of this entry : 해당 인덱스 엔트리의 총 크기
Length of content : 해당 인덱스 엔트리가 담고 있는 $FILE_NAME 속성의 크기
Flags : 0x01은 자식노드가 존재한다는 의미, 0x02는 노드의 마지막 엔트리를 의미
'디지털 포렌식' 카테고리의 다른 글
디지털 포렌식_NTFS_MFT 0번 분석 (0) | 2019.01.09 |
---|---|
디지털 포렌식_NTFS_MFT 속성 분석 (0) | 2019.01.09 |
디지털 포렌식_NTFS_BR분석, MFT 헤더 분석 (0) | 2019.01.09 |