디지털 포렌식의 첫걸음: 이미지는 어떻게 만들까? – 1편

들어가며

디지털 포렌식은 정보보안 분야에서 점점 중요해지고 있는 기술입니다. 이 기술은 범죄 수사부터 기업 내부 조사, 네트워크 침입, 악성 코드 분석에 이르기까지 다양한 분야에서 활용됩니다. 디지털 포렌식의 가장 기초적인 단계는 ‘포렌식 이미지’를 생성하는 것입니다. 이것은 데이터 저장 장치의 비트-바이-비트, 물리적 복사본을 만드는 과정입니다. 이 글에서는 디지털 포렌식의 정의와 더불어 포렌식 이미지를 생성하는 몇 가지 방법에 대해 상세하게 알아보겠습니다.

디지털 포렌식이란?

디지털 포렌식(Digital Forensics)은 컴퓨터 시스템, 네트워크, 또는 디지털 디바이스에서 발생한 범죄나 부정행위에 대한 증거를 찾고 분석하는 과학적 연구 분야입니다. 이는 사이버 보안 분야의 한 지류로, 인터넷 침해 조사, 데이터 복구, 맬웨어 분석, 라이선스 피해 복구, 법적 문제 등에 사용됩니다.

  1. 포렌식 분석의 무결성: “포렌식 사운드(forensically sound) 이미지”라는 용어는 이 분야에서 아주 중요하며, 이는 원본 데이터가 왜곡되거나 변조되지 않았음을 확실하게 보장하는 것을 의미합니다.
  2. 암호학적 해시 함수: MD5, SHA-1과 같은 해시 함수를 사용해 원본 데이터와 복제된 데이터가 정확히 일치하는지 검증합니다.
  3. Kerberos 인증: 고급 보안 프로토콜을 사용하여 네트워크 트래픽과 데이터 접근을 모니터링하고 검증합니다.
  4. Steganography: 은닉코드나 은닉 메시지를 감지하는 기술입니다.
  5. 메타데이터 분석: 파일의 메타데이터를 통해 해당 파일이 언제 생성되고, 수정되었는지 등을 추적합니다.
  6. RAM 분석: 작업 중인 메모리를 분석하여 현재 시스템에서 실행 중인 프로세스, 네트워크 연결, 로드된 DLL 등을 확인합니다.
  7. 헥사 에디터: 이진 파일을 직접 수정할 수 있어, 고급 분석에 꼭 필요한 도구입니다.
  8. 시간라인 분석: 주요한 로그 파일, 시스템 이벤트, 네트워크 트래픽 등을 시간 순으로 배열하여 이상 행동이나 침입을 감지합니다.
  9. 법률적 적합성: 모든 분석 과정과 결과는 법적인 프로세스를 준수해야 하며, 증거의 연속성(Chain of Custody)이 유지되어야 합니다.

디지털 포렌식은 끊임없이 진화하고 있는 분야로, 새로운 암호화 기술, 소셜 미디어, 클라우드 컴퓨팅 등에 대응하기 위해 지속적인 연구와 개발이 이루어지고 있습니다.

포렌식 이미지란?

포렌식 이미지란 디지털 디바이스의 데이터를 완전히 복제한 파일 또는 데이터 세트를 의미합니다. 이는 디지털 포렌식의 초기 단계에서 중요한 역할을 하며, 주로 “데이터 아쿠지션(Data Acquisition)” 또는 “디스크 이미징(Disk Imaging)” 과정을 통해 생성됩니다. 포렌식 이미지는 일반적인 데이터 백업과 다르게, 파일 시스템의 메타데이터, 삭제된 파일, 미할당 영역(unallocated space)까지 포함하는 것이 일반적입니다.

  1. 무결성 보장: 포렌식 이미지 작성 시 ‘포렌식 사운드(Forensically Sound)’ 원칙을 준수해야 합니다. 이는 원본 데이터에 아무런 변화도 주지 않으면서 완벽하게 복제되어야 함을 의미합니다.
  2. 블록 레벨 복사(Block-Level Copy): 디바이스의 각 블록을 정확히 복사하는 방법으로, 데이터의 무결성을 최대한 보장합니다.
  3. 암호학적 해시(Hashing): SHA-256, MD5 등의 해시 알고리즘을 이용하여 원본과 복제본의 일치성을 검증합니다.
  4. Write Blocker: 데이터를 복사할 때 ‘쓰기 차단기’를 사용하여 원본 데이터에 변경이 일어나지 않도록 보호합니다.
  5. EWF(E01) 형식: Encase Forensic에서 사용하는 포렌식 이미지 파일 형식으로, 복잡한 메타데이터와 해시 값, 압축 등을 지원합니다.
  6. AFF(Advanced Forensic Format): 다양한 파일 시스템과 플랫폼에 대응 가능한 포렌식 이미지 형식입니다.
  7. 데이터 캐러빙(Data Carving): 포렌식 이미지에서 파일 구조나 메타데이터가 없는 원시 데이터를 추출하는 과정을 의미합니다.
  8. Chain of Custody: 모든 분석 과정에서 증거의 연속성을 유지해야 하며, 이를 문서화하는 것이 필수입니다.
  9. 분석 도구: Autopsy, FTK, Encase 등 다양한 디지털 포렌식 소프트웨어가 포렌식 이미지 분석에 사용됩니다.

