관리 메뉴

Information Security

NTFS MFT 본문

포렌식/윈도우 포렌식

NTFS MFT

HackingPractice 2020. 12. 22. 12:16

 

10GB 새로운 파티션을 생성했다. 

그림 1-1 파티션

새로운 파티션에 boan.txt를 복사했다.

그림 1-2 boan.txt

010 Editor 프로그램을 이용해 새로운 파티션을 열었다.

그림 1-3 010 Editor

3F 섹터의 시작 주소다.

그림 1-4 섹터

Ctrl + g를 눌러 sector 옵션으로 변경 후 3F로 이동하면 NTFS를 보여준다.

그림 1-5 NTFS

00 02를 보면 정수 값 512byte라는 것을 알 수 있다.

그림 1-6 512byte

08을 보면 하나의 클러스트 당 8개의 섹터가 필요하다.

그림 1-7 sector

0xC00000 주소를 보아 클러스트의 시작 주소라는 것을 알 수 있다. (63 sector + 0xC00000 * 8 = 6291519 sector)

그림 1-8 클러스트

10진수 6291519로 입력 후 이동하면 FILEO가 보이고 내리다 보면 MFT가 보인다.

그림 1-9 MFT

 FILE0 위치에서+54로 이동 하면 System Volume을 확인할 수 있다. 

그림 1-10 system volume

조금 내리다보면 boan.txt가 보이는 것을 알 수 있다.

그림 1-11 boan.txt

38번째에 Ctrl + b를 눌러 북마크를 표시했다. 

그림 1-11 북마크

+38 byte 만큼 이동을 하면 첫 번째 섹터를 알 수 있다.

그림 1-12 sector

길이 60만큼 이동하면 두 번째 섹터를 알 수 있다.

그림 1-13 sector

똑같은 방법으로 하다 보면 마지막으로 FF FF FF FF 끝을 알 수 있다.

그림 1-14 sector

첫 번째 섹터에는 64bit로 create 시간 정보가 저장되어 있다. 

그림 1-15 시간정보

두 번째에는 수정시간이 들어있다.

그림 1-16 수정시간

세 번째에는 MFT 자체 수정시간 (마우스 오른쪽 클릭에서 속성에서 볼 수 없는 값)

그림 1-17 MFT

마지막으로 access time이다.

그림 1-18 access time

파일 이름을 알 수 있다.

그림 1-19 파일 이름

Run 레지스트 방식으로 다른 곳에 데이터를 저장하고 있다.

그림 1-20 run 레지스트

31을 바이너리 값으로 변경하면 0011 0001이라는 것을 알 수 있다. 이 값의 의미는 0001은 하나를 이용하는 것이고 0011은 위치를 가리킨다. 

그림 1-21 바이너리

5A FE 13은 1310298 값이다.

그림 1-22 1310298

NTFS 시작 위치 + 파일 런 오프셋(0x1000 단위) = 파일 내용 위치

0x7E00 byte + (0x13FE5A * 0x1000) byte = 0x13FE61E00 byte

해당 위치에 파일 내용이 있는 것을 알 수 있다.

그림 1-24 파일 내용

'포렌식 > 윈도우 포렌식' 카테고리의 다른 글

후킹  (0) 2020.12.27
인증번호 탈취  (0) 2020.12.25
파일시스템  (0) 2020.12.21
윈도우 부팅과 시스템 프로세스  (0) 2020.12.21
MBR  (0) 2020.12.20