Disk Forensic #7 (윈도우 작업 관리자에서 우클릭...)

 

디스크 포렌식 7번 문제

 

주어진 파일을 다운로드 하면 xz라는 확장자로 된 파일을 확인할 수 있다.

 

파일 확장자에 대한 자세한 정보 확인을 위해 리눅스 file 명령어를 통해 확인하였다.

 

[그림 1] file 명령어 사용

 

file 명령어를 통해 확인 결과, 압축된 파일인 것을 확인할 수 있다.

 

압축을 풀어주면, DMP 파일이 생성된다.

 

또 다시 DMP 파일의 자세한 정보를 위해, DMP 파일을 file 명령어로 확인한다.

 

[그림 2] MDMP 파일 확인

 

file 명령어로 확인하게 되면, MDMP(미니 덤프)파일 형식이라는 것을 확인 가능하다.

 

혹시 플래그가 파일의 문자열에 있는 것이 아닌가? 하는 생각이 들어서 strings 검색을 통해 포맷에 맞춰 검색하였다.

 

[그림 3] 플래그 확인

 

grep 명령어를 통해 플래그 포맷대로 검색해보면, 플래그가 검색 형식에 맞게 결과가 나오게 된다.

 

화면에 보이는 것과 같이, 플래그로 입력해주면 문제를 쉽게 해결할 수 있다.


# Reference

 

http://www.yes24.com/Product/Goods/59156934

Disk Forensic #6 (A회사 보안팀은 내부직원...)

 

디스크 포렌식 6번 문제

 

배점은 100점짜리 문제지만, 매우 까다로운 문제다...

 

사용해야 하는 도구도 많고, 시간도 좀 걸리면서 개인적으로 좀 난이도 있는 문제였다.

 

문제에서 제공하는 파일인 evidence.001 파일이 주어진다.

 

해당 파일을 분석하기 위해 FTK Imager 도구를 통해 파일을 분석하였다.

 

FTK Imager 다운로드 : https://accessdata.com/product-download/ftk-imager-version-4-2-1

 

FTK Imager version 4.2.1

AccessData provides digital forensics software solutions for law enforcement and government agencies, including the Forensic Toolkit (FTK) Product.

accessdata.com

 

[그림 1] FTK Imager 파일 타입 선택

 

파일 타입은 Image File을 선택한다.

 

[그림 2] 10개 폴더 디렉토리 

 

NTFS 파일 시스템 하위 디렉토리로 10개나 되는 폴더 디렉토리 구조를 확인하였다.

 

[그림 3] 각 폴더 app 디렉토리 확인

 

위 화면과 같이 10개의 폴더 안에는 app의 어플리케이션 이름으로 된 폴더가 존재한다.

 

그 중에서 Dropbox.app 폴더가 이번 문제의 중요 폴더이다.

 

Dropbox 어플리케이션은 클라우드 프로그램으로 업로드에 사용할 수 있는 기능을 제공한다.

 

따라서 Dropbox.app 폴더의 상위 디렉토리를 분석하였다.

 

[그림 4] 의심스러운 png 파일 발견

해당 폴더를 분석하던 도중, Library/Caches/Snapshots/com.getdropbox.Dropbox 디렉토리에서 다음과 같은 png 파일을 발견하여 확인하였다.

 

자세히 확인해보면 해당 파일에는 업로드 된 것 같이 보이는 pdf 파일을 보여주는 캡처 파일로 확인된다.

 

업로드 되어 유출된 내부 문서로 보이는 S-Companysecurity.pdf 파일에 대해 더 알아보기 위해 다른 폴더들도 분석하였다.

 

[그림 5] cache.db 파일 발견

 

이번에는 Library/Caches 디렉토리에 cache.db 파일이 있다.

 

cache.db 파일은 어플리케이션에 대한 캐시 정보를 담고 있는 파일로, Dropbox.app이 실행되었을 때의 정보가 담겨져 있을 것이라 추측할 수 있다.

 

cache.db 파일을 클릭한 다음, 마우스 우클릭하여 Export Files 기능으로 파일 추출이 가능하다.

 

이제 해당 db 정보를 확인하기 위해 SQLite 데이터베이스 파일의 내용과 구조를 확인할 수 있는 DB Browser for SQLite 도구를 사용하여 분석한다.

 

DB Browser for SQLite 다운로드 : https://sqlitebrowser.org/dl/

 

