B1ueJay
NTFS 파일 시스템 - (2)MFT 본문
MFT(Master File Table)
- VBR 다음 위치하고 크기는 가변적이라서 필요시 데이터 영역에 추가 할당돼서 저장
- 파일, 디렉터리, 메타 데이터를 모두 파일 형태로 관리
- 각 파일의 이름, 시간, 위치, 크기 등의 정보를 저장
- MFT Entry의 집합으로 구성됨
→ 파일 시스템에 파일이나 디렉터리가 증가하면 MFT Entry도 마찬가지로 새로 생성된 파일이나 디렉터리만큼 늘어남 - 각 MFT Entry는 0번부터 시작하는 주소를 가짐
- 0 ~ 15번 MFT Entry는 시스템에 할당됨
→ 메타 데이터는 여기에 저장됨 - 일반 사용자 파일과 구별하기 위해 파일명이 '$'으로 시작됨
MFT Entry
저장된 모든 파일과 디렉터리 최소한 1개 이상의 MFT Entry에 자신의 정보를 저장하고 있으며 저장되는 정보의 양이
많으면 여러 개의 MFT Entry에 나누어 저장하기도 한다.
- 1개의 MFT Entry 크기는 1KB
- MFT Entry Header와 Attribute로 구성됨
- MFT Entry Header의 크기는 42 bytes
→ MFT Entry의 정보와 상태를 기록 - 1KB에서 Header 부분을 제외한 나머지는 Attribute에 저장됨
→ 파일이나 디렉터리의 정보를 저장
→ Attribute는 여러 개를 가질 수 있음
Attribute(속성)
- 저장된 파일과 디렉터리의 이름, 시간, 속성, 내용 정보를 모두 속성 형태로 저장
- Attribute에는 Header와 Content 부분으로 구성됨
- Attribute 간의 Header 구조는 같지만 Content 부분은 Attribute의 종류에 따라 다르게 구성됨
Resident & Non-Resident
MFT Entry의 크기는 한정적이기 때문에 Attribute 내용 크기에 따라 Resident와 Non-Resident Attribute로 다시 구분할 수
있다.
※ Resident 방식
Attribute의 내용이 크지 않아 MFT Entry 안에 속성 전체를 완전하게 저장할 수 있는 방식
※ Non-Resident 방식
Attribute의 내용이 너무 커서 MFT Entry 안에 전부 다 기록할 수 없을 때 사용하는 방식
MFT Entry 안에 Attribute Header만 존재하고 Content는 별도의 클러스터를 할당받아 저장함
→ 실제 Content 클러스터 위치 정보만 저장
Cluster Runs
Cluster Runs이라는 데이터 구조를 통해 Cluster Runs 구조체가 실제 Attribute Content이 저장된 클러스터 위치로 연결해준다.
- Cluster Runs 구조는 Attribute Content이 저장된 클러스터의 시작 위치와 길이가 저장됨
LCN & VCN
NTFS 파일 시스템에는 LCN과 VCN이라는 주소 할당 방식을 사용한다.
※ LCN(Logical Cluster Number)
볼륨의 첫 번째 클러스터부터 순차적으로 저장하는 주소
→ 할당된 주소는 고유하다
※ VCN(Virtual Cluster Number)
파일의 첫 번째 클러스터부터 순차적으로 저장하는 주소
→ 파일 내적 주소가 고유
'Digital Forensic > File System' 카테고리의 다른 글
NTFS 파일 시스템 - (3)데이터 영역 (0) | 2019.11.19 |
---|---|
NTFS 파일 시스템 - (1)VBR (0) | 2019.11.07 |
FAT 파일 시스템 - (3)데이터 영역 (0) | 2019.11.04 |
FAT 파일 시스템 - (2)FAT 영역 (0) | 2019.11.02 |
FAT 파일 시스템 - (1)예약 영역 (0) | 2019.11.01 |