[forensics] 다중 파티션 구조 실습 - FTK / HxD

2025. 1. 21. 22:56STUDY/forensics

320x100

다중 파티션 구조 실습

 

이번 실습은 앞서 진행했던 단일 파티션이 아닌 다중 파티션입니다.

 

Partition Table에는 부팅에 필요한 정보가 있는 파티션으로 점프시켜 주기 위한 정보를 가지고 있다.
총 4개의 파티션 정보를 저장할 수 있고,
각각의 파티션 정보는 16byte로 이뤄져 있다.

 

Partition Table 구조는 아래의 표와 같습니다.

범위 (byte range) 설명
10진수 16진수
0 - 445 0x0000 - 0x01BD Boot code
446 - 461 0x01BE - 0x01CD Partition Table entry #1
462 - 477 0x01CE - 0x01DD Partition Table entry #2
478 - 493 0x01DE - 0x01ED Partition Table entry #3
494 - 503 0x01EE - 0x01FD Partition Table entry #4
510 - 511 0x01FE - 0x01FF Signature (0x55AA)

 

 

 

실습 파일을 FTK Imager 도구를 사용해 확인합니다.

해당 파일은 총 5개의 파티션을 가지고 있는 것을 알 수 있습니다.

FTK Imager 도구를 사용해 확인한 실습 파일

 

 

 

HxD 에디터 도구로 확인하면 4개의 파티션이 있습니다.

 

노란색 파티션은 4번째 파티션이며,

File System Type을 알려주는 곳은 0x05 값을 가집니다.

File System Type의 0x05 값은 확장 파티션을 나타내는 플래그 값이다.

 

즉, 파티션 시작 주소를 알리는 0x0004B080 값은 확장 파티션의 시작주소가 됩니다. 

 

80 B0 04 00을 10진수로 변환하면 307328입니다.

HxD 에디터로 파티션 구조 확인

 

 

 

sector 307328번으로 이동합니다.

 

해당 섹터의 Boot code영역은 모두 0으로 덮여 있고,

서브 MBR로 활용되기 때문에 Boot code 영역이 모두 0으로 덮여 쓰인다.

 

Partition Table 정보에는 2개의 파티션 정보가 들어가 있음을 확인할 수 있습니다.

확장 파티션의 Partition Table 정보 확인

 

 

 

해당 섹터의 Patition Table 정보를 분석합니다.

 

첫번째 파티션 타입은 0x07로 NTFS로 확인하였고,

두번째 파티션 타입은 0x05인 걸로 보아 확장 파티션이 생성될 것으로 예측할 수 있습니다.

 

해당 MBR에서 파티션을 추적하기 위해서는

0번 섹터에 있는 파티션 테이블의 시작위치에 확장 파티션에 있는 파티션의 시작주소를 더해 주어야 합니다.

 

즉, 첫번째 파티션은 307328 + 0x80 = 307456

두번째 파티션은 307328 + 0x019080 = 409856

각 주소로 이동하면 서브 MBR을 확인할 수 있습니다.

확장 파티션의 Partition Table 분석

 

 

 

확장 파티션이 생성될 것으로 예측할 수 있었던 노란색 파티션의 시작 위치로 이동합니다.

5번째 파티션 확인

 

 

 

 

이렇게 다중 파티션은 4번째 파티션부터 새로운 서브 MBR이 생성되어 BR 정보를 새로 구성하여 저장하게 됩니다.

 

320x100
320x100