Downloads - DB Browser for SQLite

Windows Our latest release (3.11.2) for Windows: Note - If for any reason the standard Windows release does not work (e.g. gives an error), try a nightly build (below). Nightly builds often fix bugs reported after the last release. 😄 macOS Our latest relea

sqlitebrowser.org

 

[그림 6] cache.db 파일 오픈

 

테이블 구조를 살펴보면 data_cache와 local_files_cache가 있다.

 

이 중에서 data_cache 테이블을 데이터 보기 기능을 통해 확인해보면 다음과 같다.

 

[그림 7] 데이터 보기 기능

 

총 5가지의 정보들 중에, 4번째인 tim_folder에 관한 plist 파일 내용을 확인할 수 있었다.

 

[그림 8] tim_folder 데이터

 

plist 파일은 OS, X, iOS 프로그래밍에 이용되는 객체 직렬화 파일이다.

 

사용자 설정이나 어플리케이션 정보 등이 저장되며, 위 데이터는 Base64로 인코딩 된 내용으로 확인된다.

 

위 Base64로 인코딩 된 plist 파일의 내용을 확인할 수 있는 기능을 제공하는 Plist Editor Pro를 이용하여 분석하였다.

 

Plist Editor Pro 다운로드 : https://softfamous.com/plist-editor-pro/

 

plist Editor Pro Free Download for Windows 10, 7, 8 (64 bit / 32 bit)

Three classes of operating system dominate the world of personal computing. The Windows OS dominates by over 90% share of the market, the Mac OS that takes about 7% of the remainder and the many others that strives to get

softfamous.com

 

[그림 9] Plist List View

 

Plist Editor를 실행 후에, List View로 들어가서 Root를 클릭하면 자세한 정보를 볼 수 있다.

 

[그림 10] 자세한 정보 확인

 

위와 같이 Base64 인코딩 데이터가 디코딩 되어 나온다.

 

문제를 해결하기 위해, 검색 기능(Ctrl + F)을 통해 S-Companysecurity.pdf를 검색한다.

 

[그림 11] 시간 확인

 

위 화면과 같이 S-Companysecurity.pdf 문자열 위로 두 개의 NS.time이라는 시간 정보로 보이는 항목이 확인된다.

 

두 개의 NS.time은 문제에서 제시한 업로드 시간과 수정 시간의 정보로 추측해볼 수 있다.

 

[그림 12] 파일 크기 확인

 

또한, 2.1MB 문자열을 통해 파일의 크기도 확인 가능하다.

 

이제 시간 정보에 대한 자세한 내용 확인을 위해 다시 FTK Imager에서 상위 폴더를 더 분석한다.

 

[그림 13] Dropbox.sqlite 파일 발견

 

위에서 분석했던 상위 폴더에서 Document 디렉토리 안에 Dropbox.sqlite라는 파일을 발견하였다.

 

확장자가 sqlite이므로 DB Browser for SQLite 도구를 통해 분석이 가능하다.

 

[그림 14] Dropbox.sqlite 파일 오픈

 

테이블을 확인해보면, ZCACHEDFILE / Z_METADATA / Z_PRIMARYKEY 이렇게 3가지의 테이블이 존재한다.

 

여기서 중요한 것은, ZCACHEDFILE 테이블의 여러 칼럼 내용을 확인하면 S-Companysecurity.pdf의 시간 정보 확인이 가능하다.

 

[그림 15] ZMODIFIEDDATE

 

위에서 확인하였던 378291354를 확인하였다.

 

그리고 ZPATH에서 S-Companysecurity.pdf 파일의 정보가 맞는 것은 확인하였다.

 

정리해보면, 수정 시간이 업로드 시간 이전일 수 밖에 없기 때문에 위에 보이는 378291354가 업로드 시간이며, 위에서 확인한 357554798이 수정 시간인 것으로 확인된다.

 

이제 위 숫자들을 문제에서 요구하는 UTC+09:00 시간으로 구해주면 플래그로 입력할 수 있다. (힘들다...)

 

위 숫자를 시간으로 변경하기 위해 Dcode 프로그램을 사용하였다.

 

Dcode 다운로드 : https://www.digital-detective.net/dcode/

 

DCode™ | Digital Detective

DCode™ is a simple utility for converting the hex and integer values found by investigators during a forensic investigation into readable timestamps.

www.digital-detective.net

 

