728x90
반응형
NTFS 파일 시스템 Non-Resident $DATA 속성
Non-Resident 속성의 경우 해당 Index Entry에서 0x80($DATA) 속성을 찾아 분석하여 수동으로 해당 데이터의 실제 위치를 알아낼 수 있습니다.
위 그림은 $DATA 속성의 구조입니다.
의미 | 내용 |
Attribute Type ID | 속성 타입 식별 값을 나타냄. $DATA는 [80 00 00 00] (0x10, 0x30, 0x80, 0xA0 등 하위 MFT Entry) |
Length of Attribute | 속성 헤더를 포함한 속성 전체의 길이를 나타냄 |
N-R Flag | Non-Resident 속성 여부를 나타냄 (0x01은 N-R 속성) |
Flags | 속성 상태를 나타냄 (0x0001은 압축, 0x0002는 숨김, 0x0020은 압축) |
Real Size of Attribute Content | 실제 파일의 크기 |
Initialized Size of Attribute Content | 실제 파일의 초기 크기 |
Attribute Name | 실제 데이터 위치 정보를 담고 있음 |
위는 실습 파일의 Index Entry 영역에서 $DATA 영역입니다.
해당 파일의 데이터 주소는 마지막 Attribute Name 영역을 분석하여 알아낼 수 있습니다.
Attribute Name은 클러스터 런이라는 구조체를 따르며 클러스터 런은 하나의 Index Entry(1024byte)에 파일 내용을 모두 담지 못하여 새로 클러스터를 할당받아 파일의 내용을 저장하는 방법입니다.
즉, 연속적으로 저장되어야만 하나의 파일으로써 의미가 있으므로 연속적인 클러스터 공간을 새로 할당받는 것입니다.
처음 1바이트는 새로 할당받은 클러스터의 위치고, 두 번째 1바이트는 할당받은 클러스터의 크기입니다.
예를 들어 0x420302854F111300 이라는 주소가 할당되었다고 치면,
4바이트를 사용하는 주소와 2바이트를 사용하는 클러스터 주소가 할당됩니다.
즉 0x0203 크기의 클러스터를 사용하며, 파일의 주소는 0x13114F85가 됩니다.
728x90
반응형
'디지털 포렌식 (Forensic) > 디스크 포렌식 (Disk)' 카테고리의 다른 글
[디스크 포렌식] GPT 파티션 분석 (1) | 2020.12.14 |
---|---|
[디스크 포렌식] NTFS 파일 시스템 Non-Resident 파일 시간 정보 알아보기 (0) | 2020.12.07 |
[디스크 포렌식] NTFS 파일 시스템의 Resident 속성, Non-Resident 속성 (0) | 2020.12.04 |
[디스크 포렌식] NTFS 파일 시스템 (0) | 2020.12.04 |
[디스크 포렌식] 긴 파일 이름을 가진 FAT32 파일시스템 (0) | 2020.12.04 |