Keychain Forensics : Part II

이전 과정에서는 키체인에 대한 소개와 메모리 이미지 수집 방법을 알아보았다. 그 다음 단계로 키체인 파일이 저장되는 위치를 알아보고, 파일을 수집하는 방법을 고민해봐야한다.
키체인 파일은 어디에 저장이 될까? 키체인 파일은 크게 다음 3 곳에 저장되는 것으로 알려져 있다.

키체인 파일을 수집하는 방법을 생각해봐야 한다. 대부분의 포렌식 케이스에서는 디스크 이미지를 수집하기 때문에 해당 경로에서 파일을 추출해내면 되지만, 최근 수사영장에서 증거 수집의 범위를 좁혀나가는 상황에서는 특정 파일만 수집하여 분석하는 것을 요구하고 있다. 이러한 상황을 고려하여 논리적인 데이터를 추출 방법도 고민해 봐야 한다. Mac OS X에서 논리적으로 데이터를 수집하는 방법은 다음과 같다.

  1. 파일 복사를 이용한 데이터 수집 : 가장 평범하면서도 가장 고전적인 방법으로, 그냥 외부 저장장치를 연결하고 해당 파일을 복사하는 방법이다. 어떻게 보면 가장 정확하게 데이터를 수집할 수 있는 방법이지만, 사용자 인증을하여 시스템에 로그인하여 데이터를 수집해야하는 문제점이 있다. 또한 권한 문제를 가지고 있기 때문에, 파일의 권한을 확인해야 한다. 보통 키체인 파일은 로그인한 사용자의 키체인 파일만을 수집할 수 있으며, 다른 키체인 파일은 루트 권한을 가지고 있어야 한다.
  2. FW를 이용한 논리적 데이터 수집 : Firewire 케이블을 이용하여 두 Mac OS X 시스템을 연결하고 수집 대상 시스템을 Target Disk Mode(TDM, Command+T)으로 부팅한다. 수집 대상 시스템에는 FW 로고가 나타나며, 수집 시스템에 논리적 디스크로 마운트된다. 그 다음에 해당 파일을 복사한다. 이 방법은 파일 복사와 동일하게 데이터를 수집하며, 사용자 인증없이 키체인 파일을 수집할 수 있는 장점을 가진다. 하지만, FW 단자가 없는 경우엔 인터페이스 자체가 없기 때문에 해당 방법이 무용지물이 된다. 하지만 외장하드를 연결해서 데이터를 복사하는 방법보다는 좀 더 세련된 방법으로 볼 수 있다.
  3. 싱글 모드 부팅 후 데이터 수집 : Mac OS X도 유닉스 시스템 중 하나이기 때문에, 싱글 모드로 부팅하여 데이터를 수집할 수 있다. 싱글모드 부팅 방법은 예전에 블로그에서 설명한 적이 있으니, 해당 내용을 참조하도록 한다. [ref] 외부 저장장치는 FAT, HFS+가 읽기/쓰기가 가능하므로, 파일 시스템이 둘 중에 하나인 외부 저장장치를 활용하도록 한다.

위의 세가지 방법 중에 하나의 방법을 이용하여 데이터를 수집하고나면, 메모리 이미지를 수집하거나, 사용자에게 패스워드를 물어봐야 한다. 논리적 데이터 수집 방법 중 (1)의 방법을 이용했다면, 패스워드를 알고 있으나, (2)나 (3) 방법일 경우에는 패스워드를 알지 못하므로, 수집한 메모리 이미지로 분석해야 한다.

다음 과정에서는 키체인의 파일 포맷에 대한 소개와 분석 방법을 알아보겠다.