이번에는 저번 외전편에 이어서 조금더 자세하게 알아보도록 하겠습니다.
파티션
저장메체의 저장공간을 논리적으로 분할한것으로
시스템은 부팅과정에서 파티션의 크기, 위치, 설치된 운영체제등을 파악하여 그에 맞게
구동을 해야 하는데, 그러한 정보를 담고 있는 부분이 Boot Record(BR) 영역이라고 합니다.
우리가 자주 사용하는 Windows는 파티션의 첫번째 섹터에 위치를 하고 있습니디.
여러개의 파티션을 나누어서 포멧을 하면 다중 파티션을 만들수도 있고
파티션을 하나만 사용을해서 단일 파티션을 만들 수도 있습니다.
하지만 대부분 파티션 별로 주로 포멧도 하고 하는경우가 많아서
파티션에 따라서 파티션을 관리하는 MBR 영역이 있습니다.
Master Boot Record
분할된 파티션에서의 각 BR을 관리하는 영역으로
MBR은 저장메체의 첫번째 섹터 (LBA 0)에 위치하는 512byte 크기의 영역 입니다.
정리를 하자면 파티션에 관한 정보를 담고있는 BR영역을 총괄하는 영역이 MBR영역 입니다.
예를 들어 아래의 다중 파티션 같은경우 파티션의 총 갯수에 대한 정보는 MBR이 가지고
각 파티션마다 C:\ / D:\ 에 대한 정보들은 각각의 BR영역이 가지게 됩니다.
Boot code
컴퓨터가 부팅이 될때 수행되는 코드로 파티션 테이블에서 부팅 가능한 파티션을 찾아서
해당 파티션의 부트 섹터를 호출하는 역할을 수행합니다.
아래의 그림을 보면 현재 MBR은 4개의 파티션 영역을 관리할 수 있다는 이야기가 됩니다.
Partition Table Area - 파티션 테이블 영역
16byte씩 총4개의 파티션 정보가 저장 됩니다.
첫번째 값인 부트 플래그(Boot Flag)는 해당 파타션이 부팅가능한 파티션인지를 나타내면서
부팅가능한 파티션일 경우 해당 부트 플래그의 값은 0x80 입니다.
MBR의 부트코드는 파티션 테이블을 검색하여 부트 플래그 값이 0x80의 값을 가지고 있는
파티션의 부트섹터 위치로 점프하는 역할을 수행하게 됩니다.
그래야 부팅이 되겠죠??
그래서 포렌식 수사 시, 파티션 영역 및 디스크의 전 영역을 조사하거나
필요에 따라서 MBR의 영역을 직접해석하는 경우도 있습니다.
(그러니까 나쁜짓 하면 안되요)
여기까지 MBR 영역을 한번 알아보았는데요
원래는 MBR영역에서 파티션 정보를 표현하는 공간은 총 64byte로 총 4개까지만
파티션을 분할 할 수 있지만 실제로 해보면 더 많은 공간의 파티션을 분할 할 수 있습니다.
바로 확장 파티션이라는 개념이 등장한 것인데요,
다음 포스팅에서는 이것을 한번 알아보도록 하겠습니다.
'Theory > Forensic' 카테고리의 다른 글
그외 기타 등등 (0) | 2021.12.04 |
---|---|
찬희의 디포 이야기 - 파일시스템(확장 파티션) (0) | 2021.10.02 |
외전 - 디포 스토리 (Partition & Volume) (0) | 2021.10.02 |
찬희의 디포 이야기 - 파일시스템(슬랙 영역) (0) | 2021.10.02 |
찬희의 디포이야기 - 파일시스템 (클러스터) (0) | 2021.10.02 |