[2024.11.11]
[디스크 포렌식]
디스크를 4개 생성한다고 해도
MBR은 1개, BR이 3개 생성된다고 보면 된다
MBR은 512bytes로 구성되어 있다
예약 영역이 존재하는데, FAT1과 FAT2가 존재하게 된다
앞에 3개를 넘고 나서 어디에서 부트 코드가 시작되는지 알려 준다
노란색은 미디어 종류고, 빨간색은 백업 섹터다
위 화면에서 파란색 부분은 부트 코드라고 볼 수 있고,
446bytes를 차지하고 있다
* 모두 화면에 적힌 것과 같은 순서로 읽는다
* 이 구조 잘 알고 있어야 됨
<실습>
먼저 강사님께서 올려 주신 이미지 파일을 FTK Imager로 확인한다
파일명은 FAT32_file.001이다
파일을 열어 확인했을 때 root를 볼 수 있고,
root에서 MSI44d27.tmp 디렉터리와 !AM1.PNG 파일이
삭제되어 있는 것을 확인할 수 있다
다음은 HxD 프로그램으로 이미지 파일을 열려고 한다
이때 파일에서 열기가 아닌 도구를 통해 디스크 이미지 열기를 선택해야 된다
파일을 열어 확인했을 때 바로 끝 주소를 확인했다
또한, 00이면 부팅하지 못하는 파티션이라고 볼 수 있다
> 파티션 시작 주소: 00 00 00 80 => 128 섹터
> 파티션 끝 주소: 00 1F E8 00 => 2091008
80번부터 네 개가 시작하는 구간이다
위 화면의 경우 끝 주소라고 볼 수 있다
> 128 섹터로 이동
현재 헥사 값으로 80인 128 섹터를 섹터 검색 부분에 입력 후 이동하면,
시작 부분으로 이동되는 것을 확인할 수 있다
> 섹터 단위: 0x0200(512byte)
> 섹터 당 클러스트 수: 0x08(8개)
> 클러스터 할당(512*8=4096)
> RS: 4122
> 총 섹터 갯수: 0x 00 1F E8 00(2091008)
> 파일 시스템 크기: 0x07F3(2035)
현재 섹터 단위는 0x0200으로 512byte를 차지하고 있다
섹터 당 클러스트 수는 8개로 정의할 수 있다
총 섹터 갯수는 2091008라고 할 수 있다
0x 00 1F E8 00의 16진수를 10진수로 변환하면 결과값이 나온다
파일 시스템 크기는 2035 정도로 볼 수 있다
> root 디렉터리 계산하기
= VBR+RS+(FAT*2)
= 128 + 4122 + 2035*2(4070) = 8320
8320 섹터로 이동하게 되면 root인 FAT32를 확인할 수 있다
위 화면에서 알 수 있듯이 현재 이미지 파일 안에서
삭제된 파일들인 것을 알 수 있다
특정 파일 구조나 파일 헤더의 시작 부분을 수정하거나 삭제하는
작업을 할 때 첫 번째 바이트의 파일을 삭제하게 된다
파일의 첫 번째 바이트 또는 첫 몇 바이트에는
파일의 형식, 구조, 혹은 헤더 정보가 포함될 때가 많다
이 경우 첫 번째 바이트(또는 처음 몇 바이트)를 삭제하거나 임의로 변경하면,
파일이 올바르게 인식되지 않거나 파일 시스템에서 해당 파일을 손상된 파일로 간주할 수 있다
JPEG 파일의 경우 파일의 시작 부분에 매직 넘버가 포함되어 있어,
이 부분을 수정하면 파일이 정상적으로 열리지 않게 된다
즉, 파일의 무결성과 안전성에 대한 중요한 개념을 강조한 것이다
이 부분을 건드리면 파일이 깨지기 쉽다는 경고로 이해하는 것이 좋다
!AM1.PNG 파일을 바꾸기 위해
해당 헤더의 첫 부분을 임의의 숫자 41로 변경하게 되면,
느낌표였던 부분이 A로 변경된다
수정 후 파일을 다시 저장하고
FTK Imager로 다시 확인하게 되면 !AM1.PNG이었던
파일명이 변경됨과 동시에 삭제되었던 파일이 복구된 상태로 변경된다
바로 위의 파일도 복구시키기 위해 해당 부분을 드래그 후
이번에도 임의의 숫자를 아무거나 입력하고 수정 후 파일을 저장한다
다시 FTK Imager로 확인하게 되면
MSI였던 디렉터리가 SSI로 변경되면서 삭제 파일이 복구까지 진행되었다
MSI는 시스템 디렉터리로 FTK Imager로는 보이지 않는다
현재 속성 값이 다르기 때문에 보이지 않는다고 볼 수 있다
속성은 20이 파일, 10이 파일로 MSI는 값이 다른 것을 확인할 수 있다
복구시킨 파일 중 AAM1.PNG 파일을 Export로 추출한다
이미지를 복구했기 때문에
이미지 추출 후 확인 시에도 이미지가 정상적으로 나와야 된다
> 확장자: 50 4E 47
> 속성: 20(파일)
> 예약: 10 AA
> 생성 시간(초): A6 93 => 10010 011101 00110 => 18시 29분 12초
> 생성 날짜: 82 48 => 0100100 0100 00010 => 2016(36년(1980)) 4월 2일
> 접근 날짜: 82 48 => 100 1000 1000 0010
> 마지막 수정 시간(초): 0D 95 => 10010 101000 01101 => 18시 40분 13초
> 마지막 수정 날짜: 36 48 => 1001000 0011 0110 => 2016(36년(1980)) 1월 22일
> 파일 크기: E2 26 00 00 => 927458
*2초 단위로 기록한다
-----------------------------------------------------------
생성 시간: 시(5Bit) 분(6Bit) 초(5Bit)
생성 날짜: 연도(7Bit) 월(4Bit) 일(5Bit)
FAT32 파일 시스템에서는 파일 이름이 8byte로 지정된다
이후 3byte는 파일 확장자를 나타낸다
속성은 20으로 파일을 뜻한다
20 뒤의 2byte는 예약 영역이다
생성 시간(초)는 2byte로 A6 93이다
생성 날짜도 2byte로 48 82이다
접근 날짜도 2byte로 48 82이다
마지막 수정 시간도 2byte로 95 0D이다
마지막 수정 날짜도 2byte로 48 36이다
마지막은 파일 크기는 4byte로 저장되며,
현재 위와 같은 헥사 값을 확인할 수 있다
헥사 값을 먼저 2진수로 변환하고,
그런 다음 2진수를 10진수로 변환하여 값을 알아냈다
현재 값을 알아낸 정보에서 속성 정보와 모두 일치하는 것을 확인할 수 있었다
강의 소감
이번 강의가 마지막 강의 시간이었다
마지막 강의 내용으로는 디스크 포렌식에 대해 배웠다
FTK Imager로 이미지를 먼저 확인하고,
그 다음 헥사 에디터 프로그램으로 파일 헤더 구조를 살펴봤다
바이트 수를 통해 파일 이름과 확장자, 그리고 수정 시간 및 수정 날짜와
접근 날짜, 파일 크기 등 다양한 정보를 먼저 헥사 값으로 얻어
2진수로 변환하여 또 다시 10진수로 변환하여 값을 알아냈다
이런 과정을 통해 헥사 값이 있는 것만으로 정보를 알아낼 수 있다는 점을 배웠다
또한, 헥사 값을 바꿈으로 파일이 복구되는 것도 배우게 되었다
이러한 많은 실습 과정을 통해 디스크 포렌식에 대해 알게 되었다
오늘은 보안 과정에서는 6개월 간의 과정이 마무리되는 날이다
cisco, 리눅스, 클라우드를 포함하면 7개월이지만,
긴 시간 동안 박성업 강사님께 많은 것을 보고 배우게 되었다
지금껏 내가 배운 내용을 토대로 반복적인 복습과 공부를 통해
내가 이루고자 하는 꿈인 보안 전문가로서 성장하고 싶다
출처 - 정보 보안 박성업 강사님 제공
'디지털 포렌식' 카테고리의 다른 글
디지털 포렌식 17 (0) | 2024.11.08 |
---|---|
디지털 포렌식 16 (1) | 2024.11.08 |
디지털 포렌식 15 (2) | 2024.11.08 |
디지털 포렌식 14 (5) | 2024.11.06 |
디지털 포렌식 13 (5) | 2024.11.06 |