Chapter 5의 소 주제로는 삭제된 데이터 찾기, 최대 절전모드 파일, 윈도우 레지스트리, 프린트 스풀링, 휴지통, 메타데이터, 증거로서의 썸네일 사진, 최근 실행 목록, 복원 지점과 쉐도우 복사, 프리패치와 링크 파일이 있다.
포렌식 조사관들은 윈도우 운영체제를 다뤄야 할 확률이 매우 높다. 이런 이유로 조사관들은 윈도우 운영체제와 윈도우의 모든 기능에 대해 자세히 이해하는 것이 중요하다. 포렌식 조사관은 소프트웨어를 사용하면서 발생하는 증거의 흔적을 정확하게 식별, 보전, 수집, 해석할 수 있어야 한다. 5장에서는 이러한 흔적, 목적, 포렌식 관점에서의 중요성에 대해 살펴볼 예정이다.
: 파일 삭제를 누른다 하더라도 데이터 자체가 삭제되지 않고, 파일은 그 자리에 그대로 남아있다. 삭제된 데이터는 다른 파일로 덮어써지기 전까지 그대로 남아있게 된다.
파일 카빙(File Carving)
: 하드 드라이브에서 할당되지 않은 공간에 있는 중요한 증거를 수집하는 작업을 말한다. 수작업으로 하거나 툴을 사용할 수도 있다. 툴은 카빙 속도를 크게 향상시킨다. 할당되지 않은 공간에 있는 파일은 특정 속성으로 식별한다. 파일 헤더와 푸터가 이러한 속성이나 시그니처의 일반적인 예시라고 할 수 있고, 이 말은 헤더와 푸터가 파일을 식별하고 파일의 처음과 끝을 표시하는 데 사용될 수 있다는 것이다.
할당된 공간이란 컴퓨터 사용 중에 기록 및 유지하고 있는 데이터를 의미한다. 즉, 윈도우에서 보고 열 수 있는 모든 파일을 의미한다. 컴퓨터의 파일 시스템은 이러한 파일을 모니터하고 이 파일들에 대한 다양한 정보를 기록한다. 예로, 파일 시스템은 특정 파일의 마지막으로 수정한 날짜, 액세스 한 날짜, 생성한 날짜 등을 기록하고 유지한다.
: 컴퓨터는 "잠"을 대기모드, 최대 절전모드, 하이브리드 절전모드의 세 가지 상태로 잘 수 있다. 각 모드는 전력을 절약할 목적으로 사용되고 있고, 컴퓨터마다 다르다. PC가 얼마나 "깊게" 자는지에 따라 더 많은 잠재적 증거가 생성될 수 있다. 최대 절전모드와 하이브리드 절전모드와 같이 "깊은 잠" 모드는 데이터를 RAM에 저장하지 않고 하드 드라이브에 데이터를 저장한다. 이렇게 되면 데이터가 더 오랫동안 남아있고 더 쉽게 복원할 수 있고, 때에 따라서는 용의자가 삭제한 파일을 찾을 가능성도 있다.
: 전력을 절약하고 컴퓨터를 최대한 신속하게 작동시키도록 하는 목적이 있다. 대기모드에서는 소량의 전력을 RAM에 지속적으로 공급해 데이터가 유지될 수 있도록 한다. RAM은 휘발성 메모리이고, 대기모드에서는 RAM에 모든 데이터가 존재하므로 이 상태는 포렌식적으로는 도움이 되지 않는다.
: 전력을 절약하기 위한 목적이 있고, 데스크톱보다 노트북에서 주로 사용된다. 이 모드에서는 RAM에 있는 모든 데이터가 하드 드라이브로 옮겨져 데이터를 제거하기 더 어려워진다.
: 대기모드와 최대 절전모드를 혼합한 것이고, 주로 데스크톱에서 사용된다. 이 모드는 RAM에 최소한의 전력을 공급해 데이터를 디스크에 기록한다. 절전모드 파일은 대부분의 사용자에게 알려져 있지 않아 범죄자들이 최후의 "증거인멸작전"을 하면서도 종종 놓치는 부분이다.
: 윈도우 레지스트리(Windows Registry)는 PC가 작동하는 데 있어 핵심적인 역할을 한다. 컴퓨터의 중추신경이라고 보면 된다. 레지스트리는 사용자와 시스템 구성의 설정을 관리한다. 포렌식 관점에서 볼 때 레지스트리에는 검색어 , 실행된 프로그램, 설치된 프로그램, 웹 주소, 최근 실행한 파일 등의 잠재적으로 수많은 증거가 저장되어 있다.
: 레지스트리는 윈도우에서 작업할 때 사용했던 디렉터리, 폴더, 파일과 같은 트리 구조로 구성되어 있다. 이러한 레지스트리는 4개의 수준으로 나눌 수 있다.
레지스트리의 기계어를 살펴보기 위해서는 사람이 이해하기 쉬운 정보로 재해석하는 툴을 사용하는 것이 좋다. 주요 포렌식 툴인 EnCase와 FTK에는 레지스트리를 해석할 수 있는 기능이 있다.
시스템의 핵심 정보 창고로서 레지스트리에는 매우 많은 증거가 저장되어 있고, 추가로 암호화된 파일을 해독하는 데 필요한 정보가 저장되어 있을 수 있다.
- 사건 파일: 윈도우 레지스트리
윈도우 레지스트리로 인해 텍사스주의 휴스턴에서 발생한 신용카드 범죄사건을 해결할 수 있었다. 이 사건에서 용의자는 훔친 신용카드 번호를 인터넷에서 물건을 구매했다. 조사관들은 컴퓨터의 NTUSER.DAT, 레지스트리, "Protected Storage System Provider" 정보를 조사했다. 조사 결과, 온라인에서 물품을 구매하기 위해 사용한 다른 이름, 주소, 신용카드 정보를 여러 개 찾았고, 이 정보들은 카드 주인의 동의 없이 불법적으로 사용되었다는 것을 발견했다.
레지스트리에 있는 추가 정보로 추가 검색 영장을 확보할 수 있었다. 이로 인해 22명을 더 체포했고 불법적으로 구매된 $100,000 상당의 물품을 회수할 수 있었다.
- 사건파일: 윈도우 레지스트리와 USBStor
텍사스 오스틴에서 한 호텔 손님이 술에 취한 채 돌아다니다 신고를 당했다. 경찰은 그를 그의 객실로 인도했다. 하지만 그 객실에서는 또 다른 사람이 아동 포르노를 노트북과 연결된 벽의 프로젝터로 보고 있었다. 그리고 노트북 주변에 외장 하드 두 개가 있는 것을 발견했다. 경찰이 올 것을 예상하지 못했던 그 호텔 손님은 노트북은 그의 것이지만 두 개의 외장 하드는 다른 사람 것이며 그의 노트북에 연결한 적이 없다고 말했다. 모든 장비가 압수되어 조사를 위해 보내졌고 랩에서 노트북과 외장 하드의 포렌식 클론을 만들어 조사한 결과, 아동 포르노 사진과 동영상이 발견되었다.
다음으로 조사관들은 외장 하드가 노트북에 연결된 적이 있는지 확인했다. 노트북의 시스템 레지스트리를 검색해 USBStor 키 항목을 찾았다. 두 개의 외장 하드웨어 시리얼 번호와 함께 외장 하드 목록을 찾았다.
다음으로 조사관들은 결과를 검증했다. 랩 컴퓨터 시스템을 사용해 새로운 윈도우를 설치하고 용의자의 외장 하드를 그 컴퓨터에 연결했다. 외장 하드가 수정되거나 변경되는 것을 방지하기 위해 컴퓨터와 외장 하드 사이에 쓰기 방지 장치를 부착했다.
그리고 랩 컴퓨터의 레지스트리 파일을 분석했다. 분석 결과 해당 하드 드라이브와 관련된 USBStor 키의 값이 용의자의 컴퓨터에서도 발견되었다는 것을 확인했다. 이 결과는 해당 외장 하드가 용의자의 노트북 컴퓨터에 연결된 적 있다는 것을 보여준다. 결국 용의자는 아동 포르노를 수감한 죄로 수감 중이다.
: 디지털 포렌식으로 많은 질문의 해답을 찾을 수 있지만, 특정 흔적이 생성되었을 때 누가 그 흔적을 생성했는지는 알기 어렵다. 이러한 문제를 해결하기 위해 다른 증거를 찾아야 할 수도 있다.
이보다는 특정 사용자 계정을 추적하거나 시스템에 등록된 소유자를 식별하는 것이 훨씬 더 쉬운 작업이다. 하나의 PC에 여러 사용자 계정이 등록되어 있을 수도 있다. 기술적으로 사용자 계정은 특정 사용자가 컴퓨터에서 어떤 작업을 할 수 있는지, 할 수 없는지를 보여준다. PC는 디폴트로 관리자와 게스트 두 개의 계정을 생성한다. 관리자(administer) 계정은 해당 컴퓨터의 모든 권한을 가지고 있고, 게스트(guest) 계정은 보통 이보다는 적은 권한을 가지고 있다.
컴퓨터의 각 계정에는 보안 식별번호 또는 SID라는 고유 번호가 지정되어 있다. SID로 특정 행동이나 이벤트를 특정 계정에 연결해 컴퓨터에서 많은 활동을 추적할 수 있다.
: 정보를 탈취하려는 사람들은 손쉽게 데이터를 외부로 가지고 나가기 위해 USB 드라이브, 외장 하드와 같은 다양한 종류의 외장 저장 매체를 사용한다. 그 결과 조사관들에게 컴퓨터에 이러한 외장 저장 매체가 연결된 흔적이 있는지 확인하는 요청이 많다. 정보 탈취 외에도 외장 저장 매체는 바이러스 삽입, 아동 포르노 저장에도 사용될 수 있다.
실제로 외장 기기가 연결되어 있었는지 아닌지는 레지스트리에 있는 데이터로 판단할 수 있다. 레지스트리는 이러한 정보를 상당히 자세히 기록한다. 레지스트리에는 기기의 제조사와 시리얼 번호도 저장되어 있다.
: 프린트 버튼을 눌러도 실제 프린트 시간까지 시간이 있는데 이는 스풀링(Spooling) 프로세스를 실행하기 위함이다. 스풀링은 프린터가 편리한 시간에 프린트를 할 수 있도록 임시로 프린트 작업을 저장한다. 스풀링 시 윈도우는 두 개의 보조 파일을 생성한다. 하나는 Enhanced Meta File(EMF)로 프린트하는 문서의 이미지다. 다른 하나는 스풀 파일로서 프린트 작업 자체에 대한 정보를 저장하고 있다.
스풀 파일은(.spl)은 프린터 이름, 컴퓨터 이름, 프린터에게 프린트 작업을 전송한 사용자 계정 등에 대해 알려준다. 이 파일들은 나중에 증거로 사용될 수 있지만 프린트 작업이 끝나면 보통 자동으로 삭제된다. 하지만 예외인 경우도 있다.
첫 번째 예외 경우는 문제가 발생해 문서가 프린트되지 않았을 경우이다.
두 번째는 프린트 작업을 시작하는 컴퓨터에 복사본을 저장하도록 설정되었을 수 있다. 일부 회사에서는 프린트 복사본을 저장해야 할 수 있는데, 그럴 때 이 설정을 사용할 수 있다.
스풀과 EMF 파일은 용의자를 특정 범죄에 연결하는 데 직접 사용될 수 있다. 이러한 파일에는 협박 편지, 위조된 계약서, 탈취한 고객 목록 등 잠재적 증거가 저장되어 있을 수 있다.
: 파일을 삭제하면 그 파일은 없어지는 것이 아니라, 파일 그 자체는 원래 있던 자리에 그대로 남게 된다. Forensic ToolKit, EnCase와 같은 포렌식 툴을 이용하면 이러한 파일을 쉽게 원상태로 복원할 수 있다.
휴지통 기능의 장점은 특정 파일이 "휴지통에 있는 한" 손쉽게 복원할 수 있다는 점이다. 하지만 휴지통을 비우면 일반 사용자들은 파일을 복원할 수 없을 수도 있다.
삭제된 파일이나 폴더가 휴지통 자체를 거치지 않게 할 수도 있다. 첫 번째 우회방법은 Shift+Delete를 누르면 파일이 휴지통을 거치지 않고 바로 할당되지 않은 공간으로 이동된다. 두 번째 우회방법은 컴퓨터 자체에서 휴지통을 사용하지 않도록 설정할 수 있다. 레지스트리에서 "NukeOnDelete" 값이 1로 되어 있으면 이 기능이 활성화된 것이다.
조사관들이 증거를 찾기 위해 처음으로 확인해야 하는 곳이 휴지통이다. 용의자의 본능은 증거가 될만한 모든 데이터를 컴퓨터에서 제거하는 것이다. 그 결과 휴지통은 다양한 종류의 잠재적 증거 파일을 찾기에 딱 좋은 곳이다.
: 메타데이터는 데이터에 대한 데이터이다. 메타데이터에는 프로그램 파일과 파일 시스템 등 두 가지 종류가 있다.
파일 시스템은 파일과 폴더를 기록하고 유지한다. 파일 시스템 메타데이터에는 파일이나 폴더가 생성, 접근, 수정된 날짜와 시간이 있다. 파일을 우 클릭해 "속성"으로 가면 이와 같은 정보를 확인할 수 있다.
이러한 날짜와 시간 정보는 완전히 신뢰할 수 없다. 사용자가 시스템의 시간을 수정할 수 있고, 히나 이상의 표준시간대를 사용할 경우 표준시간대가 문제를 일으킬 수도 있다.
프로그램 자체에서도 메타데이터를 생성하고 저장할 수 있다. 또한, 작성자, 기관 이름, 컴퓨터 이름 등 프로그램과 관련된 다양한 속성을 추적할 수도 있다.
: 최근에는 범죄자들만이 아닌 기업, 법률 사무소, 일반 시민들도 메타데이터와 메타데이터에 저장되어 있는 정보를 염려하기 시작했다. 따라서 사람들은 다른 사람들과 파일을 공유하기 전에 메타데이터를 제거하는 방식으로 이 문제를 해결하려 하고 있다. 메타데이터를 제거하는 방법은 여러 툴을 사용하거나 새로운 워드 버전에 메타데이터를 탐지하고 제거할 수 있는 기능을 사용하는 것이다.
복원된 메타데이터는 용의자가 파일의 존재를 몰랐다고 하는 증언을 반박하는 데 사용될 수 있다. 파일에 대한 날짜와 시간은 사건의 타임라인을 구성하는 데도 사용할 수 있다.
- 사건 파일: 메타데이터
메타데이터는 사건의 용의자를 식별하고 더 많은 증거를 수집하는 곳에도 도움이 된다. 텍사스 휴스턴에서 발생한 신용카드 복제 사건을 살펴보자. 이 사건의 용의자들은 카드 정보를 "복제해" 새로운 카드를 만들었다.
주요 용의자를 식별한 후 경찰은 용의자를 체포하고 그의 컴퓨터를 수색했다. 하지만 수색 결과, 검색에서 "복제" 정보를 저장하고 있는 마이크로소프트 워드 문서 하나만이 발견되었다. 신용카드 복제 하드웨어를 찾지도 못했고, 컴퓨터에도 그러한 소프트웨어는 없었다.
그러나 조사를 멈추지 않고 워드 문서를 더 조사한 결과 큰 성과를 거두었다. 메타데이터를 검토한 결과 문서의 작성자를 확인할 수 있었다. 이 정보로 작성자의 아파트를 수색하기 위한 두 번째 수색영장을 발급받을 수 있었다. 두 번째 수색을 하는 동안 카드에서 데이터를 축출하는 하드웨어를 발견해 압수했다. 컴퓨터를 조사한 결과 이 하드웨어와 관련된 소프트웨어를 발견했을 뿐만 아니라 추가적인 체크카드와 관련 정보를 발견했다.
: 컴퓨터에 있는 사진을 좀 더 쉽게 볼 수 있도록 하기 위해 윈도우는 사진을 작게 만들어 썸네일(thumbnail) 형태로 저장한다. 썸네일 파일은 사용자가 "미리 보기"를 윈도우 탐색기에서 선택하면 윈도우가 자동으로 생성한다. 윈도우는 버전에 따라 두 가지 종류의 썸네일 파일을 생성한다. 윈도우 XP는 thumbs.db 파일을 생성하고, 윈도우 비스타와 7은 이와 비슷한 thumbscache.db 파일을 생성한다.
원본 사진이 삭제된 이후에도 이러한 파일들은 그대로 남아있다. 원본 사진을 복원하지 못해도 썸네일을 차선의 증거로 사용할 수 있다. 이들 파일의 존재가 시스템에서 특정 시점에 사진이 존재했다는 것을 보여준다.
썸네일의 저장 경로는 %UserProfile%\AppData\Local\Microsoft\Windows\Explorer이다. 썸네일은 각 형태에 맞도록 캐시 형태로 저장이 된다.
: 최근 실행 목록은 최근 사용한 프로그램이나 파일의 바로 가기 역할을 하는 링크다. 윈도우의 시작 버튼을 누르고 문서 부분을 보면 여러 문서가 보이는데 바로 이것이 최근 실행 목록이다.
: 컴퓨터에 문제가 생기면 잘 작동되던 시점인 복원 지점으로 돌아갈 수 있다.
: 핵심 시스템 구성과 설정을 특정 시점에 스냅샷을 한 것이다. 이는 시스템을 다시 작동할 수 있도록 복구하는 곳에 사용된다. 복원 지점은 여러 방법으로 만들어진다. 소프트웨어 설치같이 주요 시스템 이벤트 전에 자동으로 시스템에 의해 생성될 수 있다. 혹은 "주 1회"처럼 정기적으로 생성될 수도 있다. 사용자가 직접 생성할 수도 있다. 복원 지점 기능은 디폴트로 활성화되어 있고 매일 자동으로 하나의 스냅샷이 생성된다.
복원 지점에는 메타데이터가 저장되어 있다. 이 정보는 복원 지점이 언제 생성되었는지 판단하는 데 매우 중요하다. 만약 복원 지점에 증거가 저장되어 있으면 정확히 언제 데이터가 시스템에 존재하고 있었는지를 알 수 있다.
일반인들은 정보를 숨기려 할 때 복원 지점부터 삭제하지 않아 때에 따라서는 엄청난 증거를 발견할 수도 있다.
- 사건 파일: 인터넷 사용 기록과 복원 지점
아동 포르노를 소장하고 있다가 고소된 피고는 해당 사이트를 단 한 번, 그것도 실수로 방문했다고 주장했다. 이 주장의 사실여부를 확인하기 위해 조사관은 지난 2개월간의 복원 지점을 확인했다. 다양한 시점에서 복원 지점의 레지스트리 파일을 조사한 결과, 피고는 아동 포르노 사이트를 여러 번 방문했을 뿐만 아니라 브라우저의 주소창에 직접 사이트의 URL을 입력했다. 이는 실수로 사이트를 방문했다는 주장과는 모순이다.
: 쉐도우 복사는 복원 지점의 소스 데이터다. 쉐도우 파일을 통해 특정 파일이 시간이 경과하면서 어떻게 변화했는지 증명할 수 있다. 또한 이미 삭제된 파일의 복사본이 저장되어 있을 수 있다.
- 사건 파일: 복원 지점, 쉐도우 복사, 안티 포렌식
텍사스 법무장관실 소속의 사이버 수사팀은 용의자가 아동 포르노를 인터넷에 올린다는 제보를 받고 검색 영장을 발부받았다. 경찰관들은 용의자를 심문하고 그의 차를 수색했다. 자동차 안에는 노트북이 있었다.
포렌식 조사를 위해 압수된 모든 물품을 사무실로 가져갔고, 용의자의 노트북을 조사하던 중 놀라운 사실을 발견했다. 용의자는 경찰관을 만나기 위해 집으로 돌아오는 동안에 데이터 삭제 툴을 사용해 증거 사진뿐만 아니라 인터넷 기록까지 모든 자료를 컴퓨터에서 삭제한 것이었다. 그 결과 최초 조사에서는 노트북에서 아동 포르노를 찾지 못했지만 다른 증거는 확보했다.
조사관들은 데이터 삭제 프로그램 자체의 로그를 확보해 프로그램이 실제로 사용된 적이 있다는 것을 알 수 있었다. 또한, 운영체제가 윈도우 비스타여서 조사관들은 컴퓨터의 쉐도우 복사를 확인했다.
다음으로 용의자의 노트북 컴퓨터의 포렌식 이미지(clone)를 가상 환경에 로드했다. 이렇게 조사관들은 용의자가 봤던 것과 동일한 컴퓨터 시스템을 볼 수 있었다. 조사관은 복원 지점을 용의자의 노트북에서 가져온 후에 이 파일을 포렌식 툴에서 불러들였다. 이 과정으로 조사관들은 용의자의 시스템 복원 지점으로부터 사진과 다른 정보를 축출할 수 있었다. 그 결과 3,000개 이상의 아동 포르노 사진을 복원할 수 있었다.
: 프리패치(prefetch)는 시스템의 속도를 증가시키기 위한 시도 중 하나다.
프리패치 파일은 특정 프로그램이 실제로 설치된 적이 있는지, 실행된 적이 있는지를 보여준다.
: 링크 파일은 지름길과 같은 기능을 제공한다. 링크 파일은 다른 파일을 가리키고 있다. 사용자가 링크 파일을 직접 만들 수도 있지만, 컴퓨터가 만들 수도 있다. 예를 들면 프로그램이나 폴더의 "바로 가기" 기능이다.
링크 파일 자체에도 날짜와 시간 정보가 저장되어 있어 링크가 언제 생성되고 마지막으로 언제 사용되었는지 알 수 있다. 파일이나 폴더 자체가 존재한 적이 없다는 주장에 대해 반박할 때도 사용될 수 있다. 링크 파일에는 더 이상 저장 매체가 연결되어 있지 않더라도 완전한 파일 경로가 저장되어 있을 수도 있다.
: 용의자 컴퓨터에 설치되어 있거나 설치되었던 적이 있는 소프트웨어의 정보가 유용할 수 있다. 특히 특정 소프트웨어가 특정 시점에 제거되었다면 더욱 관심을 가져야 한다. 이러한 흔적은 프로그램 폴더부터 링크와 프리패치 파일이 있는 위치에서도 발견할 수 있다.
[ Chapter 6 ] 안티 포렌식 (0) | 2021.02.03 |
---|---|
[ Chapter 8 ] 인터넷과 이메일 (0) | 2021.01.24 |
[ Chapter 4 ] 증거 수집 (0) | 2021.01.18 |
[ Chapter 3 ] 랩과 툴 (0) | 2021.01.15 |
[ Chapter 2 ] 핵심적인 기술 개념 (1) | 2021.01.10 |
댓글 영역