포렌식 이미지는 법적 문제 해결에 있어 매우 중요한 역할을 하므로, 이에 대한 정확한 이해와 적절한 활용이 요구됩니다.

Linux/UNIX dd 명령어로 이미지 캡처하기

1. USB 플래시 드라이브 인식하기

먼저, 시스템에 연결된 스토리지 장치를 확인하려면 fdisk -l 명령어를 사용합니다.

kali > fdisk -l

이 명령어를 실행하면, 여러 장치의 정보가 나타납니다. /dev/sdb1와 같이 USB 드라이브가 어떻게 표현되는지 찾아봅니다.

2. dd 명령어 실행하기

이제 dd 명령어를 사용해 복사를 시작합니다.

kali > dd if=/dev/sdb of=usbimage.dd

여기서 if는 ‘Input File’을 의미하며, of는 ‘Output File’을 의미합니다. 이 명령어를 실행하면 usbimage.dd라는 파일에 USB 드라이브의 데이터가 비트 단위로 복사됩니다.

dcfldd를 이용한 고급 이미지 캡처

dcfldd는 표준 dd 명령어에 몇 가지 포렌식 관련 기능을 추가한 것입니다.

1. 해싱 옵션

kali > dcfldd if=/dev/sdb of=usbimage2.dd hash=md5 hashlog=usbimage.log

이 명령어를 통해 이미지 파일을 생성하면서 동시에 MD5 해시도 생성합니다. 해시값은 usbimage.log에 저장됩니다.

2. 상태 확인과 로그

dcfldd는 진행 상태를 보여주므로, 어떤 과정이 진행되고 있는지 쉽게 확인할 수 있습니다.

FTK Imager를 사용한 이미지 캡처

FTK Imager는 GUI가 있는 프로페셔널 도구로, 복잡한 과정 없이도 강력한 기능을 제공합니다.

FTK Imager Main

1. FTK Imager 실행과 설정

프로그램을 실행한 후, “File” 메뉴에서 “Create Disk Image”를 선택합니다. 그리고 “Physical Drive”를 선택하여 원하는 드라이브를 지정합니다.

Create Disk image
Physical Drive

이 작업은 소스 드라이브 위치를 선택하라는 새 창을 엽니다. 여기에서 저는 “General USB Flash Disk”를 선택했습니다.

Source Drive Selection

장치를 선택한 후에는 “Finish”를 클릭하세요.

다음으로 “Image Destination”(이미지 저장 위치)을 입력하라는 메시지가 나옵니다. “Add”를 클릭하세요. 또한, 왼쪽 하단에 이미지가 생성된 후에 검증하고 싶다고 표시했음을 주목해 주세요.

Image Destination

그런 다음에 어떤 유형의 이미지를 만들고 싶은지 묻는 메시지가 나올 것입니다. “Raw(dd)” 이미지를 선택하세요.

6a4a49 69c273ec88494334b3a470d3daf4ae57mv2

2. 케이스 정보와 이미지 생성

생성할 이미지에 대한 케이스 번호, 증거 번호, 설명, 조사자 이름 등을 입력합니다. 이 정보는 나중에 분석할 때 중요한 메타데이터가 됩니다.

Item Information

