2. 섹터와 사본 이미지 생성

이번장은 단순 이론으로 실기에 크게 중요한 내용은 없으니 편하게 읽어만 보고 가는 장입니다.

1. 저장매체와 섹터

  • 저장매체는 bit를 저장할 수 있는 다양한 기기를 저장매체라고 합니다. HDD, SSD, USB 등등...

  • 사실 섹터의 어원은 HDD라는 원판에 데이터가 물리적으로 저장되는 조각난 영역인데 SSD, USB 등 원판과 상관없는 저장매체를 분석할 때에도 섹터라는 용어로 사용합니다. 실제로는 SSD와 같은 메모리 칩에서 물리적으로 저장되는 영역은 블록이라는 개념을 사용하지만, 그래도 이미 섹터라는 용어를 많이 사용해서 그런지 포렌식 도구 등에서 저장매체에서 512Bytes 단위로 나눠서 저장하는 부분을 모두 섹터로 표시하는 용어로 활용하고 있습니다.

  • 저장매체에서 저장영역을 512바이트 단위로 짤라서 0번부터 마지막까지 번호를 붙여 활용합니다. 0번 섹터 ~ 99 섹터, 100개의 섹터를 가진 저장매체의 저장가능 용량 = 100 X 512 = 51200 bytes 저장 가능

  • 대부분 섹터의 크기는 512 바이트 입니다.

이 장에서 가장 중요한 건 "1섹터는 512 바이트다" 입니다. 나머지는 사실 시험에 필요한 배경지식이며 중요한 건 아닙니다.

아래 부분은 참고로 필요 시 한번 읽어보시고 시험대비는 바로 다음 장으로 넘어가서 진행하시면 됩니다.

2. 사본 이미지 생성

2-1. 물리이미징

  • 포렌식 관점에서 저장매체의 0번 섹터부터 마지막 섹터까지 그대로 복사하여 파일을 만들었다고 생각해봅시다. 그렇다면 원본과 동일한 데이터가 될 것입니다. 원본의 해시값과, 전체섹터를 복사한 파일의 해시값을 비교하면 동일한 해시값을 가지게 될 것입니다. [참고] HxD를 관리자 권한으로 실행한 다음 이용하여 도구 - 디스크 열기를 선택 한 뒤 하단에 물리디스크를 선택합니다.

    PC에 연결되어 있는 하드디스크 저장매체의 0번 부터 마지막 섹터까지 표시가 되며 Ctrl + A를 통해 전체 영역을 복사할 수 있습니다. 이후 파일 형태로 저장하는 것이 물리이미징 저장하는 것이 됩니다. 저장매체의 전체 영역으로 메타데이터 영역, 데이터영역, 삭제된 데이터 영역 등도 모두 포함될 것입니다. 다만 HxD 프로그램은 용량이 매우 큰 하드디스크는 전체 데이터를 복사하는 것이 불가능하기에 참고만 합시다. 만약 용량이 매우 작은 디스크의 경우 이런 방식을 통해서 물리이미징 파일 생성이 가능합니다.

  • 기본적으로 포렌식 분석을 함에 있어서 가능하다면 당연히 물리이미징 방식으로 하는 것이 해당 저장매체의 거의 모든 내용을 살펴볼 수 있습니다. 파일 등을 삭제하여 비할당영역으로 된 부분에도 데이터가 남기 때문에 해당 영역 분석을 위해선 물리이미징이 필요하게 되는 것입니다.

  • 용어 정리를 한번 하고 가도록 하겠습니다. 디스크이미징, 물리이미징, 사본이미지 생성 등등 원본 저장매체의 증거 사본을 만드는 개념으로 모두 동일한 의미를 가집니다. 용어 구분이 시험에 있어서 크게 중요하진 않습니다.

2-2. 논리이미징

  • 운영체제 등이 논리적으로 접근 가능한 파일을 대상으로 증거를 수집하는 방식입니다.

  • 단순히 파일을 복사 붙여넣기 했을 때와 가장 큰 차이는 복사 붙여넣기를 한다면 파일의 데이터 영역은 동일하고, 해시값은 데이터 영역 대상이기 때문에 원본의 데이터와 동일한 해시값을 갖습니다. 그러나 시간정보, 경로 등 파일의 정보를 가진 메타데이터는 복사한 파일의 경우 원본과 다르게 됩니다.

  • 논리이미징은 이러한 메타데이터 부분도 함께 수집하게 됩니다.

  • 최근에는 선별수집 원칙으로 인해 가능한 사건과 관련 없는 부분에 대한 수집은 자제하고 있기 때문에 논리이미징도 많이 쓰이게 됩니다.

포렌식 도구가 복구한 파일에 대한 논리이미징? (참고!)

