반응형

필요실습 도구 : FTK imager, HxD, FAT32.001(손상된 파일시스템)


디지털포렌식을 진행하다보면 증거 USB를 분석하기 위해서 사본이미지를 작성하게 된다.

그런데 일부 USB에서 파일시스템이 문제가 생겨 복구가 필요한 상황이 오게되는데

그중에서 대부분의 USB 파일시스템 형식은 FAT32 파일시스템을 복구해 보도록 한다.


FTK imager를 통해 해당 이미지 파일을 열어보면 이렇게 문제가 생겨 데이터가 보이지 않는다.



HxD Tool을 열어 해당 이미지 파일을 불러온다.



섹터크기는 하드디스크/플로피디스크 (512)로 설정한다.



처음 열게 되면 이 이미지의 MBR이 가장 먼저 보여지게 된다. MBR은 대부분 섹터0에 위치해 있다.

이제 BR의 시작 주소를 먼저 찾아야 하는데

왜 이 값을 찾고 어떻게 찾는지는 FAT32 파일시스템의 구조를 알면 이해가 된다.


이부분은 http://jjinfotech.tistory.com/71 에서 확인해본다.



파티션 시작 주소를 찾아보면 그림과 같이 80 00 00 00 이라는 값을 볼 수 있다.

하지만 실제로 값을 계산할때는 00 00 00 80(16진수) 로 계산을 해야 한다.


이유는 컴퓨터는 값을 저장할때 Little Endian(리틀엔디언) 방식으로 저장을 하기 때문에

우리가 볼때와는 다르게 반대로 읽어줘야 한다.


이 16진수 값을 10진수로 변환하면 128이라는 값이 나오게 된다.

  


128 섹터로 이동을 해보면 BR(boot record)이 망가져있는 것을 볼 수 있다.


FAT의 경우 BR을 기준으로 6~8번 섹터에 BR의 복사본이 위치해 있다.

이 것을 이용해서망가진 BR을 복구하면 원래의 파일시스템에 접근이 가능한 것이다.


이제 128섹터를 기준으로 6번째 섹터 134로 이동을 해보면 다음과 같이 BR의 복사본을 볼 수 있다.



이제 이 값들을 복사를 한다.



그리고 다시 128 섹터로 돌아가서 붙여넣기 쓰기를 진행하면



이렇게 값들이 빨간색으로 변하면서 값을 덮어쓰게 된다.



** 만약 붙여넣기 삽입을 하게 되면 섹터가 밀려나거나 깨질 수 있고 값이 변경될 우려가 있기 때문에

붙여넣기 쓰기를 해야한다.


이제 저장을 하고 FTK Imager로 열어보면 데이터들이 보이게 된다.



** 해당 실습파일 및 내용 참조는 https://blog.naver.com/bitnang/220188715461 에서 하였으며

개인적인 공부를 위해 작성되었습니다.

반응형
반응형

필요 실습도구 : NTFS.001(실습파일), HxD, FTK Imager


이번에는 FAT32 파일시스템과 마찬가지로 

현재 윈도우에서 많이 사용중인 NTFS를 복구해보는 실습이다.


먼저 FTK Imager로 해당 파일을 열어본다.



해당 이미지는 NTFS 파일시스템으로 포맷이 되어있으며 역시나 손상이 되었기 때문에 파일들이

보여지지 않는다.



이제 파일시스템 복구를 위해 HxD 프로그램으로 해당 파일을 열어준다.



NTFS의 BR 복사본은 FAT32와는 다르게 NTFS 마지막 섹터에 위치에 저장되어 있다.

따라서 NTFS의 섹터수를 알아야할 필요가 있으며

용량 = 섹터 수 X 512 로 계산을 하면 NTFS의 용량이 나오게 된다.



BR 의 시작주소는 128에 위치해 있으며 섹터수는 102,400 이다.


이제 128섹터로 이동해서 확인을 해보면 역시나 BR깨진것을 알 수 있다.



NTFS의 경우 헤더 복사본 위치가 Partition Sector 마지막에 존재한다.