[그림 16] 수정 시간 확인

 

Decode Format을 MAC Time으로 설정한 후에, value to Decode에 해당 숫자를 입력한 다음, Decode 버튼을 눌러주면 해당 년도, 날짜, 시간 등 확인이 가능하다.

 

[그림 17] 업로드 시간 확인

 

정리하자면, 수정 시간은 2012/05/01 17:46:38이고, 업로드 시간은 2012/12/27 17:55:54 그리고 파일은 S-Companysecurity.pdf 파일이며, 파일 크기는 2.1MB라는 것을 확인하였다.

 

위 내용을 플래그 포맷에 맞게 입력하시면 문제를 해결할 수 있다.

 

(100점 문제 치고는 좀 까다롭고, 시간 소비가 큰 문제였다...)


# Reference

 

http://www.yes24.com/Product/Goods/59156934

Disk Forensic #4, #5 (판교 테크노밸리 K기업에서 #1, #2)

 

디스크 포렌식 4번 문제

 

디스크 포렌식 5번 문제

 

이번 문제는 디스크 포렌식 4번, 5번이 이어져 있는 문제이다.

 

웹 브라우저의 History에는 접속한 URL, 접속 횟수, 마지막 접속 시간, 접속 페이지 등의 여러 정보가 있다.

 

Internet Explorer는 Index.dat 파일에 History가 저장되는데, Windows 운영체제 버전에 따라서 저장되는 디렉토리가 각각 다르다.

 

Windows 버전

History 디렉토리

2000 / XP

C:\Documents and Settings\<username>\Cookies\Index.dat

C:\Documents and Settings\<username>\Local Setting\History\History\History.IE6\Index.dat

 

C:\Documents and Settings\<username>\Local Settings\Temporary Internet Files\Content.IE6\Index.dat

Vista 7

C:\Users\<username>\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.IE5\Index.dat

C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Cookies\Index.dat

 

C:\Users\<username>\AppData\Local\Microsoft\History\History.IE5\Index.dat

IE v10 이상

C:\User\<username>\AppData\Local\Microsoft\Windows\WebCache\WebCacheV01.dat

 

C:\User\<username>\AppData\Local\Microsoft\Windows\WebCache\WebcacheV24.dat

위 표를 참고하여 운영체제 버전 별로 Index.dat 파일 디렉토리를 확인할 수 있다.

 

Internet Explorer 10 이상 버전부터는 WebcacheV01.dat와 같은 형식의 파일에 기록을 저장한다.

 

이제 경로를 확인하였으니, 본격적으로 문제 풀기에 들어간다.

 

먼저 주어진 2012_Secuwave F200.7z 파일의 압축을 풀게 되면 다음과 같은 폴더들이 존재한다.

 

[그림 1] 사용자 계정 7ester

 

확인 되는 사용자 계정은 7ester라는 폴더가 존재하며, 용의자의 계정으로 추측해볼 수 있다.

 

사용자 계정으로 들어가게 되면, 다음과 같은 여러 폴더들이 존재한다.

 

[그림 2] 7ester 하위 디렉토리

 

웹 브라우저의 공통 경로인 <username>\AppData\Local 디렉토리를 확인해보면 Internet Explorer외에 다른 웹 브라우저의 흔적을 찾을 수 없다.

 

따라서 Internet Explorer 아티팩트 분석을 통하여 문제를 해결해야 한다.

 

[그림 3] 용의자 사용 웹 브라우저 확인

 

Google Chrome은 <username>\AppData\Local\Google\Chrome 디렉토리로 사용 여부를 식별 가능,

Apple Safari는 <username>\AppData\Local\Apple Computer\Safari 디렉토리로 사용 여부를 식별 가능 

 

[그림 4] WebcacheV24.dat 파일 확인

 

위 표에서 정리해놓은 디렉토리를 바탕으로 분석해보면, C:\User\<username>\AppData\Local\Microsoft\Windows\WebCache 디렉토리에서 WebcacheV24.dat 파일을 찾을 수 있었으며, 용의자는 Internet Explorer 버전 10 이상을 사용했음을 확인할 수 있다.

 

Internet Explorer 10 버전 이상은 IE10Analyzer.exe 도구를 사용하여 웹 사용 기록을 분석할 수 있다.

 

 

IE10Analyzer.exe 다운로드 : http://moaistory.blogspot.com/2016/07/internet-explorer-10-microsoft-edge.html

 

