학사 나부랭이
Digital Forensic - Seminar PPT, Script 본문
안녕하세요. 디지털 포렌식에 대해 발표할 인제대학교 돗가비 홍세웅입니다.
오늘 발표는 먼저 포렌식이 무엇인가? 그리고 포렌식의 과정, 거기서 쓰이는 복사기법과 수집기법 그리고 QNA로 구성이 되어 있습니다.
그럼 포렌식이 무엇일까요?
포렌식은 법적인 효력을 가지는, 그러니까 재판에서 사용될 혈흔, 지문, DNA같은 증거를 수집, 보존, 분석하기 위한 응용과학 분야를 칭하는 용어예요.
그럼 당연히 디지털 포렌식은 디지털적인 증거를 수집, 보존, 분석하는 작업을 칭하겠죠?
보통은 삭제된 파일 등을 복구하는 걸 많이들 생각하시는데 사진처럼 GPS 기록을 따오거나 카톡 메시지, 문서 등을 들고 오는 것도 디지털 포렌식의 일종이에요. 이제부터 편의성을 위해 디지털 포렌식을 그냥 포렌식이라고 칭할게요.
우리나라에서는 예전에 민족민주혁명당 사건에서 경찰이 법정에 증거로서 디지털 증거물을 제출했는데 판사가 보고 "어라? 경찰이 열어봐서 마지막으로 열어본 시간이 변경되었네? 이 증거는 경찰에 의해 조작되었네?"라고 판단해서 증거로서 효력을 얻지 못한 일을 계기로 포렌식의 필요성을 느끼게 되었고요.
그 후 포렌식을 이용해 얻은 증거가 법적 효력을 갖게 된 사건은 일심회 사건을 시작으로 최순실 태블릿 PC, N번방 사건 등이 있어요.
여기서 앞으로 많이 듣게 될 법칙이 하나 있는데 로카르의 법칙이라고, 접촉하는 두 개체는 서로 흔적을 주고받는다라는 법칙이 있어요.
쉽게 말해 어떤 작업을 하면 그에 대한 흔적은 어딘가에는 남는다라는 뜻이에요.
그리고 포렌식은 결국 데이터를 빼오는 작업인데, 해킹과 뭐가 다르냐?라고 의문을 가질 수 있어요.
네, 암호를 해제하는 작업 등 기술적 근간은 같지만 합법적으로 시행된다는 차이점이 있죠.
해킹은 불법적으로 권한 등을 얻어 데이터를 탈취하고 포렌식은 영장이나 데이터 소유주의 동의 하에 데이터를 수집, 분석하는 작업이에요.
즉, 영장이나 동의 없이 포렌식을 하면 당연히 해킹과 다를 바가 없겠죠?
그럼 포렌식을 하는 과정은 어떻게 되느냐? 먼저 작업에 들어가기 전에는 준비가 필요하겠죠?
포렌식에 사용될 프로그램이나 물리적 도구 등을 준비하고 이 도구들이 무결성 그러니까 포렌식 할 때 데이터에 손을 대지 않는다~ 라는 보장을 하는지 검증을 해야해요.
그리고 데이터를 수집할 때 사용할 충분한 용량과 확장성을 가진 저장매체를 준비하고 필요에 따라 그 저장매체를 포맷을 하는 경우도 있어요.
그리고 사건에 관련된 디바이스로부터 데이터를 수집하는데 이 때, 데이터가 오염되지 않아야 해요.
활성 데이터는 디바이스가 켜져있어야만 수집할 수 있는 휘발성 데이터이고 비활성 데이터는 디바이스 on/off에 영향을 받지 않는 데이터예요.
디바이스가 켜져있으면 현재진행형으로 원본 데이터가 오염되니까 최대한 빨리 활성 데이터를 수집하고 종료해야하죠.
이거에 대해서는 뒤에 다시 자세히 다룰게요.
이런 데이터들을 수집한 후 무결성을 입증하기 위해 데이터에 대한 해시 값을 만들어야해요.
여기서 해시 값은, input 데이터가 같으면 같은 값을 가지지만 input 데이터가 1비트라도 다르면 아예 다른 값이 나와서 무결성을 입증하는데 사용하기 좋겠죠?
그리고 이제 수집한 데이터를 포장하고 분석할 장소로 옮겨야 하는데 여기서 충격이나 정전기 같은 외부 요인에 의해서 데이터가 오염되지 않게 봉인 씰과 충격/정전기 방지용 팩, 사진과 같이 딱 봐도 튼튼해보이는 펠리칸 케이스 같은걸 이용해 포장 및 이송해요.
여기서 절차 연속성의 법칙이 있는데 이 증거가 누군가에 의해 조작되지 않았음을 입증하기 위해, 법정에 제출될 때까지 거쳐간 경로, 담당자, 장소, 시간 등을 기록해야하고 그 기록을 유지해야 해요. 여기서 포렌식에서는 무결성을 엄청 많이 강조하는게 느껴지죠?
이제 데이터를 분석하는 과정인데요. 이 과정에서 다양한 분석 기술이 동반되어요.
그래서 보통 포렌식이라 하면 이 분야의 연구를 칭하기도 해요.
이 단계는 혹시나 원본에 손상이 갈까봐 복사해서 분석용 데이터를 하나 더 만드는 과정도 포함되어있고 이 복사도 원본에 손상이 가지 않는 한에서만 가능해요.
먼저, 파일을 삭제했다고 해서 진짜 없어진게 아니라 그 파일에 걸려있는 링크만 끊기고, 비어있는 공간이라고 딱지만 붙고 실제로는 그 파일에 대한 데이터는 남아있어요.
만약 그 데이터 조차 덮어 씌워졌다더라도 하드디스크 뿐만 아니라 메모리, 캐시 등 그 파일에 대한 흔적은 남아있으니까 그걸 복구하는 작업을 거치고요.
여기서 해시 검색은 감사팀에서 주로 하는데 데이터가 변조되었을 경우 증거로 채택하기 어려우니까 이미징, 그러니까 복사할 때 무결성을 위해 복사 장비에 해시 값이 바로 표시되고 이 과정을 처음부터 끝까지 촬영하죠.
그리고 암/복호화는 암호화된 데이터를 분석하기 위해 하는 복호화와 변조기 되기 쉽거나 기업의 제품 설계도 같은 민감한 데이터는 암호화해서 혹시 모를 유출에 방지해 보관해야하죠.
데이터 브라우징은 수집한 데이터를 관찰하기 쉬운 형태로 변환하는 과정이고요.
타임라인 분석은 파일의 시간 정보, 메타데이터 그러니까 다른 데이터를 설명하는 데이터에 저장된 시간 정보 등 다양한 곳에 남겨있는 시간 정보를 이용해서 사건의 타임라인을 구성해 범죄자 및 사용자의 행위를 추적하는 거예요. 그러니까 사건의 대본을 쓰는거죠.
그리고 파일 검색은 수 많은 데이터 중 증거로 활용할 수 있는 데이터를 정제하는 작업이에요.
인간이면 선입견이 있기 마련이죠. 하지만 아무리 의심스럽더라도 확실한 증거가 나오기 전까지는, 무죄 추정의 원칙처럼, 단정지어서는 안 돼요.
예를 들어 예전에 산업부의 북한 원전 추진 사건에서 핀란드어로 북쪽이라는 폴더가 발견되었다고 해서 바로 흑백을 가리면 안 된다는 거죠.
이런 분석 결과들은 법적 증거로 채택될 수 있으니까 제출 전에 정확한 분석을 통해 추출한 정보인지 검토를 해야겠죠?
잘못 추출된 증거가 있는지, 발견되지 않은 증거가 있는지 정확성을 위해 분석하는 단계이죠.
마지막으로 얻은 데이터에 대한 육하원칙에 따른 설명과 간단한 주석 등으로 객관성 있게 보고서를 써야해요.
당연히 이 보고서를 읽을 사람은 판사, 배심원, 변호사 등 비전문가가 대부분이니까 알기 쉽게 적어야해요.
그리고 증거물을 수집하거나 압수할 때에는 무조건 수집할 수 없고, 수집하려는 데이터가 개인정보 같은거에 해당된다면 그 개인정보의 당사자에게 동의를 구해야해요.
그리고 수집 한 뒤 증거의 관리도 철저해야하고 분석하면서 알게 된 내용을 다른 사람에게 유출해서는 안 돼요.
이제 포렌식의 복사 기법에 대해 알아보죠.
원본의 변질을 막기 위해서 준비한 저장매체에 원본과 같거나 어떤 처리를 해서 +a가 된 데이터를 저장하는데 이 작업에는 복사, 복제, 이미징이 있어요.
먼저 복사는 원본 파일이나 디렉터리를 그냥 다른 저장매체에 복사 붙여넣기 하는 방식이에요.
논리적인 데이터만 복사되어서 삭제된 데이터를 복구할 수 없고 무결성 검증을 위해 별도의 데이터 포맷을 사용하거나 복사본이 있는 저장매체를 보호하는 방안이 필요해요.
데이터를 수집하는 가장 기본적인 방법이지만 복구가 불가능해 실제로는 거의 사용되지 않아요.
그러니까 앞으로 나올 복사라는 용어도 이 의미의 복사만이 아니라 때에 따라 문맥에 맞춘, 동적인 의미의 복사를 의미할 거예요.
복제는 원본의 모든 물리적인 섹터, 그러니까 탐색기로 확인할 수 있는 파일/디렉터리 외에 슬랙 공간과 비할당 영역까지 포함해 저장매체의 첫 번째 섹터부터 마지막 섹터까지 모든 데이터를 복제하는 방식이에요.
여기서 슬랙 공간은 물리적 구조와 논리적 구조의 차이로 인해 발생하는 낭비 공간이에요.
가상 메모리에 대해 배우셨다면 단편화와 비슷한 개념이라고 생각하시면 편해요.
단순 비트 스트림 복제 작업만 해서 속도가 빠르지만 모든 물리적 섹터를 복제하니까 원본의 저장매체보다 커야 안정적으로 복제할 수 있겠죠?
그래서 100개의 저장매체를 분석하려면 100개 이상, 300개가 넘는 저장매체가 필요해서 비효율적이에요.
그리고 데이터를 배포할 때도 그 300개가 넘는 저장매체를 전달해야하니 실제 환경에서는 적합하지 않아요.
초기에는 복제가 많이 사용되었지만 요즘은 현장에서 빠른 데이터 수집이 필요할 때, 그림과 같이 1차 수집을 위해서만 주로 사용되죠.
또 그림과 같이 복제한 복제본은 분석의 효율을 높이기 위해 다음에 나올 이미징 시켜 분석하죠.
이미징은 원본의 모든 물리적 섹터를 파일 형태로 만들어요.
초기에는 Disk Dump 방식을 사용했지만 최근에는 획득한 이미지 파일을 보호하기 위해 별도의 이미지 포맷을 사용해요.
이미지 포맷을 사용하면 원본 비트 스트림 데이터를 압축해 이미지 크기를 줄이거나 암호화로 데이터를 보호할 수 있죠.
현재 가장 많이 사용되는 데이터 수집 방식이에요. 원본 데이터 수집과 동시에 압축할 수 있어서 이미지 파일이 있을 저장매체의 용량을 줄일 수 있게 되었죠.
원본 디바이스의 저장매체가 하나라면 압축률이 크지 않아 영향이 없지만 디바이스가 여러개거나 RAID처럼 저장매체 여러개를 사용하는 시스템이면 압축이 필요하겠죠?
그리고 파일형태로 저장되니까 데이터를 배포하려면 그냥 복사 붙여넣기만 하면 전달할 수 있어서 편하죠.
이건 이제 여태까지 설명한 복사 기법 세 개를 비교 분석해 표로 나타낸 거예요.
복제나 이미징, 합쳐서 그냥 복사라고 칭할게요.
이 복사를 할 때 준수사항이 있는데 먼저 무결성을 위해 쓰기방지장치를 사용해야해요.
그리고 아까 그림에서 보신 듯이 보관용이랑 분석용이 따로 있는데 이 둘의 물리적 위치도 따로 지정해 관리해야해요.
당연히 원본, 보관용, 분석용의 무결성을 유지해야하고 보관과 분석을 위해 만든 복사본에는 무결성과 기밀성을 입증하기위해 일련번호를 부여해야하고 그 복사 과정도 기록해야해요.
또 복사는 제삼자의 입회 하에 이루어져야하고 복사본의 무결성을 위해 입회자와 분석 책임자의 서명이 있어야해요.
마지막으로 원본이 있던 디바이스와 동일하거나 유사한 환경에서, 그러니까 비슷한 디바이스에서 복사를 해야해요.
특히 이미징을 할 때에는 다음과 같은 준수사항이 있는데 먼저 복제한 그 복제본을 대상으로 이미징을 해야지, 원본을 바로 이미징하면 안 돼요.
그리고 복제본의 무결성을 보장하기 위해 쓰기방지장치를 마찬가지로 사용해야 하죠.
이미지 파일의 무결성도 당연히 유지해야하고요.
마찬가지로 제삼자의 입회가 필요하고 그 입회자와 분석 책임자의 서명도 필요하죠.
이미징으로 만들어지는 사본 파일을 이미지 파일이라고 하는데 이 파일은 원본 이미지와 프로그램의 고유 이미지 포맷으로 분류할 수 있어요.
먼저 원본 이미지는 원본 데이터에 어떠한 +a적인 처리도 없이 이미지화한 데이터예요.
처리가 없었으니 이미지 파일 자체에 대한 정보 외 추가적인 메타데이터도 없죠.
원본 이미지 추출은 보통 별도의 변환없이 원본 디바이스에서 복사본인 파일로 비트를 전송하는 방식으로 이루어져요.
이런 단순 비트 단위 복사는 직관적이고 유연한 분석이 가능하지만 포렌식을 위해 설계된 시스템이 아니니까 로깅, 오류처리, 해싱같은 유용한 기능이 없어요.
그러니까 텍스트를 저장하는데 가장 기본적인, 아무런 추가 function도 없는 .txt과 같다고 보시면 되요.
이 원본 이미지를 만들기 위해 사용되는 고전적이며 간단한 Unix의 유틸리티가 Disk Dump인데요.
디스크의 개별 섹터에 대해 완전한 원본 레벨 복사본을 생성해서 원본과 완전히 동일한 형태의 이미지 파일이 생성되어요.
포렌식 프로그램이 다음에 나올 E01 포맷을 지원하지 않거나 포렌식 관점, 그러니까 포렌식을 하는 상황이 아닐 경우 E01을 이 DD로 변환해서 사용하죠.
그리고 특정 포렌식 프로그램의 확장자를 가지는 이미지 포맷이 있는데 원본 이미지와 달리 포렌식을 위한 이미지화를 할 때 조사, 조사자, 드라이브 세부 정보, 로그, 타임스탬프, 암호학적 해시 등에 대한 메타데이터를 포함하고 수집된 데이터를 압축하거나 암호화 할 수도 있어요.
.doc나 .hwp같이 똑같이 텍스트를 저장하는데 표를 만들거나 폰트를 조정하거나 서식을 설정하는 등의 유용한 function이 포함되어있죠.
이런 이미지 포맷 중 대표적인 것이 바로 EWF가 있는데 Guardiance Software에서 EWF를 사용하는 EnCase 포렌식 소프트웨어를 제작해요.
이 포맷은 E01 확장자를 가지며 거의 대부분의 포렌식 프로그램이 지원하는 형태예요.
E01 파일은 MD5로 무결성의 여부를 확인하고 만약 변조되었다면 CRC로 어느 블록의 데이터가 오염되었는지 확인해요.
그리고 암호화를 위해 AES256을 사용하죠.
여기서 데이터 블록은 64섹터로 이루어져 있으며 보통 1섹터는 512바이트예요.
그리고 헤더와 데이터 블록은 각각 CRC 값을 가지고 있어요.
MD5는 CRC를 제외한 데이터 블록 값으로만 계산되니까 원본과 MD5 값이 동일하겠죠?
포렌식 프로그램은 이미지를 불러올 때 데이터 블록에 대한 CRC와 E01에 있는 CRC를 비교해 무결성을 확인해요.
전체 데이터가 로드되면 데이터 블록에 대한 MD5를 계산하고 E01에 있는 MD5를 비교해서 무결성을 확인하죠.
그리고 SMART와 AFF같은 추가적인 이미지 포맷도 있고요.
보통 이미징 할 때 사용되는 소프트웨어는 FTK Imager가 데 팍토 표준, 그러니까 사실상 표준이죠.
이제 포렌식에서 사용되는 데이터 수집 기법에 대해 알아볼건데요.
먼저 라이브 포렌식은 디바이스의 전원이 켜져있는 상태에서 라이브 데이터, 즉 활성 데이터를 수집하는 일이고 포렌식 조사 과정 중 하나예요.
이 활성 데이터는 메인 메모리와 같은 휘발성 데이터이며 활성 데이터 뿐만 아니라 논 라이브 데이터, 즉 비활성 데이터도 수집하는데 이는 잠시 뒤에 자세히 설명할게요.
수집하는 행위와 분석, 증거를 기반으로 추측을 객관화, 그러니까 가설을 입증하는 작업까지 포함해요.
라이브 포렌식을 통해 전원을 종료하면 사라지는 활성 데이터를 얻을 수 있고요.
수집한 활성 데이터를 우선적으로 평가해서 시스템의 상태를 대략 파악할 수 있어요.
예를 들어 설치된 윈도우 버전과 서비스 팩을 파악해서 해당 시스템의 취약점을 파악하고 활성 데이터를 그 취약점과 연계해서 수사망을 좁힐 수 있죠.
또 24시간 동작하며 종료할 경우 금전적 손실 등을 이유로 종료할 수 없는 서버 컴퓨터의 경우 모든 증거를 활성 상태에서 수집/분석 해야해요.
이 때는 활성 데이터의 수집과 분석이 최우선 과제가 되겠죠?
그리고 마지막으로 현재 진행중인 사건/사고의 경우에는 그에 대한 많은 데이터의 수집과 확인이 가능하니까 라이브 포렌식이 필요해요.
그런데 라이브 포렌식을 하면 안 되는 경우도 있어요.
지금 실시간으로 해커나 악성코드에 의해 시스템이 변조되고 있는 경우인데 이 때 변조/삭제되고있는 파일이 수사에 영향을 미치는 중요한 파일일 수 있으니까 더 이상의 변조를 막기위해서 전원 플러그를 뽑아야해요.
그리고 조사를 수행하는 프로그램이 검증되지 않은 경우도 있는데 주로 오픈소스 프로그램의 경우 해당해요. 이를 사용하면 시스템에 어떤 영향을 미칠지 모르기 때문이죠.
개인 PC의 경우 그냥 전원 플러그를 제거하면 되지만 서버의 경우 서버의 응용 프로그램 중에는 처음부터 강제 종료를 상정하지 않고 짜여진 프로그램도 있고 이로 인해 시스템에 손상을 줄 수 있으니까 정상적으로 종료한 후 플러그를 뽑아야해요.
로카르의 법칙은 범죄자 뿐만 아니라 수사관한테도 공평하게 작용하는데요.
라이브 포렌식을 수행하면 마찬가지로 시스템에 포렌식을 한 흔적을 남기게 돼요.
그럼 이 흔적으로 인해 시스템이 받는 영향이 무엇이 있는지 알아야 보다 정확한 수사가 가능하겠죠?
가장 많이 쓰는 윈도우 운영체제를 사용하는 시스템을 위주로 설명할게요.
먼저 메모리인데요, 프로세스가 생성되고 메모리에 적재되면 프로세스가 메모리를 점유해요.
물론 포렌식 프로그램도 메모리를 점유하겠죠?
그럼 이전의 데이터를 덮어씌우는데 이 때 중요한 활성 데이터가 사라질 수도 있어요.
그리고 커널 오브젝트를 관리하는 시스템 테이블이 갱신되면서 오래된 항목이 자동으로 삭제되어요.
포렌식 프로그램이 네트워크 기능을 사용하면 시스템은 소켓을 열고 통신을 시도해요.
이 과정에서 방화벽이 있다면 로그가 남고 그 로그가 쌓이며 HDD를 사용하게 되어요.
이렇게 로그파일이 쌓여 일정 개수에 이르면 제일 오래된 로그가 삭제되어버리죠.
그리고 네트워크 연결이 커널 오브젝트에 의해 또 커널 테이블을 갱신하죠.
프리패치 파일은 윈도우에서 새 프로그램이 실행될 때마다 생성되는 파일이에요.
당연히 포렌식 프로그램에 대한 프리패치 파일도 생성되겠죠?
이 포렌식 프로그램의 프리패치 파일은 최소 한(1) 클러스터 이상의 비할당 영역을 할당받게 되죠.
여기서 클러스터는 윈도우가 HDD를 할당하는 단위예요.
포렌식 프로그램은 보통 레지스트리에 접근해 그 값을 참고하는데 그러면 레지스트리에 대한 마지막 접근 시간이 갱신되겠죠?
그리고 레지스트리에 대한 값을 건들기라도 한다면 레지스트리 키에 대한 마지막 쓰기 시간도 갱신되어버리죠.
Dynamic Link Library, DLL은 동적으로 컴파일할 때 필요한 파일인데 여러 비슷한 함수들의 모임이에요.
포렌식 프로그램이 시스템의 DLL을 사용한다면 마찬가지로 DLL 파일의 마지막 접근 시간이 갱신되죠.
아까 얘기한 방화벽에 대한 로그 뿐만 아니라 포렌식 프로그램이 에러라도 난다면 이에 대한 로그가 남음으로서 오래된 로그가 삭제될 수도 있어요.
그리고 전원을 종료하면 삭제되는 활성 데이터에는 이런 데이터들이 있고요.
비활성 데이터는 HDD에 파일 형태로 저장되어 있는 데이터예요.
데이터의 변동성, 그러니까 시스템의 on/off 여부에 영향을 받지않고 이로 인해 라이브 포렌식, 디스크 포렌식 모두에서 획득 가능해요.
비활성 데이터는 원본을 이미징한 후 분석하는게 일반적이었지만 저장매체의 용량이 커지면서 이미징의 시간이 길어지며 신속한 사고 대응이 불가능해졌어요.
그래서 요즘은 비활성 데이터 중 크기가 크진 않지만 분석에 요긴하게 활용되는 데이터를 활성 데이터와 같이 라이브 포렌식으로 수집하면 이미징하는 동안 분석을 할 수 있게 되죠.
라이브 상태가 아니더라도 이미징 전에 쓰기방지장치를 설정한 후 주요 비활성 데이터를 수집하면 전체 분석 시간을 단축할 수 있는데 결국 르카르의 법칙에서 자유로울 수 없으니까 시스템에 미치는 영향과 분석 효율성을 잘 비교해서 수행해야해요.
앞에 크기가 크진 않지만 분석에 요긴하게 활용되는 비활성 데이터는 다음과 같은 데이터들이 있는데요.
먼저 파일시스템 메타데이터는 NTFS의 MFT, FAT의 디겍터리 엔트리 등이 있고요.
이벤트 로그, 파일시스템 로그, 방화벽 로그, 작업 스케줄러 로그 등 각자 로그 파일과 웹 아티팩트, 그러니까 웹 브라우저 캐시 같은 브라우저 사용 흔적, 앞에서 말한 프리패치, 슈퍼패치 파일, 바로가기 파일 그러니까 링크 파일과 휴지통 정보, 레지스트리와 레지스트리가 저장되어 있는 하이브 파일 등이 있어요.
그리고 저 중에서도 무조건 수집해야하는 필수 비활성 데이터는 다음과 같아요.
먼저 앞의 $가 붙은 파일은 파일시스템과 관련이 있는 파일이고요.
그리고 MFT는 Master File Table이라고 파일의 위치, 속성, 시간 정보, 이름, 크기 등 메타데이터가 있는 파일이에요.
$MFT는 MFT 영역 자체의 정보를 담고있는 파일이에요. MFT 엔트리의 0번째 파일이죠.
$LogFile은 파일의 생성, 수정, 삭제 등 MFT 엔트리에 영향을 정보를 기록한 로그 파일이에요. MFT 엔트리의 2번째 파일이죠.
세번째는 저널 파일인데 파일 시스템의 모든 파일 및 디렉터리의 변경사항을 기록한 로그 파일이에요.
이벤트 로그는 말 그대로 일어난 이벤트에 관한 기록이고요.
프리패치 파일은 전에 말했는데 여기서는 응용 프로그램의 이름, 실행 횟수, 마지막 실행 시간, 프로그램의 파일시스템 시간 정보, 프로그램이 위치한 볼륨 정보, 프로그램이 참조하는 파일 목록 등을 획득할 수 있어요.
하이브 파일에서는 로컬 계정과 그룹 정보를 가진 SAM, 시스템 부팅에 필요한 시스템 전역의 구성 정보인 SYSTEM, 반대로 시스템 부팅에 필요없는 시스템 전역의 구성 정보를 가진 SOFTWARE, 시스템 보안 정책과 권한 할당 정보를 가진 SECURITY, 사용자 별 설정 정보를 가진 NTUSER.dat, 사용자 별 애플리케이션 바인딩 정보를 가진 UsrClass.dat을 수집해야해요.
로그 파일이 매우 크지 않으면 비활성 데이터를 수집하는데 시간이 많이 걸리진 않아요.
그리고 이 비활성 데이터들은 시스템의 주요 흔적을 모두 포함하고 있기에 타임라인 분석을 비롯한 거의 모든 분석이 가능해요.
사전 분석을 마치면 이미지 파일을 대상을 Anti-Virus 검사, 해시 비교, 슬랙 탐지 등 악성 분석을 수행해서 침해 여부를 파악해요.
그 후 사전 분석으로 알아낸 정보로 정밀 분석 대상을 특정해 분석을 수행해요.
이 방법은 기존의 시스템 종료, 이미징 후 분석하는 방법에 비해 전체 분석 시간을 줄여주고 사건을 객관적으로 볼 수 있게 해줘요.
그리고 이건 데이터 수집 순서도인데 휘발성 민감도, 그러니까 얼마나 쉽게 사라지는 데이터인가, 그리고 얼마나 중요한 데이터인가에 따라 순위를 메겨요.
기관 그러니까 어느 회사냐에 따라 다른데 저는 물리 메모리를 제일 높게 쳐주고 싶어요.
이유는 다른게 다 날라가도 어쨌든 메모리만 잘 보존되어 있으면 어떤 일이 일어났는지,
CPU에 fetch 되기 전에는 항상 메모리를 거치니까 컴퓨터에서 이루어진 거의 모든 사건의 흔적이 메모리에 있다고 생각을 하기 때문이에요.
물론 제 짧은 식견이라 틀린 의견일 수도 있고 케이스에 따라 메모리보단 다른걸 수집하는게 수사에 더 효과적일 수도 있어요.
'Dot-Gabi > Digital Forensic' 카테고리의 다른 글
Digital Forensic - Live Forensic (0) | 2021.05.30 |
---|---|
Digital Forensic - Live/Non-Live Data (0) | 2021.05.04 |
Digital Forensic - Imaging, Cloning, Copying (0) | 2021.05.04 |
Digital Forensic - Opening (0) | 2021.05.03 |