NTFS의 마지막 위치를 확인 하려면 [BR의 위치 + NTFS의 전체 섹터 크기 - 1] 을 하면 NTFS BR의 복사본이 위치하는 것을 알 수 있다.

 

[16진수로 계산]

80 + 00 01 90 00 - 1 = 1 907F 로 계산이 되고

 

[10진수로 계산]

128 + 102,400 -1 = 102527 로 계산이 된다.


이제 BR의 복사본 위치를 계산했으니 102527섹터로 이동하여 확인한다.

 


이렇게 BR의 복사본이 있는것이 보인다 이제 이 값을 복사하여 128섹터에 덮어쓰기를 한다.



그리고 이제 이 파일을 저장하고 FTK imager를 통해 다시 확인해 본다.



이제 보이지 않던 파일들이 보여지게 된다.


** 위의 실습파일 및 내용 참조는 https://blog.naver.com/bitnang/220188735136 에서 하였으며

제가 개인적으로 공부를 위해 실습을 한 것입니다.

반응형
반응형

Autopsy 버전은 4.3.0 버전을 기준으로 진행이 된다.


먼저 Autopsy를 실행해보면 다음과 같이 모듈이 로드 되면서 실행이 된다.



그리고 가장 먼저 나오는 창은 case 관련된 창을 맞이하게 된다.



다른 포렌식 툴 역시 마찬가지로 기본적으로 데이터를 분석하기 위해서는

케이스 생성을 먼저 하고 그 후에 데이터를 로드해서 분석하게 되는 것이다.


Create New Case : 새로운 케이스 생성

Open Recent Case : 가장 최근에 실행된 케이스 열기

Open Existing Case : 다른 케이스 불러오기 (기존에 생성했었던 케이스들을 불러올 때 사용)


처음 설치하고 나서는 최근에 실행된 케이스가 없기 때문에 Open Recent Case 는

활성화가 되어있지 않을 것이다.


새로운 케이스를 생성해보자.

Create New Case를 눌러보면 아래와 같이 케이스 정보를 입력하는 창이 나온다.



Case Name에는 우선은 임의로 생성을 하면 되고 나중에 실전에서는 사건 이름이나

기타 자신이 잘 알아볼 수 있게 이름을 생성하면 된다.


Base Directory는 케이스를 저장할 경로를 설정할 수 있는 칸이다.

** 여기서는 임의로 한글 폴더에 저장을 했지만 확인 결과 해당 케이스를 종료한 후 다시 케이스를 불러오면 에러가 발생한다. 한글로 된 폴더에서 케이스를 불러오려면 에러가 발생하게 되는것으로 보인다.

필히 영문으로 된 폴더로 지정할것 ( 예: C:\ )


Case Type은 현재는 윈도우에서 실행하는 것이라 Single-user만 선택이 된다.

리눅스에서 실행이 된다면 Multi-user도 선택할 수 있을 것이다.

(Autopsy는 리눅스 기반)


그리고 Next를 눌러주면 아래와 같이 Case number 및 examiner(조사관)를 입력하는 창이 나온다.



Case Number에는 실무에서는 사건 번호를 입력하면 될 것이고

Examiner는 사건을 조사하는 조사관(본인)을 적고 Finish를 누르면 케이스 생성이 완료된다.

(여기서는 임의로 만듦)


케이스 생성이 완료되면 이제 사본 이미지를 불러 올 수 있는 창이 나타난다.



Select data source type

데이터 소스의 타입을 선택할 수 있으며 아래와 같이 4가지로 분류된다.

Disk image or VM File (디스크 이미지 or 가상머신 파일)

Local Disk (로컬디스크)

Logical files (논리적 파일들)

Unallocated Space Image File (할당되지 않은 공간의 이미지 파일)


조사를 위해 생성한 사본이미지는 Disk image or VM File로 불러올 수 있으므로 현재는 이 상태 그대로 사용할 것이다.


이제 browse 버튼을 눌러 이미지 사본이 있는 경로를 설정해 준다.

(여기서는 실습용으로 받아뒀던 이미지가 있어서 그것을 사용했음)