Internet Explorer 10, 11, Microsoft Edge Forensic Tool

IE10Analyzer Download Link : Click this 1. Introduction  Since 1994, a database engine developed by Microsoft, called Extensible Stora...

moaistory.blogspot.com

[그림 5] IE10Analyzer 메인 화면

 

먼저 도구의 File 메뉴를 눌러 Open을 선택하여 분석할 Internet Explorer 아티팩트의 경로를 설정한다.

 

[그림 6] IE10Analyzer.exe 아티팩트 경로 설정

 

파일 경로는 2012_SecuwaveF200\Users\7ester\AppData\Local\Microsoft\Windows\WebCache\WebcacheV24.dat로 설정한다.

 

[그림 7] UTC+9 시간 설정

 

문제에서 UTC+9 시간대로 접근 시간을 요구하였으므로 도구의 분석 시간도 똑같이 설정한다.

 

[그림 8] 가장 많이 접근한 사이트의 URL, 마지막 접근 시간 확인

 

시간대를 설정한 다음, 왼쪽 Table 탭에서 History(M) 항목을 선택하면 접속했던 URL에 관한 접속 횟수와 마지막 접근 시간, URL, 웹 페이지 정보 등 다양한 정보 확인이 가능하다.

 

목록에서 AccessCount(접속 횟수)가 가장 높은 519에 해당하는 정보를 보면 문제에서 요구하는 가장 많이 접근 했던 사이트의 URL과 마지막 접근 시간 확인이 가능하다.

 

[그림 9] 가장 많이 접근한 사이트 URL 확인

 

[그림 10] 마지막 접근 시간 확인

 

위 화면과 같이 자세한 내용을 확인하여 문제에서 제시한 플래그 포맷대로 입력하게 되면 문제를 해결할 수 있다.


# Reference

 

http://www.yes24.com/Product/Goods/59156934

Disk Forensic #1, #2, #3 (이벤트 예약 웹사이트를 운영하고... #A, #B, #C)

 

디스크 포렌식 1번 문제

 

디스크 포렌식 2번 문제

 

디스크 포렌식 3번 문제

 

이번 문제는 1개의 파일로 디스크 포렌식 1번부터 3번까지 진행하는 문제이다.

 

1번 문제에서 주어진 파일을 열게 되면 디렉토리와 각 디렉토리에 해당하는 로그 파일들이 존재한다.

 

[그림 1] 디렉토리 및 로그 파일 내용

 

가장 먼저 accounts 디렉토리로 들어간다.

 

[그림 2] accounts 디렉토리 로그 파일

 

여기서 중요한 로그 파일은 바로 history 로그 파일이다.

 

history 로그 파일에서 사용자가 실행했던 명령어에 대한 기록을 확인할 수 있다.

 

Sublime Text3를 통해 history 파일을 열어 확인하였다.

 

[그림 3] history 로그 파일 확인

 

여기서 중요 내용은 해당 로그에서 /var/www/upload/editor/image라는 특정 디렉토리에 파일 접근 권한을 777로 하여 모든 접근 권한을 허용하도록 한 내용을 의심해볼 수 있다.

 

[그림 4] process 디렉토리 로그 파일

 

그래서 /var/www/upload/editor/image 디렉토리를 기반으로 분석한 결과, process 디렉토리의 ps_eaf 로그 파일을 분석하던 도중에 이상한 점을 발견하였다.

 

[그림 5] ps_eaf 로그 파일 확인

 

ps_eaf 로그 파일에서 reverse.php를 통한 리버스 쉘로 의심되는 프로세스를 확인할 수 있다.

 

해당 프로세스의 PID는 5245이다.

 

[그림 6] network 디렉토리 로그 파일

 

다음은 network 디렉토리의 lsof 로그 파일이다.

 

lsof 로그는 열려 있는 파일에 대한 프로세스 정보를 포함하고 있다.

 

[그림 7] lsof 로그 파일 확인

 

ps_eaf에서 찾은 PID 5245를 이용하여 분석한 결과, 해당 프로세스를 수행함으로써 특정 IP 144.206.162.21:www와 연결됨을 확인할 수 있다.

 

결론적으로 공격자가 /var/www/upload/editor/image/reverse.php를 사용하여 리버스 쉘을 동작시킨 것을 확인할 수 있다.

 

