인프런 커뮤니티 질문&답변

birdy56님의 프로필 이미지

작성한 질문수

디지털포렌식 입문자를 위한 디지털포렌식 전문가 2급 실기 시험대비 강의(Encase/Autopsy)

[공통] Bitlocker

비트라커 실습 중 무결성 문의

해결된 질문

24.06.21 10:11 작성

·

139

0

강사님 유익한 강의 정말 잘 듣고 있습니다.

비트라커 실습파일을 마운팅시켜 암호 해제하고 이미지를 만들면 원래 실습 파일하고 해시값이 틀리게 나옵니다. 암호만 해제한 상태로 해시값 변동없이 이미지를 복제 하려면 어떻게 해야하나요?

 

답변 1

1

nstyxn님의 프로필 이미지
nstyxn
지식공유자

2024. 06. 21. 11:02

안녕하세요 birdy56님!

마운팅>복호화>재이미징 과정을 거치면 hash값이 변할수 밖에 없습니다!

 

bitlocker가 아니더라도, 일반적인 마운팅>재이미징 역시 hash값이 변하거든요.

예를들어 연결되어있는 USB를 이미징해서 test.e01 으로 저장을 한 후에,
이 이미지 파일을 마운팅 하고, 마운팅된 해당 볼륨을 다시 이미징한 뒤 hash값을 비교해보면 전혀다른 hash값이 나옵니다~

 

hash값이 변하는건 당연한 일로 이부분은 신경 안쓰셔도 괜찮습니다.

왜냐하면 우리가 무결성을 지켜야할 대상은 위의 과정처럼 분석 과정중에 생성되는 파일들에 대한 것이 아니라

증거원본으로 부터 생성한 사본에 필요한 일이거든요.

 

예를 들어서 8GB USB 증거 원본이 있다고 가정해볼게요
이 증거원본을 쓰기방지를 한 상태에서 FTK Imager를 이용해서 USB.e01 이라는 사본을 생성했습니다.
그 뒤 증거원본인 8GB USB를 무결성 유지를 위해서 별도로 보관을 하겠죠?
이 USB.e01 파일의 hash값은 후에 원본 USB를 동일한 방법으로 다시 이미징을 해서 나온 Hash값과 같아야 하는게 중요합니다.

사본인 usb.e01 을 생성한 목적은 분석을 하는 과정중에 원본을 사용한다면 무결성이 훼손될 가능성이 있기때문에 원본은 그대로 유지를 하고 사본을 이용해서 분석을 하기 위함입니다.

 

만약 사본인 usb.e01의 BR이 훼손되어 접근이 불가능할 경우 파티션 복구를 해야하는데,HxD 등의 hex editor를 이용해서 섹터를 수정한 후 저장을 하게 됩니다.(물론 DD파일로 해야하는 점은 우선 무시하겠습니다)
그렇게 되면 파일에 변화가 생기니 당연히 hash값은 변하게 됩니다.

 

비트라커의 예를 볼까요?
증거 USB를 이미징한 사본 A.e01 이라는 파일을 FTK Imager로 열어보니 여러 파일 중에 bitlocker.e01이라는 파일이 있었다고 가정을 해볼게요.

이 파일을 다시 ftk imager로 열어보려고 했더니 접근이 불가능했고, 알고보니 비트라커로 암호화된 파일인것을 확인해서 마운팅 > 복호화 가정을 거쳐야 할텐데 증거사본 이미지(a.e01)안에 저장되어있던 bitlocker.e01 파일은 우리가 무결성을 지켜야할 대상이 아닙니다.

증거원본과 동일한 사본인 A.e01가 중요한거죠.

(bitlocker.e01 파일을 복호화 하는 등 수정이 가해져서 hash값이 변한다고해도 수정 전의 bitlocker.e01은 A.e01에서 다시 추출이 가능하니까요)

 

마지막으로 다른 예 하나만 더 보겠습니다.

최근 시험에서 증거 원본을 제공하지 않고, 시나리오상 증거의 사본을 수집하였다라면서
수험자에게는 증거 사본이 담긴 USB를 제공하였습니다.
이 USB는 증거 원본이 아닌 사본 파일이 담겨진 단순 전달용 USB인데,
이렇게 받은 증거사본 파일이 2개라고 가정할게요.
첫번째 : 용의자의 책상에 있던 USB의 사본 이미지(e01)
두번째 : 용의자의 PC에서 발견한 Vmware 가상 머신 파일(vmdk 등 관련 파일)


이 경우 두개의 이미지를 FTK Imager나 autopsy등의 분석 툴을 이용해서 분석을 하는건 괜찮습니다.
그리고 그 과정중에서 각각의 이미지파일 안에 저장되어있던 파일을 추출해서 본다던지, 또는 필요에 의해서 새로 이미징을 하는 경우에도 최초의 사본인 USB의 e01 파일과 가성머신 vmdk 파일이 변하는 일은 없지만,
주의 하실점은 vmdk를 분석하는 여러 방법 중 vmware 등을 실행해서 해당 가상머신을 직접 구동하는 경우에
사본으로 제공받은 vmdk를 직접 연결하면 이때는 무결성이 깨지게 되니 이런 경우에는 가상머신 파일을 복사하셔서 다른 사본을 만드신 후에 그 파일로 실행을 하셔야 합니다!

 

시험에서 만약 증거 사본을 생성하라는 문제(최근에는 나오지 않았지만)가 나온다면
1) 증거 원본 USB라며 제공한 USB를 쓰기방지 후 FTK Imager 등 으로 E01 형식으로 이미징하고

2) 이렇게 생성한 사본 이미지 파일의 hash값을 산출해서 기록하고

3) 증거사본을 제출하라고 했을 경우, 처음 생성한 이미지파일(e01)을 제출하시면 됩니다.

4) 만약 e01 생성후에 파티션 복구가 필요한 경우 DD파일이 필요한데, 이 경우 DD파일로 이미지를 다시 생성하게 됩니다. 이렇게 되면 이미지 파일이 e01과 dd 2개가 되는데, dd 파일은 생성후에 파티션 복구 등 파일에 변경이 생기게 되므로 증거원본 USB의 사본이라 볼수가 없습니다. 이 경우에도 증거 사본을 제출해야한다면 처음 생성한 e01 파일을 제출하시면 됩니다.

 

정리하면,

무결성을 지켜야하는건 당연하지만 분석과정에서 생성되는 모든 파일에 대해서 지켜야하는것은 아니고
증거원본에 대한 최초 사본에 대해서 적용되는 부분이라고 생각해주세요.

 

 

 

 

birdy56님의 프로필 이미지
birdy56
질문자

2024. 06. 21. 11:52

무결성에 대해 헷갈렸던 부분이 이제 이해가되었습니다. 감사합니다.

birdy56님의 프로필 이미지

작성한 질문수

질문하기