그리고 밑에 Timezone을 설정할 수 있는데 이 부분은 우리가 국내에서 분석을 진행하고 있기 때문에 Asia/Seoul로 맞춰주면 된다.

(시간 설정을 잘못하면 나중에 분석시 시간이 맞지 않아 고생할 수 있다.)


ignore orphan files FAT file system 이 옵션은 FAT 파일 시스템에 고아 파일들을 무시하겠느냐는

옵션으로 일부파일이 검색은 안되지만 빠른 결과를 나타낼 수 있다.


지금은 사용할 일이 없으므로 이 부분은 넘어간다.


여기서는 사용하고자 하는 기능들을 설정할 수 있는 창이 나온다.



최근 활동 기록이나 키워드 검색, 파일 유형 식별, hash 값, 올바르지 않은 확장자 찾기 등

여러가지 옵션을 추가하거나 제외 가능하다.


Next를 누르면 이제 소스 데이터 추가가 완료 된다.



Finish 버튼을 눌러 주면 이제 데이터 사본을 확인해서 안에 어떠한 데이터들이 있는지

볼 수 있도록 도와준다.


[데이터 소스가 추가된 화면]

반응형
반응형

디지털포렌식 전문가 2급 실기를 치고 동일한 환경 구성을 위해

Autopsy 4.5.0 버전을 설치하였으나 프로젝트를 생성하고 Add Data Source 를 누르면

소스 추가하는 창이 나오지 않고 프리징 되는 현상 발생


< 테스트 환경 >

노트북

운영체제 : Windows 10 pro

CPU : Intel I3-7100U 2.40GHz

RAM : 8GB


< 추가 테스트 환경 >

VMWare Workstation 12

운영체제 : Windows 7 Home Basic K


<테스트 계획>

여러 버전의 Autopsy를 설치 하였으나 정상동작 되는 버전은 4.3.0 버전이였음

다른 호환되는 버전을 찾아보기 위해 4.3.0 부터 4.6.0(최신)버전까지 모두 설치하고

실행해볼 계획


1. 테스트 진행할 프로그램 버전 수집



4.3.0, 4.4.0, 4.4.1, 4.5.0, 4.6.0 버전까지 프로그램을 다운받았다.


2. 각각 설치



4.3.0 부터 4.6.0 버전까지 모두 설치해봤다.


3. 프로젝트 생성 후 Add Data Source 진행해보기

(프로젝트 이름은 테스트를 위해서 123으로 생성)


1) 4.3.0 버전


 


정상적으로 source를 추가할 수 있는 창이 뜬다.


2) 4.4.0 버전



Add Data Source 을 누르면 마우스에서 읽고 있는 상태는 나오지만 더이상 창이 생성되지 않는다.


3) 4.4.1 버전



동일한 증상이 발생한다.


4) 4.5.0 버전



5) 4.6.0 버전



** 가상머신 (윈도우7)에서도 동일한 증상이며 일단은 해결하기전까지

4.3.0 버전으로 사용해야 될 것 같다.


** 4.3.0 버전과 이후 버전에서 차이점은 없는지

오류가 발생하지는 않았는지 로그 및 확인이 필요할것 같다.



  • 혹시나 위와 동일한 증상이 있으나 해결하신분은 댓글 부탁드릴께요^^


반응형
반응형

1. 다운로드 경로

Autopsy는 https://www.sleuthkit.org/autopsy/ 사이트에서 받을 수 있으며

들어가면 다음과 같은 화면이 보인다.



Download Now를 누르면 다운받을 수 있는 링크로 들어가진다


2. 다운받기

들어가면 현재 2018.04.20 일 기준으로 최신버전은 4.6.0 버전인 것을 볼 수 있다.



최신버전을 다운받으려면 자신의 PC 운영체제 아키텍처 버전에 맞게 다운받으면 되며

이전 버전을 받고 싶을때는 아래의 이미지를 보고 들어가면 된다.



먼저 설치를 위해 최신버전을 받아보도록 하겠다.



파일의 크기는 492MB 이며 네트워크 환경과 국외 서버에서 받아와서 그런지 350~400kb/초