이제 공격자가 웹페이지 소스코드를 유출했다는 점에서 php, html, zip 등 관련된 파일 확장자를 업로드하거나 전송한 흔적을 확인하면 문제를 해결할 수 있을 것 같다.

 

[그림 8] weblog 디렉토리 로그 파일

 

마지막으로 weblog 디렉토리에 있는 access.log 텍스트 파일을 확인한다.

 

access.log 텍스트 파일 안에 공격자가 웹사이트에서 요청했던 기록이 있는지 분석하였다.

 

먼저 위에서 찾은 /upload/editor/image 디렉토리 키워드를 통해 분석한다.

 

[그림 9] access.log 파일 확인

 

분석 결과,  jpg와 같은 사진/그림 파일 확장자를 가진 파일을 확인할 수 있었으며,

 

[그림 10] 이상한 내용 확인 1

 

[그림 11] 이상한 내용 확인 2

 

[그림 12] 이상한 내용 확인 3

 

cmd.php라는 파일의 흔적도 확인할 수 있었다.

 

그리고 cmd.php 뒤로 위 이상한 내용에서 볼 수 있듯이 인코딩 된 데이터 값을 확인할 수 있다.

 

인코딩 된 데이터 값을 확인하기 위해, Base64로 디코딩하였다.

 

Base64 디코딩 사이트 : https://www.base64decode.org/

 

Base64 Decode and Encode - Online

Decode from Base64 or Encode to Base64 with advanced formatting options. Enter our site for an easy-to-use online tool.

www.base64decode.org

 

[그림 13] Base64 디코딩 진행

 

위 화면과 같은 형식으로 나머지 2개의 값도 진행해보면 다음과 같은 결과 값을 볼 수 있다.

 

[그림 14] Base64 디코딩 결과

 

디코딩 결과를 보면 공격자는 /var/www/upload/editor/image 디렉토리에 관련 자료를 확인한 후에, tar 명령어로 압축하였고, reverse.php를 실행 시켜 유출한 것을 추측할 수 있다.

 

결론적으로 reverse.php를 동작시킨 시간 25/Aug/2012:17:26:40+0900을 웹페이지 소스코드 유출 시간으로 볼 수 있다.

 

따라서 지문에서 제시한 웹페이지 소스코드 유출 시간(UTC+09:00), 리버스쉘 프로세스 ID(PID), 리버스쉘 공격자 주소(IP)를 모두 확인할 수 있으며, 각 문제에서 제시하는 플래그를 입력하게 되면 3문제 모두 해결할 수 있다.


# Reference

 

http://www.yes24.com/Product/Goods/59156934

[Tool] FTK Imager

FTK Imager


(1) FTK Imager란?

  • 포렌식의 가장 기본이 되는 도구로, 디스크 이미징 작업에 많이 활용

  • 이 외에도 이미징 작업에 많이 쓰이는 소프트웨어로 EnCase와 dd 도구가 있으며, 물리적 하드디스크 이미징 전용 장비로는 Road Master, Rapid Image 등

 

1-1. 논리적 이미징과 물리적 이미징

  • 논리적 이미징 방식은 다른 하드디스크에 이미지 파일 (001,dd 등 확장자)로 저장이 되며, 실제 하드디스크와 같은 용량을 차지

  • 물리적 이미징 방식은 하드디스크를 다른 하드디스크에 그대로 복제하는 것을 말하며, 복사될 하드디스크는 원본 디스크보다 용량이 같거나 커야 됨

  • 논리적 방식과 물리적 방식 모두 복사될 하드디스크는 충분한 와이핑 후 복사를 해야 무결성을 지킬 수 있음

※ 디스크 와이핑 : 하드디스크나 메모리 등 저장매체에 기록된 데이터를 완전히 소거하는 논리적인 방법

 

 

FTK Imager 다운로드 : https://accessdata.com/product-download/ftk-imager-version-4-2-1

 

FTK Imager version 4.2.1

AccessData provides digital forensics software solutions for law enforcement and government agencies, including the Forensic Toolkit (FTK) Product.

accessdata.com

FTK Imager는 제작사 다운로드 페이지에서 이름과 이메일 주소를 등록하면 다운로드 링크를 등록한 이메일로 보내준다.

 

 

1-2. FTK Imager 인터페이스

 

