SlideShare a Scribd company logo
1 of 20
Download to read offline
How to NTFS Works? brief
Blog: ebong2.org
NTFS Architecture
MBR – Master Boot Record
• GPT와 MBR이 존재
• 디스크의 가장 첫번째 섹터(512KB)에 위치한 영역.
• 부팅 과정 중 Power on Self-Test를 거친 후 호출 됨.
• 최대 2TB의 디스크까지 커버 가능
• 파티션 테이블에 최대 4개의 주 파티션 혹은
3개의 주 파티션과 1개의 확장 파티션으로 구성 가능.
• 마지막 2바이트는 무조건 0XAA55 라는 서명이 차지.
MBR – Partition Table
MBR – Partition Table
오프셋 필드 길이 설명
0x00 1 Byte 파티션 상태
(0x80 = system partition,
0x00 = do not use for booting)
0x01 3 Byte Starting CHS address(VBR)
0x04 1 Byte Partiton type(NTFS = 0x07)
0x05 3 Byte Ending CHS address
0x08 4 Byte Starting LBA address(VBR)
0x0C 4 Byte Total Sectors
MBR – Master Boot Record
Organization of an NTFS Volume
NTFS Volume
• Sector(512Byte) – 디스크에 ‘데이터’를 저장하는 가장 작은 단위. 클러스터를 이룸.
• Cluster(4KB) – 디스크에 ‘파일’을 저장하는 가장 작은 단위 (2GB 이상의 디스크는 4KB)
• LCN(logical cluster Numbers) – 파티션의 처음 클러스터부터 순서대로 메겨지는 번호
• VCN(Virtual Cluster Numbers – 파일을 이루는 첫번째 클러스터부터 순서대로 부여된 번호
• MFT(Master File Table) – 파일의 속성같이 파일에 관한 정보를 담은 레코드.
VBR – NTFS boot Sector
VBR – NTFS boot Sector
• 부트코드 OEM ID(“NTFS”), BPB(Bios Parameter Block)가 존재.
• MFT(Master File Table) – 파일의 속성같이 파일에 관한 정보를 담은 레코드.
• BPB에는 MFT의 LCN, sector의 크기, cluster의 크기, 총 섹터의 수 등
파티션에 대한 정보가 존재.
• 클러스터 사이즈에 따라 크기가 정해짐(4KB의 경우 VBR = 8 sector)
• 첫 섹터 외 나머지 섹터는 부트로더(NTLDR)의 빠른 로딩을 위해
위치 등의 추가 정보가 위치하며, $FILE_NAME Attribute를
트리 구조로 인덱싱하여 빠르게 NTLDR의 위치를 찾을 수 있다.
MFT – Master File Table
MFT – Master File Table
• 파일 레코드로 이루어진 배열로, 각각의 파일 레코드는 1KB로 고정되어 있음.
각 파일과 폴더 하나에 레코드가 대응.
• MFT안에 파일을 저장할때 사용하는 구조, 해당 블록의 사용 상태를 나타내는 비트맵 등
NTFS metadata를 저장하고 있음.
• MFT 자신도 $MFT 파일로 MFT entry안에 존재.
• $LogFile에는 NTFS structure에 영향을 끼치는 모든 명령을 저장.
• $Bitmap은 각 클러스터의 사용여부를 나타내고 있음.
• $boot의 경우 부팅 가능한 볼륨일 경우 부트스트랩 코드가 저장됨. 아닐 경우 에러메시지 출력.
• MFT만 사용하는 목적의 ‘MFT zone’ 을 디스크 일정 비율로 할당. 용량이 부족할 시 무시하고 사용.
NTFS File Record Attributes
NTFS File Record Attributes
NTFS File Record Attributes
NTFS File Record Attributes
• NTFS 관점에서 파일은 file attribute의 집합체.
• $STANDARD_INFORMATION – 파일의 최근 생성, 접근, 수정시간 등 일반적인 정보
• $OBJECT_ID – 파일과 디렉터리의 128bit unique-id
• $DATA – 파일 내용
• $INDEX_ROOT – 루트 노트 정보
• $INDEX_ALLOCATION – 하위 노드 정보
• $DATA의 크기가 각 엔트리의 크기인 1KB를 넘을 시 각 속성의 기본 속성인 Non-Resident 속성의 플래그
• 1이 되고, Cluster run을 만들어 클러스터의 시작 오프셋, 길이를 기록.
다른 엔트리에 데이터를 저장하게 됨.
MFT – Master File Table
MFT – Master File Table
LCN to VCN MAPPING
MFT – Master File Table
출처
• 파일시스템 4_3 NTFS 속성 - http://blog.naver.com/bitnang/70184584840
• How NTFS Works: Local File Systems –
• https://technet.microsoft.com/en-us/library/cc781134(v=ws.10).aspx
• MBR (Master Boot Record) | FORENSIC-PROOF - http://forensic-proof.com/archives/435
• MBR 이야기 - MBR 과 EBR 의 파티션 테이블 엔트리 정보의 해석
• :: 캐플 블로그 - http://cappleblog.co.kr/590
• Difference FileID(File Reference Number) and object id in mft –
• http://www.osronline.com/showThread.cfm?link=1400
• Windows Internals 6th – Mark E. Russinovich and David A.Solomon with Alex lonescu

More Related Content

Similar to How ntfs works br

포렌식 세미나.pptx
포렌식 세미나.pptx포렌식 세미나.pptx
포렌식 세미나.pptxdalonn
 
백업을 위한 USB운영체제 완료세미나
백업을 위한 USB운영체제 완료세미나백업을 위한 USB운영체제 완료세미나
백업을 위한 USB운영체제 완료세미나Daniel Shin
 
(130525) #fitalk ntfs log tracker (korean)
(130525) #fitalk   ntfs log tracker (korean)(130525) #fitalk   ntfs log tracker (korean)
(130525) #fitalk ntfs log tracker (korean)INSIGHT FORENSIC
 
(120513) #fitalk a dig into the $log file
(120513) #fitalk   a dig into the $log file(120513) #fitalk   a dig into the $log file
(120513) #fitalk a dig into the $log fileINSIGHT FORENSIC
 
(120513) #fitalk a dig into the $log file
(120513) #fitalk   a dig into the $log file(120513) #fitalk   a dig into the $log file
(120513) #fitalk a dig into the $log fileINSIGHT FORENSIC
 
(120804) #fitalk advanced mac os forensics (hfs+ filesystem)
(120804) #fitalk   advanced mac os forensics (hfs+ filesystem)(120804) #fitalk   advanced mac os forensics (hfs+ filesystem)
(120804) #fitalk advanced mac os forensics (hfs+ filesystem)INSIGHT FORENSIC
 
(120804) #fitalk advanced mac os forensics (hfs+ filesystem)
(120804) #fitalk   advanced mac os forensics (hfs+ filesystem)(120804) #fitalk   advanced mac os forensics (hfs+ filesystem)
(120804) #fitalk advanced mac os forensics (hfs+ filesystem)INSIGHT FORENSIC
 

Similar to How ntfs works br (10)

포렌식 세미나.pptx
포렌식 세미나.pptx포렌식 세미나.pptx
포렌식 세미나.pptx
 
백업을 위한 USB운영체제 완료세미나
백업을 위한 USB운영체제 완료세미나백업을 위한 USB운영체제 완료세미나
백업을 위한 USB운영체제 완료세미나
 
저장장치
저장장치저장장치
저장장치
 
(130525) #fitalk ntfs log tracker (korean)
(130525) #fitalk   ntfs log tracker (korean)(130525) #fitalk   ntfs log tracker (korean)
(130525) #fitalk ntfs log tracker (korean)
 
System+os study 6
System+os study 6System+os study 6
System+os study 6
 
(120513) #fitalk a dig into the $log file
(120513) #fitalk   a dig into the $log file(120513) #fitalk   a dig into the $log file
(120513) #fitalk a dig into the $log file
 
(120513) #fitalk a dig into the $log file
(120513) #fitalk   a dig into the $log file(120513) #fitalk   a dig into the $log file
(120513) #fitalk a dig into the $log file
 
(120804) #fitalk advanced mac os forensics (hfs+ filesystem)
(120804) #fitalk   advanced mac os forensics (hfs+ filesystem)(120804) #fitalk   advanced mac os forensics (hfs+ filesystem)
(120804) #fitalk advanced mac os forensics (hfs+ filesystem)
 
(120804) #fitalk advanced mac os forensics (hfs+ filesystem)
(120804) #fitalk   advanced mac os forensics (hfs+ filesystem)(120804) #fitalk   advanced mac os forensics (hfs+ filesystem)
(120804) #fitalk advanced mac os forensics (hfs+ filesystem)
 
AIX - LVM 이란?
AIX - LVM 이란?AIX - LVM 이란?
AIX - LVM 이란?
 

How ntfs works br

  • 1. How to NTFS Works? brief Blog: ebong2.org
  • 3. MBR – Master Boot Record • GPT와 MBR이 존재 • 디스크의 가장 첫번째 섹터(512KB)에 위치한 영역. • 부팅 과정 중 Power on Self-Test를 거친 후 호출 됨. • 최대 2TB의 디스크까지 커버 가능 • 파티션 테이블에 최대 4개의 주 파티션 혹은 3개의 주 파티션과 1개의 확장 파티션으로 구성 가능. • 마지막 2바이트는 무조건 0XAA55 라는 서명이 차지.
  • 5. MBR – Partition Table 오프셋 필드 길이 설명 0x00 1 Byte 파티션 상태 (0x80 = system partition, 0x00 = do not use for booting) 0x01 3 Byte Starting CHS address(VBR) 0x04 1 Byte Partiton type(NTFS = 0x07) 0x05 3 Byte Ending CHS address 0x08 4 Byte Starting LBA address(VBR) 0x0C 4 Byte Total Sectors
  • 6. MBR – Master Boot Record
  • 7. Organization of an NTFS Volume
  • 8. NTFS Volume • Sector(512Byte) – 디스크에 ‘데이터’를 저장하는 가장 작은 단위. 클러스터를 이룸. • Cluster(4KB) – 디스크에 ‘파일’을 저장하는 가장 작은 단위 (2GB 이상의 디스크는 4KB) • LCN(logical cluster Numbers) – 파티션의 처음 클러스터부터 순서대로 메겨지는 번호 • VCN(Virtual Cluster Numbers – 파일을 이루는 첫번째 클러스터부터 순서대로 부여된 번호 • MFT(Master File Table) – 파일의 속성같이 파일에 관한 정보를 담은 레코드.
  • 9. VBR – NTFS boot Sector
  • 10. VBR – NTFS boot Sector • 부트코드 OEM ID(“NTFS”), BPB(Bios Parameter Block)가 존재. • MFT(Master File Table) – 파일의 속성같이 파일에 관한 정보를 담은 레코드. • BPB에는 MFT의 LCN, sector의 크기, cluster의 크기, 총 섹터의 수 등 파티션에 대한 정보가 존재. • 클러스터 사이즈에 따라 크기가 정해짐(4KB의 경우 VBR = 8 sector) • 첫 섹터 외 나머지 섹터는 부트로더(NTLDR)의 빠른 로딩을 위해 위치 등의 추가 정보가 위치하며, $FILE_NAME Attribute를 트리 구조로 인덱싱하여 빠르게 NTLDR의 위치를 찾을 수 있다.
  • 11. MFT – Master File Table
  • 12. MFT – Master File Table • 파일 레코드로 이루어진 배열로, 각각의 파일 레코드는 1KB로 고정되어 있음. 각 파일과 폴더 하나에 레코드가 대응. • MFT안에 파일을 저장할때 사용하는 구조, 해당 블록의 사용 상태를 나타내는 비트맵 등 NTFS metadata를 저장하고 있음. • MFT 자신도 $MFT 파일로 MFT entry안에 존재. • $LogFile에는 NTFS structure에 영향을 끼치는 모든 명령을 저장. • $Bitmap은 각 클러스터의 사용여부를 나타내고 있음. • $boot의 경우 부팅 가능한 볼륨일 경우 부트스트랩 코드가 저장됨. 아닐 경우 에러메시지 출력. • MFT만 사용하는 목적의 ‘MFT zone’ 을 디스크 일정 비율로 할당. 용량이 부족할 시 무시하고 사용.
  • 13. NTFS File Record Attributes
  • 14. NTFS File Record Attributes
  • 15. NTFS File Record Attributes
  • 16. NTFS File Record Attributes • NTFS 관점에서 파일은 file attribute의 집합체. • $STANDARD_INFORMATION – 파일의 최근 생성, 접근, 수정시간 등 일반적인 정보 • $OBJECT_ID – 파일과 디렉터리의 128bit unique-id • $DATA – 파일 내용 • $INDEX_ROOT – 루트 노트 정보 • $INDEX_ALLOCATION – 하위 노드 정보 • $DATA의 크기가 각 엔트리의 크기인 1KB를 넘을 시 각 속성의 기본 속성인 Non-Resident 속성의 플래그 • 1이 되고, Cluster run을 만들어 클러스터의 시작 오프셋, 길이를 기록. 다른 엔트리에 데이터를 저장하게 됨.
  • 17. MFT – Master File Table
  • 18. MFT – Master File Table LCN to VCN MAPPING
  • 19. MFT – Master File Table
  • 20. 출처 • 파일시스템 4_3 NTFS 속성 - http://blog.naver.com/bitnang/70184584840 • How NTFS Works: Local File Systems – • https://technet.microsoft.com/en-us/library/cc781134(v=ws.10).aspx • MBR (Master Boot Record) | FORENSIC-PROOF - http://forensic-proof.com/archives/435 • MBR 이야기 - MBR 과 EBR 의 파티션 테이블 엔트리 정보의 해석 • :: 캐플 블로그 - http://cappleblog.co.kr/590 • Difference FileID(File Reference Number) and object id in mft – • http://www.osronline.com/showThread.cfm?link=1400 • Windows Internals 6th – Mark E. Russinovich and David A.Solomon with Alex lonescu