정도의 속도가 나온다. 다 받아질때까지 천천히 기다려 준다.


3. 설치하기

파일이 다 받아지면 설치화면이 등장한다.



Next를 눌러주면 설치할 경로를 확인하는 창이 나온다.



본인이 다른 경로에 설치를 하고자 하면 설치하고자 하는 경로를 입력하고

기본으로 설치를 하려면 Next를 누르면 된다.



경로 설정으로 하고나서 Install을 누르면 설치가 된다.



Autopsy는 별도의 추가 설치나 옵션들 필요없이 일반적인 프로그램 인스톨 하듯이

간단하게 설치가 가능하다.



설치가 완료되면 이렇게 도베르만(?!) 처럼 생긴 아이콘이 생성되면서 Autopsy 설치가

완료 된다.




반응형
반응형


Autopsy는 사전적인 의미로는 (사체) 부검, 검시라는 뜻을 가지고 있다.


Autopsy는 Linux 시스템에서 사용할 수 있는 오픈소스 기반 포렌식 프로그램으로 잘 알려진 sleuth Kit를 Windows 시스템에서 GUI 형태로 이용할 수 있도록 개발된 오픈소스 기반 무료 포렌식 프로그램이다.


Autopsy는 2000년경에 발표된 TCT(The Coroner’s Toolkit)을 기반으로 계속 개발이 이루어져 최근 Autopsy 4.x 단위의 버전에서는 포렌식 조사자가 동일한 사건을 동시에 공동 작업하고 Python 스크립트를 작성하여 기능을 확장할 수 있는 기능까지 제공하고 있다.


Windows와 Linux/UNIX를 비롯한 OS X, Android 등 다양한 운영체제의 파일시스템 내용을 분석할 수 있으며, 검색 및 타임라인 분석, 해쉬 필터링 등의 기능을 제공한다.

그리고 기능 확장을 위한 Add-On 모듈 지원을 통해 Project VIC 및 C4P와 같은 데이터베이스를 통합하여

분석을 하거나 비디오 분석모듈 등의 기능을 추가할 수 있다.


그리고 (사)한국포렌식학회에서 주관하는 디지털포렌식전문가 2급 실기시험에서

EnCase와 더불어 사용되는 Tool로 기억된다.


나는 FTK Tool을 공부하고 시험장에 갔었는데 제공되는

Tool에서는 FTK는 제공되지 않아 당황했었던 적이 있다.


EnCase의 경우 상용 소프트웨어에 다뤄볼 기회도 없었으며

Autopsy또한 Tool을 다룰줄 모르는 상태로 시험을 진행하게 되었는데


이때 EnCase, Autopsy 두가지 Tool을 사용해본 결과

나는 Autopsy가 조금 더 인터페이스 측면에서 보기가 편했으며

다양한 기능들이 제공되었던 것으로 기억된다.


[Autopsy 실행화면]


이제 Autopsy 툴을 다운로드 및 설치 그리고 개인적으로 Tool을 공부해보고자 한다.


반응형
반응형

FTK imager 로 사본 이미지를 생성시 디렉토리에 이미지 파일 외 csv, txt 파일이 생성된다.


[csv 파일 내용]

파일이름, 절대경로, 파일 사이즈(bytes), 생성 시간, 수정된 시간, 접근 시간, 삭제 유무가 엑셀파일로 되어있다.


실제 현장에서는 압수한 USB에서 피의자가 중요 파일을 삭제를 했는지 언제 생성되었고 언제 수정이 되었는지를 표에서 참조할 수 있을 것이다.



[txt 파일 내용]

txt파일의 내용은 FTK imager로 사본 이미지를 생성할때 입력했던 사건 번호, 사건 정보 같은 내용을 담고 있으며 물리적인 디스크의 모델, 일련 번호 같은 내용이 담겨져 있으며, 해시값 검증 결과 같은 것들이 담겨있다.

따라서 해당 내용들을 토대로 나중에 보고서를 쓸때 유용할 것이다.


반응형
반응형