[그림 1] FTK Imager 인터페이스

 

  • Evidence Tree : 계층적 트리구조로 추가한 증거 항목을 보여줌

  • File List : Evidence Tree에서 선택된 항목에 있는 파일과 폴더를 보여줌

  • Viewer : Preview Mode 옵션인 Natural, Text, Hex 선택에 따라 선택된 파일의 내용을 보여줌

  • Custom Content Sources : 이미지에 포함된 내용을 보여줌

  • Properties / Hex Value interpreter : Evidence Tree나 File List에서 선택된 객체의 다양한 정보를 보여주고, 뷰어에 선택된 16진수 값을 10진수와 가능한 날짜, 시간 값으로 변환 가능


1) 이미징 생성

 

 

[그림 2] File > Add Evidence Item

 

[그림 3] Select Source

 

FTK Imager 상단의 File > Add Evidence Item 메뉴를 클릭하거나, File 메뉴 바로 아래에 있는 플러스 아이콘을 클릭하면 위와 같은 화면이 나오게 된다.

 

  • Physical Drive : 실제 물리적으로 연결된 하드 드라이브의 목록을 보여줌

  • Image File : 이미징 된 파일들을 불러올 수 있는 메뉴

  • Logical Drive : 논리 드라이브를 보여줌

  • Contents of a Folder : 폴더를 선택할 때 사용

 

[그림 4] 증거 추가 화면

 

Physical Drive를 눌러 원하는 물리적인 하드 드라이브를 FTK Imager에 마운팅 시켜보도록 하자.

 

실제 물리적인 하드 드라이브를 마운팅한 다음, Evidence Tree에 원하는 파티션 또는 물리적 드라이브를 선택하고 우클릭을 하면  위와 같은 화면이 나오게 되면서 총 5가지의 메뉴가 나타난다.

 

  • Remove Evidence Item : 추가한 아이템을 제거

  • Verify Drive/Image : 검증을 위한 작업이 실행됨

  • Export Disk Image : 이미징 작업을 위한 메뉴

  • Image Mounting : 실제 마운팅을 실행 시켜주는 작업 메뉴

  • Export Directory Listing : 해당 드라이브의 모든 파일과 폴더 구조를 추출해주는 메뉴

 

[그림 5] 증거 추출 기본 화면

 

Export Disk Image 메뉴를 선택하면 위와 같은 화면이 나타나게 된다.

 

Add 메뉴를 누르기 전에,  Add 아래에 있는 Verify images after they are created 메뉴를 선택하여 이미지 검증을 진행해야 한다. (디지털 포렌식에서 무결성은 매우 중요하기 때문에)

 

[그림 6] 이미지 타입 선택

 

Add 메뉴를 누르게 되면 저장할 이미지 타입이 나오게 된다.

 

특정 상황을 제외하고는 기본적으로 Raw (dd)나 E01 파일을 주로 선택한다.

 

[그림 7] 사건 번호 / 분석관 등 내용

 

다음을 누르면 사건 번호나 증거 번호, 분석관, 메모 등 여러 정보들을 기술하는 화면이 나온다.

 

선택 사항이므로 기술하고 싶은대로 기술하면 된다.

 

[그림8] 저장 위치 / 이미지 이름 / 암호화

 

다음을 누르면 저장 경로와 저장할 이름, 암호화 여부에 대한 화면이 나온다.

 

Image Fregment Size를 통해 분할 저장될 크기가 정해지므로, 용량이 작은 디스크라면 0으로 두어 하나의 파일로 이미징이 되도록 한다.

 

경로와 이미지 이름, 기타 내용을 모두 확인한 뒤에 Finish 버튼을 누르면 이미징이 시작되고 하나의 이미지 파일과 해쉬 값, 증거 번호 등이 적힌 텍스트 파일이 생성된다.


# Reference

 

http://www.yes24.com/Product/Goods/38136197

'Tool' 카테고리의 다른 글

[Tool] Volatility  (0) 2020.05.22
[Tool] 디지털 포렌식 유용 도구 소개 (Digital Forensics Tool)  (0) 2020.05.11
[Tool] HxD Editor  (0) 2020.03.01

[Tool] HxD Editor

HxD


(1) HxD란?

  • 일반 텍스트 타입 파일은 텍스트 편집기를 이용하여 쉽게 확인할 수 있지만, 대부분 파일 내부에는 텍스트가 아닌 데이터로 존재

  • HxD는 이진 파일을 읽을 수 있는 무료 에디터 프로그램으로 사용법이 쉽고 간단하여 널리 사용

  • 주로 사용되는 기능은 파일이나 이미지의 특정 섹터를 확인하거나 수정할 때 사용

 

