본문 바로가기
보안/포렌식

NTFS, FAT32, EXT3/4

by msm1029 2020. 11. 27.
반응형

NTFS(NT File System) : 마이크로소프트에 의해 개발된 파일 시스템으로 Windows NT 3.1과 함께 출시되었다.
파티션 식별자는 MBR에서 0x07, GPT에서는 EBDEBD0A0A2-B9E5-4433-87C0-68B6B72699C7이다.

 

NTFS는 파일 시스템을 인덱스하기 위해 B-tree를 사용하고 부트 섹터(VBR)는 다음과 같다.

출처: NTFS - Wikipedia

포맷은 초기 FAT 시스템과 비슷하지만 필드들이 다른 위치에 있다.

sectors per track, number of heads, hidden sectors와 같은 필드들은 더미 값을 포함할 수 있다.

운영체제는 우선 0x30에 있는 8바이트를 보고 $MFT의 클러스트 개수를 찾는다. 그 다음 클러스터 당 섹터의 수를

곱한다. 이 값이 $MFT의 섹터 오프셋(LBA)이다.

 

MTF(Master File Table)이란 NTFS에서 모든 파일, 디렉토리와 같은 메타데이터를 저장하는 곳이다.

NTFS의 메타 파일의 목록은 다음과 같다.

출처: NTFS - Wikipedia

 

 

FAT32 : File Allocation Table은 PC용으로 개발되었고 본래 목적은 플로피 디스크에서의 사용이었지만 주로

MS-DOS나 removable drives에 사용된다.

파티션 식별자는 MBR/EBR에서 0x0B, 0x0C(with LBA)이고 GPT에서 EBD0A0A2-B9E5-4433-87C0-68B6B72699C7이다.

아래는 FAT의 Layout이다.

출처: Design of the FAT file system - Wikipedia

Reserved sectors는 부트 섹터(VBR)이고 BIOS Parameter Block(BPB)를 포함한다. BPB는 기본 파일 시스템 정보를 포함하는데 특히 정보의 타입이나 다른 섹션의 위치의 포인터, 운영체제의 부트 로더 코드를 포함한다. 

FAT Region은 중복 체크 또는 (거의 사용되지 않지만)디스크 리페어 유틸리티를 위한 FAT의 두 사본을 포함한다.

Root Directory Region은 루트 디렉토리에 위치한 파일과 디렉토리에 관한 정보를 저장하는 디렉토리 테이블이다.

Data Region은 실제 파일과 디렉토리 데이터가 저장되는 곳이다. 파티션의 대부분을 차지한다.

 

EXT3 : Third extended filesystem이라고도 하며 리눅스 커널에서 주로 사용된다.

파티션 식별자는 MBR에서 0x83, GPT에서 EBD0A0A2-B9E5-4433-87C0-68B6B72699C7이다.

* EXT4의 파티션 식별자는 MBR에서 같고, GPT 윈도우 EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
GPT 리눅스 0FC63DAF-8483-4772-8E79-3D69D8477DE4 등 이다.

 

EXT3와 EXT4의 구조에 대한 내용은 추후에 업데이트 하겠다.

반응형

'보안 > 포렌식' 카테고리의 다른 글

Checkra1n 탈옥 방법 & USB 포맷 방법  (4) 2021.04.21