사실 이 부분도 참고만 하시길 바랍니다.(시험과 상관 없음)

  • 포렌식 도구의 경우 비할당 영역등을 분석하여 복구가 가능하다면, 복구를 해서 표시해줍니다. 그리고 이러한 부분을 선택해서 논리이미징으로 추출이 가능합니다.

  • 그런데 기술적으로 본다면 사실 물리이미징의 성격으로 비할당 영역을 분석하여 논리이미징으로 출력하는 것을 지원하고 있습니다.(무슨말이지..?)

  • 기본적으로 논리이미징은 비할당 영역에 대한 수집을 하지 않습니다. 즉, 지워진 영역을 수집 하는건 논리이미징이라고 보기 어려울 수 있습니다.

  • 비할당 영역까지 추출하는건 사실 물리이미징에 해당합니다.

    그러나 포렌식 도구의 경우 바로 간단한 분석을 통해 삭제된 파일의 데이터가 비할당영역에 남아 복구 가능할 경우 복구하여 우리가 확인할 수 있게 표시해주며, 논리이미징 방식으로 추출이 가능하게 해주고 있습니다.

  • 사실 선별수집이라고 하더라도 무조건 논리이미징을 해야한다! 이렇게 정해진 것은 아닙니다. 포렌식 도구를 활용하여 선별수집을 하는데 사건과 관련된 삭제된 파일을 찾았다면 당연히 추출하고, 복구가 안되더라도 지워진 흔적이 있다면 또 당연히 비할당 영역도 수집해야 할 것입니다.

  • 물리이미징과 논리이미징 성격을 둘 다 가진 복구한 파일의 대해서 고민해보고 각자의 방식으로 이해할 필요성은 있어 보입니다.(만약 법정 증언을 하게 된다면 본인은 어떻게 답해야 할 지를 정확히 알고 있어야 할 것입니다.)

3. 시험에서의 이미지 생성

3-1. 물리 이미지 생성이 필수인가? (참고)

물리 이미지 생성이 필수일까?

시험대비 하시는 분들은 큰 고민하지 마시고 물리이미징을 바로 진행하면 됩니다! 다만 참고로 이런 부분도 있구나.. 정도로 한번 생각해 볼만한 부분입니다.

  • 디지털포렌식 2급 실기 초창기에는 사본이미지 생성한 파일을 CD로 제출했었습니다. 사본이미지 해시와, 원본 해시를 비교하였을 것으로 보이네요.

  • 다만 분석 대상 USB 용량이 커지고, 윈도우 아티팩트 등의 데이터가 들어가면서 사실상 하드디스크 분석에 가깝게 변경 되었습니다. 제출용 CD/USB 등에 RAW 사본 이미지가 담기지 않고, 이미지를 복사하는 것도 굉장히 오래 걸리기 때문에 변경된 것으로 보입니다.

  • 사본 이미지 생성하지 않고 바로 분석하는 것도 생각해볼 수 있습니다. 실제로, 포렌식 도구는 해당 저장매체가 연결되어 있으면 바로 분석이 가능하기 때문입니다.

  • 만약 시험 문제 답안에 사본이미지의 해시값을 포함해야 할 경우 저장매체를 대상으로 해시값만 계산하면 됩니다. 다만 이미지 획득하고 해시값 계산하는 것 보다는, 저장매체의 해시값만 계산하는 것이 빠를 수 있습니다.

  • 그렇다면 사본이미지를 제출하라는 말이 없으면 사본이미지를 생성할 필요가 없을까요?

    • 상황에 따라 다르겠지만, 정말 간단한 분석이라면 사본이미지 생성 없이도 문제 해결이 가능할 수도 있습니다.

    • 그러나 분석을 위해 전처리(processing, ingest 등..)를 해야 한다면 이미지 생성하는 것이 빠를 것입니다. USB와 같은 저장매체를 통해 분석하는 것보다, 하드디스크에 이미지를 생성하여 분석하는 것이 속도가 훨씬 빠르고, 안정적일 것입니다.

  • 결론적으로 물리이미징을 한 뒤에 분석하는 것이 여러 가지 면에서 효율적입니다. 그렇다면 이러한 설명은 왜 한 걸까? 실제 현장에서는 물리이미징하는 것이 여의치 않을 수 있습니다.

    기술적인 부분에 대해서 이러한 방법도 불가능하지 않다는 것을 설명 드려보려고 몇자 작성해 보았습니다.

  • 다만 최근 시험에서 문제 USB에 이미징 파일을 복사해서 문제를 해결하는 방식이 출제되었다고 합니다. 그렇다면 이미징 할 필요가 있을까? > 사실 이렇게 이미지 파일을 복사할 경우 문제 USB를 이미징할 필요가 없습니다.

    • 그렇다면 시험장에서 문제 이미지 파일 복사한 뒤 혹시 모르니 복사본을 생성하고, 복사본으로 문제를 해결하는 것을 추천합니다. 만약 파일시스템 복구 등을 잘못할 경우 원본 이미지를 다시 구하지 못할 수 있기 때문입니다. > 추후에 다시 한번 이미징 과정에서 소개하도록 하겠습니다.

다만.. 개인적인 의견으로.. (약간의 넋두리....)