HxD Editor 다운로드 : https://mh-nexus.de/en/hxd/

 

HxD - Freeware Hex Editor and Disk Editor | mh-nexus

HxD - Freeware Hex Editor and Disk Editor HxD is a carefully designed and fast hex editor which, additionally to raw disk editing and modifying of main memory (RAM), handles files of any size. The easy to use interface offers features such as searching and

mh-nexus.de

 

HxD 인터페이스 (메뉴바, 작업창)

 

[그림 1] HxD 인터페이스

 

  • 파일(File) : 파일의 열기, 저장, 인쇄가 가능한 메뉴

  • 편집(Edit) : 파일의 복사, 붙여넣기 등이 가능한 메뉴

  • 찾기(Search) : 찾기, 찾아 바꾸기, 특정 오프셋으로 이동 등 설정 가능

  • 보기(View) : 화면에 표시되는 데이터 표현(아스키, 16진수 등) 설정 가능

  • 분석(Analysis) : 파일의 해시 값 분석 및 두 개의 파일을 비교 가능

  • 기타 설정(Extras) : 물리적 장치와 이미지 분석 때 사용되는 메뉴


1.  분석 대상 열기

 

[그림 2] 분석 파일 열기

 

[그림 3] 디스크 이미지 열기

 

HxD 에디터는 파일, 물리 디스크, 이미징 된 파일을 읽을 수 있다.

 

먼저 파일을 분석하려면 위 화면대로 파일 > 열기 메뉴로 열 수 있지만, 포렌식 분석을 위해서는 기타 설정 메뉴를 이용한다.

 

  • 램 : 기타 설정(Extras) > RAM 열기(Open RAM)

  • 물리 디스크 : 기타 설정(Extras) > 디스크 열기(Open Disk)

  • 디스크 이미지 : 기타 설정(Extras) > 디스크 이미지 열기(Open Disk Image)

 

[그림 4] 섹터 크기 입력

 

처음 파일을 열면 1섹터 당 몇 바이트인지 물어보게 된다.

 

보통 512바이트이기 때문에 512로 선택하고 수락을 누르면 섹터 단위로 이동하기가 편리하다.

(크기는 원하는 바이트 단위로 바꿔도 된다.)

 

 

2. 섹터 이동과 수정

 

[그림 5] Hex 값 변경

섹터 이동은 섹터 입력 폼에서 이동하고 싶은 섹터 숫자를 직접 입력하여 이동할 수 있고, 원하는 위치의 Hex 값으로 수정이 가능하다.

 

[그림 6] Hex 복사 & 붙여넣기

 

또한, 원하는 섹터를 블록 지정하여 복사한 뒤에 붙여넣기 쓰기(Paste Write)를 통해 덮어쓰기도 가능하며 붙여넣기 삽입(Paste Insert)으로 삽입도 가능하다.

 

 

3. 특정 영역 일괄 블록 지정

 

[그림 7] 편집 > 블록 선택

 

[그림 8] 블록 선택 창

 

[그림 9] 블록 선택 또 다른 방법

 

일괄 블록 지정은 편집 > 블록 선택이나 왼쪽 하단에 위치한 블록을 클릭하여 오프셋 시작(Start-offset)과 오프셋 종료(End-Offset)으로 지정한다.

 

이 기능은 파일이나 디스크 복구 등 많은 섹터 영역을 지정해야 할 때 유용하게 사용된다.

 

 

4. 특정 영역 일괄 바꾸기

 

[그림 10] 편집 > 선택 채우기

 

[그림 11] 일괄 바꾸기

 

일괄 바꾸기(선택 채우기)는 바꾸고자 하는 영역을 드래그 한 후 편집 > 선택 채우기(Fill selection)으로 지정된 블록 영역을 원하는 값으로 모두 바꿀 수 있다.


# Reference

 

http://www.yes24.com/Product/Goods/38136197

'Tool' 카테고리의 다른 글

[Tool] Volatility  (0) 2020.05.22
[Tool] 디지털 포렌식 유용 도구 소개 (Digital Forensics Tool)  (0) 2020.05.11
[Tool] FTK Imager  (0) 2020.03.01

+ Recent posts