FTK imager 는 AccessData 사에서 만든 이미지 사본 생성 도구이다.

디지털포렌식 수사를 할때  USB, 하드디스크 같은 매체의 무결성을 위해서 원본으로 조사를 하지 않고

사본 이미지를 만들어서 조사를 하게 되는데 이 때 필요한 도구이다.

그리고 삭제된 데이터 복원도 가능하다.


[USB 메모리 사본 이미지 생성방법]

- 작업환경 : Windows10, 16Gb 메모리, FTK imager 4.1.1.1(한글버전)


FTK imager를 열고 파일 -> 디스크 이미지 작성을 누른다.



소스 선택창이 나오는데 물리적 드라이브, 논리적 드라이브, 이미지 파일 등 몇가지 종류가 나오는데

USB메모리를 이미지 생성할 것이기 때문에 물리적 드라이브를 선택하고 다음을 누른다.



인식된 USB 메모리를 선택하고 완료를 눌러준다.




이렇게 하면 바로 작업이 완료되지는 않고 이미지 유형을 선택 등 몇가지를 추가해야

작업을 완료할 수 있는데 이미지 대상 아래에 추가 버튼을 눌러준다.



이미지 유형 선택창이 나오게 되며 4가지 원시(dd), SMART(S), E01(E), AFF 방식을 선택할 수 있는데

보통은 E01 방식을 많이 사용하므로 E01을 선택하고 다음을 눌러준다.

(상황에 따라서는 원시(dd)방식을 사용해야할 경우도 있음.)



그 다음은 증명 항목 정보가 나오는데 이 부분은 지금은 그렇게 중요한 부분이 아니므로 알아서 적는다.

(실제 현장에서는 현장에 맞게 작성)



이미지 대상 선택 창이 나오면 이제 이미지 파일을 저장할 곳, 이미지 파일의 이름을 지정하게

되고 이미지 대상 폴더에는 저장될 폴더를 선택하고, 이미지 파일 이름은 각자 알아서 정하면 된다.

(아래의 추가 옵션을 선택해서 이미지 단편화 크기나 압축방식 등을 지정해서 할 수도 있으며

여기서는 기본을 사용한다.)



이제 완료를 누르게 되면 이미지 대상에는 경로가 지정이 되고 위에서는 활성화 되어있지

않던 시작 버튼이 활성화 되면서 이제 이미지 생성을 할 수 있게 된다.



시작 버튼을 누르면 이렇게 이미지 생성 창이 보이면서 진행이 된다.



16GB USB를 기준으로 1분 30초 정도 걸렸다.

디스크의 용량이 더 크다면 작업시간이 더 오래걸릴 것이다.

이제 생성이 완료되면 확인결과 창이 뜨고 해시값을 확인하여 동일한지 체크를 하여 출력해준다.



이제 USB메모리의 디스크 이미지 사본 작성은 완료되었으며 이제 USB를 제거해도 상관이 없다.

분석은 이 사본으로 하게 될 것이기 때문에…


제대로 생성되었는지 확인해보자.

설정한 디렉토리로 가서 확인을 해보면 이렇게 이미지 사본 파일과

USB안에 데이터 정보들이 담겨있는 csv 파일 그리고

USB메모리에 대한 정보가 담겨있는 txt 파일도 생성이 되어있다.



[생성된 사본 이미지 확인하기]


FTK imager에서 파일 -> 증명 항목 추가 선택


선택하면 이미지 생성때와 마찬가지로 소스 선택 창이 나오는데

이제는 물리적인 디스크가 아닌 이미지 파일을 선택한다.



이미지 파일의 경로를 선택하고 완료를 누른다.



완료를 누르게 되면 이제 이렇게 USB에 담긴 정보들을 볼 수 있게 된다.

왼쪽 창은 윈도우 탐색기 처럼 트리 형식으로 디렉토리를 출력해주며

파일목록에서는 어떠한 파일들이 있는지 보여주며 삭제된 파일들은 X로 표시가 된다.



FTK imager를 이용한 USB 메모리 이미지 사본 생성 완료!!!

반응형

+ Recent posts