File System Forensics

[File System] NTFS (29) - 인덱스 엔트리 구조체

도깬리 2023. 8. 22. 06:13

안녕하세요. 도깬리 포렌식스 입니다.

오늘은  NTFS의 인덱스 엔트리 구조체에 대해 알아보겠습니다. 모두 화이팅 하세요!!!

 

인덱스 노드 헤더의 데이터 구조체

 

바이트 범위 설명
0~3 인덱스 노드에서 첫번째 인덱스 엔트리가 있는 위치 값 (노드 헤더의 시작에서 상대적)
4~7 사용중인 인덱스 엔트리의 총 크기 (인덱스 노드 헤더의 크기를 포함한 값임)
8~11 할당된 인덱스 엔트리의 총 크기 (인덱스 노드 헤더의 크기를 포함한 값임)
12~15 플래그 (0x00 : 자식노드가 없음, 0x01 : 자식노드가 있음)

 

$INDEX_ROOT 속성의 인덱스 노드 헤더

 

 

$INDEX_ALLOCATION 속성의 인덱스 노드 헤더

 

 

일반 인덱스 엔트리 데이터 구조체

 

바이트 범위 설명
0~7 정의되지 않음
8~9 엔트리 길이
10~11 내용 길이
12~15 플래그 (0x01 : 자식노드 존재, 0x02 : 목록에서 마지막 엔트리)
16+ 내용
엔트리 마지막 8바이트 $INDEX_ALLOCATION에 있는 자식 노드의 VCN

 

디렉토리 인덱스 엔트리의 데이터 구조체

 

바이트 범위 설명
0~7 파일 이름의 MFT 파일 참조 (해당 파일 또는 디렉토리의 MFT 주소 값)
8~9 엔트리 길이
10~11 $FILE_NAME 속성의 길이
12~15 플래그 (0x : 자식노드 존재, 0x02 : 목록에서 마지막 엔트리)
16+ $FILE_NAME 속성 (길이가 0 이상인 경우)
엔트리의 마지막 8바이트
$INDEX_ALLOCATION에 있는 자식 노드의 VCN

 

 

 

 

 

 

감사합니다. 오늘도 즐거운 하루 되세요.

"좋아요"와 "구독하기"는 힘이 됩니다.

참고문서 : File System Forensic Analysis (Brian Carrier)