본문 바로가기

보안/포렌식

FAT : 삭제한 파일 복구

FAT 파일 복구 하기

1. FAT 볼륨 생성 (윈도우 7)
     -  FAT 예제를 위해 볼륨을 생성한다.
     -  내컴퓨터 -> 오른쪽클릭 -> 관리 -> 저장소(우측) -> 디스크관리 -> 나눌 파티션 선택 후 -> 볼륨 축소
     -  원하는 크기만큼 설정 후 축소 -> FAT32로 포맷


2. 드라이브에 파일 생성 및 삭제
     -  드라이브에 복구 할 파일을 삽입 후 삭제한다.
     -  긁기 귀찮으므로 짧은 텍스트 파일을 이용했다.


3. HxD.exe 프로그램 실행
     -  다른 프로그램도 상관없으나 편한 Hxd.exe를 이용했다.
     -  좌측 상단에 디스크 열기 선택


4. VBR 분석

     -  클러스터 크기와 섹터 크기, FAT 개수, FAT 사이즈 등을 구한다.
     -  아래의 표를 이용하자

     -  분석하면 다음과 같다.
         -  섹터 크기 : 512 Byte  (0x0200)
         -  클러스터 크기 : 8개 (0x08)
         -  Reserved 섹터 수 : 418개 (0x01A2)
         -  FAT 개수 : 2개 (0x02)
         -  FAT 섹터 개수 : 7983 개 (0x1F2F)
         -  Root direct Cluster : 2번 (0x00000002) = Volume Label


4. Data area 영역으로 이동

     -  Reserved Area ( 418 섹터 ) + FAT ( 7983 섹터 ) * 2 개 =  16384 섹터
     -  16384 섹터로 이동


5. 삭제한 파일 분석

 - Directory Entry -

 - Long name Directory Entry - 


     -  Directory Entry는 32 바이트 단위이다.
     -  맨 위 맨 앞 의 4개의 헥사 숫자는 이름을 의미하나 삭제하면 첫번째 헥사 파일은 E5로 바뀐다.
     -  참고로 휴지통은 24로 시작한다.
     -  이름이 긴 파일을 분석하면 모든 것을 알 수 있으니 짧은 파일은 복구하지 않겠다.
     -  attr 영역을 보면 20이 있고 0F가 있다.
         - 20은 파일을 뜻한다.
         - 0F는 긴 파일 이름 엔트리를 뜻한다.
     -  따라서 맨 아래의 4개의 엔트리는 이름이 긴 파일을 나타내는 것이다.
     -  분석하면 다음과 같다.
         - 파일 크기 : 0x00000403 : 1027 바이트 : 2섹터 -> 1클러스터 ( 저장단위는 클러스터 단위이므로)
         - 저장 위치 : 0x00000068 : 104 클러스터 -> Data Area(16384 섹터) + 파일 저장 위치(102 * 8 섹터)
             - 저장위치가 102인 이유는 루트 다이렉트 클러스터가 2클러스터 부터 시작하기 때문
             - 8을 곱해준 이유는 클러스터 단위이기 때문에 섹터단위 이동 때문에 8을 곱해주었다.
         - 확장자 : TXT
         - 파일이름 : do you want to be snow man.txt


6. 파일 복구 하기

    -  파일 위치로 이동한다.
    -  16384 + 102 * 8 섹터 = 17200섹터

-  파일 사이즈 만큼 긁은다 (다른 방법 있을 듯... 원래 1027 바이트 이나 저장단위는 클러스터 이므로 4섹터를 긁었다.
-  새로 만들기 한 후 복사하기를 한 후 저장한다. 확장자는 .txt로 수정한다.



'보안 > 포렌식' 카테고리의 다른 글

증거 수집  (0) 2015.02.17
침해사고  (0) 2015.02.16
인터넷 사용 기록 포렌식 프로그램 (인터넷 익스플로러 10, 11, 엣지 브라우저)  (6) 2015.01.26
Volume Snapshot Service 조사하기  (0) 2014.12.06
TSK  (0) 2014.02.07