문제 USB를 쓰기방지 후 직접 이미징하는 것이 아닌 그냥 분석 대상 이미지 복사해서 문제를 해결하는 것이 과연 디지털포렌식전문가 자격시험에 적절한 것인가.. 에 대해서는 생각해볼 필요가 있어 보입니다. 물론 이미지 생성 자체가 뭐가 중요하냐 싶긴 하지만.. 결국 디지털 포렌식 2급의 경우 디지털 포렌식이라는 절차에 전공자뿐만 아니라, 비전공자들도 접수하는.. 시험입니다. 사실상 디지털포렌식을 처음 접하는 분들이 매우 많이 관심 가지고 연습하고 수험하는 시험입니다. 디지털 포렌식이라는 과정에서 원본으로부터 사본을 생성하는 매우 중요한 과정이기에 직접 쓰기 방지해보고 사본 이미징하는 과정이 매우 의미 있다고 생각하는데 이 부분이 스킵되고 이미 획득한 이미지 파일을 아무런 연계 보관성 없이 포렌식 도구로 USB에 있는 이미지를 추출하는 것도 아니고 단순 복사하는게 과연 맞는지.. 개인적으로 굉장히 아쉽다고 생각하고 있습니다. 이렇게 가면 쓰기 방지도 필요 없이 단순 복사로 분석한 결과인데 상대방 입장이라면 그 분석한 이미지가 원본으로부터 나온 것이 맞긴 한건지에 대해 의문을 가질 수 있을 것입니다. 아니면 분석 대상 이미지에 대해 추가적으로 문제에서 이미지를 포렌식 관점에서 이미징 추출하거나, 해시값을 계산하거나 과정을 묻는 문제가 나왔어야 하지 않는가 싶네요.. 제가 상대방 입장이라면 물어볼 것 입니다. "이 이미지 파일은 누가 언제 어떻게 생성했습니까?" "원본 저장매체는 어디 있습니까?" "복사 과정에서 무결성 검증은 했습니까?" "해시값 비교 기록은 있습니까?" 근 10년간 포렌식 시험을 팔로우 하면서 이런식으로 가는건 매우 안타깝습니다. 물론 이렇게 하는 이유가 문제 제작 및 배포가 용이하기 위해서, 파일시스템 이미징 자체를 못해서 아무것도 못하는 수험생들을 위해서 인지는 모르겠으나 개인적으로 이 자격증이 디지털 포렌식 입문자들 대상으로 매우 의미 있는 좋은 방향성을 가지고 있다고 하는데 이런식으로 정말도 그냥 문제를 위한 문제로 가는 것은 정말 안타깝다고 생각합니다. 설령 분석이 부족하더라도 절차가 매우 중요한건 이미 모든 포렌식 전문가들이 알고 있는데 이 부분이 빠지는 것은 매우 안타깝게 생각하고 있습니다. 이렇게 가면 수험자 입장에서 앞으로도 계속 단순히 이미지 복제하는 방식으로 출제되면 쓰기방지하고 이미지 획득 연습을 할 필요가 없습니다. 추후에 자격증 따놓고 실무에서 쓰기방지가 뭐야? 어떻게해? 하면... 말을 아끼고 싶네요.. 시험 운영을 용이하게하기 위해서도 좋지만 국내 유일한 디지털포렌식 자격증이고, 이걸로 중요한 절차를 직접적으로 처음 연습하는 분들이 시험이 쌓여감에 따라 계속 늘어날 것입니다. 시험 문제 만들때 이 부분 고려하는게 그렇게 어렵지 않을 것 입니다. 조금만 더 이 시험에 애정과 관심을 가지고 문제를 만들길 바래 봅니다. 우선 제 포스팅에서는 당분간은 무조건 쓰기방지 및 이미징 획득 과정을 넣을 것이지만. 앞으로 계속 단순 이미지 복제 방식으로 간다면 방향을 바꿔야 할듯 합니다만.. 그렇지 않길 바래봅니다.

3-2. 증거파일에 대한 논리이미징은 해야할까?

  • 사실 제가 알기로는 지금까지는 문제를 해결하면서 발견된 주요 증거를 논리이미징으로 제출한 경우는 없는 것으로 알고 있습니다. 그러나 실제 현업에서는 논리이미징도 자주 사용하고 있습니다.

  • 사실 시험의 대부분의 시나리오에서 증거를 압수한 상태에서 분석하는 시나리오이기 때문에 논리이미징으로 증거파일을 제출한 경우는 없었으나 앞으로는 필요할 수도 있기 때문에 증거 파일을 논리이미징하는 방법도 한번 살펴보겠습니다.(중요도 매우 낮음)

3줄 요약

  1. 저장매체는 섹터를 잔뜩 가지고 있다.

  2. 섹터는 512 바이트씩 나눠서 저장한다.

  3. 섹터를 전부 그대로 복사하는 것을 물리이미징이라고 하며, 실기시험에서는 필수로 해야하는 작업 입니다. (논리이미징은 개념이 조금 다릅니다. 이후에 알아보도록 합시다.)

Last updated