티스토리 뷰

2025.02.14 - [Forensic/DISK Forensic] - NTFS 파일 시스템 파일 복구 -2-
NTFS 파일 시스템 파일 복구 -2-
이전 글에서 이어지는 내용입니다.2025.02.13 - [Forensic/DISK Forensic] - NTFS 파일 시스템 파일 복구 -1- NTFS 파일 시스템 파일 복구 -1-1. 이미지 파일 준비 및 분석삭제된 파일을 복구하기 위해, 분석해야
infosec-noh.tistory.com
2025.02.13 - [Forensic/DISK Forensic] - NTFS 파일 시스템 파일 복구 -1-
NTFS 파일 시스템 파일 복구 -1-
1. 이미지 파일 준비 및 분석삭제된 파일을 복구하기 위해, 분석해야 할 이미지 파일을 확보했다.이 이미지 파일에는 3개의 삭제된 파일이 포함되어 있다.1.1. FTK Imager를 활용한 기본 구조 분석먼
infosec-noh.tistory.com
이전 글에서 이어지는 내용입니다.
MFT Entry 시작 위치 부터 시작하겠습니다.
이제 다음으로 삭제된 파일인 recovery_file3.pdf을 복구해줄 것이다.
1. 삭제된 파일의 MFT Entry 위치 찾기
삭제된 파일을 복구하려면, 해당 파일의 MFT Entry를 먼저 찾아야 한다.
MFT 엔트리에는 파일의 속성 정보와 실제 데이터가 저장된 위치(Runlist 정보)가 포함되어 있다.

파일의 MFT Entry 위치 = (MFT Entry 번호 * 2) + MFT 시작 위치
삭제된 파일: recovery_file3.pdf
MFT Entry 번호: 581 MFT 시작 위치: 2,129,920 섹터
(581 * 2) + 2,129,920 = 2,131,082 섹터
이제 HxD에서 2,131,082 섹터로 이동하면,
삭제된 recovery_file3.pdf의 MFT 엔트리를 확인할 수 있다.

2. Runlist 분석 - 파일 데이터 위치 찾기
이제 MFT 엔트리 내부에서 Runlist 정보를 분석하여 파일의 실제 데이터 위치를 확인해야 한다.

3. 실제 파일 데이터 위치 계산
Runlist에서 Run Offset을 사용하여 파일이 저장된 실제 섹터를 계산한다.3.1 Runlist 구조 및 분석 방법
Runlist는 다음과 같은 형식으로 구성된다.
바이트 값설명
0x32 | Run Length & Run Offset 크기 |
A8 12 | Run Length (파일이 차지하는 클러스터 개수) |
93 AC | Run Offset (파일이 시작되는 위치) |
리틀 엔디안(Endian) 변환을 수행해야 올바른 값을 얻을 수 있다.
이를 기반으로 Run Offset과 Run Length 값을 추출하여 파일의 정확한 데이터 위치를 계산할 수 있다.
3.2 Runlist 해석 및 데이터 위치 계산
MFT Entry에서 확인한 Runlist 값:
이제 Runlist를 분석하여 파일이 저장된 실제 섹터를 계산해보자.
3.2-1. 첫 번째 Run Offset 해석
Runlist의 첫 번째 바이트(0x32)를 분석하면:
- 첫 4비트(0x3): Run Offset 크기 (3바이트)
- 마지막 4비트(0x2): Run Length 크기 (2바이트)
즉, Run Offset은 3바이트, Run Length는 2바이트로 저장되어 있다.
해당 값을 리틀 엔디안(Endian) 변환 후 10진수로 변환하면 다음과 같다.
Run Offset (리틀 엔디안) | 변환 후 |
93 AC → 0xAC93 | 44,179 (10진수) |
3.2-2. 첫 번째 데이터 위치 계산
공식:
( Run Offset * 클러스터 크기 ) + NTFS 시작 섹터)
Run Offset: 44,179
클러스터 크기: 8
NTFS 시작 섹터: 32,768
계산 결과:
(44,179 * 8) + 32,768 =386,200섹터
➡ 파일 데이터가 386,200섹터에서 시작된다는 것을 확인할 수 있다.

4. 파일 크기 확인 및 정확한 복구
이 과정에서 저는 정말 이것저것 시도를 많이 해봤습니다. 하지만 결과는 다 pdf가 열리지 않는 결말이였습니다.
그러던 중 pdf의 푸터를 이용해보면 어떨까라는 생각을 하였고 결과는 아래와 같이 3개가 나왔고 그 중 386200섹터 이후에 나오는 것을 확인했고 해당 지점까지 복사 붙여넣기를 진행 후 파일을 열었습니다.



'Digital Forensics > DISK Forensic' 카테고리의 다른 글
EXT4 파일 시스템 파일 복구 (0) | 2025.02.27 |
---|---|
NTFS 파일 시스템 파일 복구 -2- (0) | 2025.02.14 |
NTFS 파일 시스템 파일 복구 -1- (0) | 2025.02.13 |
FTK imager로 VMDK 파일을 DD파일로 이미징 (0) | 2025.01.20 |
파일시스템 구조이해 (1) | 2024.07.07 |