이 양식을 적절히 작성한 후에 ‘Next’를 누르세요. 다음으로 이미지 저장 위치를 지정하라는 메시지가 나올 것입니다. 여기서는 제가 특별히 포렌식 이미지를 위한 폴더를 ‘c:\forensic images’라는 이름으로 만들었습니다. 또한 이미지 파일의 이름을 ‘firstimage.dd’로 지정했습니다.

Firstimage.dd

3. 이미지 생성 시작

모든 정보를 입력한 후 “Start”를 클릭하면, FTK Imager가 지정한 위치에 이미지 파일을 생성하기 시작합니다. 성공적으로 완료되면 해시 값도 함께 제공되므로, 이미지의 무결성을 확인할 수 있습니다.

Start

FTK Imager는 이제 지정한 파일로 장치의 데이터를 비트 단위로 복사하는 시간이 오래 걸리는 과정을 시작할 것입니다.

Creating Image

성공적으로 완료되면 작업이 중지되고 상태 창에서 “Image created successfully”라고 표시될 것입니다. 그런 다음 새로 생성된 이미지가 원본과 동일한지 확인을 시작할 것입니다. 이 작업은 다소 시간이 걸릴 수 있으니 인내심을 가지고 기다려 주세요.

end

마지막으로 이미지 검증이 완료되면 “Image Summary”를 클릭하세요. 그러면 이미지에 대한 요약 통계가 나타나는 창이 열릴 것입니다. 이 요약 통계에는 아래와 같이 중요한 해시 값들도 포함되어 있을 것입니다.

6a4a49 c27b7df4f14942f0bc3aad15ad1d8fa4mv2

결론

이번 튜토리얼을 통해 디지털 포렌식에서 가장 기본적이면서도 중요한 단계인 ‘포렌식 사운드 이미지’를 생성하는 세 가지 대표적인 방법을 알아보았습니다. Linux/UNIX의 dd 명령어, dcfldd, 그리고 FTK Imager를 활용한 방법입니다. 각 방법은 그 특성과 활용도에 따라 다르게 사용될 수 있으며, 필요에 따라 선택하면 됩니다. 이 단계는 어떤 디지털 포렌식 조사에서도 가장 먼저 이루어져야 하며, 이 과정에서 오류가 발생한다면 그 후의 모든 조사가 무용지물이 될 수 있습니다. 따라서 이 단계를 정확하게 수행하는 것은 매우 중요합니다. 이제 이 기술을 활용하여 다양한 디지털 포렌식 분야에서 더 나은 전문가가 될 수 있을 것입니다.

추가 팁

  1. 이미지를 캡쳐할 때는 가능하면 해당 장치를 다른 작업으로 사용하지 않는 것이 좋습니다. 이는 데이터의 무결성을 유지하기 위함입니다.
  2. 고급 사용자의 경우, 자동화 스크립트를 사용하여 이러한 작업을 더 효율적으로 수행할 수 있습니다. 하지만 이 경우에도 기본적인 원칙과 절차를 지키는 것이 중요합니다.
  3. 해시 값은 중요한 데이터의 무결성을 검증하는 도구이므로, 가능하면 여러 가지 알고리즘으로 해시 값을 생성하고 이를 저장해 두는 것이 좋습니다.

이러한 팁과 가이드라인을 따르면 디지털 포렌식 분야에서 더욱 전문적인 업무 수행이 가능할 것입니다.

[Reference]
1. Digital forensics (interpol.int)

[관련글] 정보보안 | Tech Hyeonker

8 thoughts on “디지털 포렌식의 첫걸음: 이미지는 어떻게 만들까? – 1편”

  1. Normally I do not read article on blogs however I would like to say that this writeup very forced me to try and do so Your writing style has been amazed me Thanks quite great post

    응답
  2. Thank you! I’ve been searching for information on this topic for a while, and yours is the best I’ve found so far. However, what about the key details? Are you confident about the source?

    응답
  3. I just could not leave your web site before suggesting that I really enjoyed the standard information a person supply to your visitors Is gonna be again steadily in order to check up on new posts

    응답
  4. Simply desire to say your article is as surprising The clearness in your post is simply excellent and i could assume you are an expert on this subject Fine with your permission let me to grab your feed to keep up to date with forthcoming post Thanks a million and please carry on the gratifying work

    응답

댓글 남기기