on
iOS Forensics : SMSSearchdb.sqlitedb
* 이 글은 iPad2 IOS5.0.1 버전을 기준으로 작성되었기 때문에 다른 버전에서는 그 내용이 다를 수 있습니다. 혹시 다른 버전에서 본 파일이 존재하지 않는다면 댓글로 알려주시면 감사하겠습니다 :-)
기존에 가지고 있던 아이패드2를 이번에 나온 ios5용 탈옥으로 핵(hack)하면서 포렌식 적으로 재미난 것이 무엇이 있을까 확인해보던 중 SMS와 관련된 재미있는 내용을 확인하였다. 아이패드의 기본 사용자 계정인 mobile의 홈 디렉터리를 기준으로 '~/Library/Spotlight/' 로 이동해보면 다음과 같이 두 디렉터리를 볼 수 있다.
n0fates-iPad:~/Library/Spotlight mobile$ ls
com.apple.MobileSMS/ com.apple.SpotlightTopHits/
Spotlight는 보통 아이폰의 검색 기능을 위해 존재하는 데몬으로 연락처나, 문자메시지, 지원하는 몇몇 문서 포맷에 대해, 다양한 정보를 인덱싱하여 저장하고 있는 데이터베이스이다. 고유의 포맷을 가지고 있으며, 그 포맷이 알려져 있지 않은 상태이다. 보통은 하나의 디렉터리에 Index0, Index1 이런식으로 데몬의 고유의 관리 방식에 맞춰서 다 수의 파일을 만들어두는게 일반적으로 맥에서 보았던 모습인데, IOS의 경우엔 MobileSMS라는 디렉터리가 별도로 유지되고 있었다. 디렉터의 내용은 다음과 같다.
n0fates-iPad:~/Library/Spotlight/com.apple.MobileSMS mobile$ ls -al
total 96
drwxr-xr-x 2 mobile mobile 170 Jan 31 18:28 ./
drwxr-xr-x 4 mobile mobile 136 Oct 30 15:33 ../
-rw-r--r-- 1 mobile mobile 69632 Jan 31 18:28 SMSSearchdb.sqlitedb
-rw-r--r-- 1 mobile mobile 24576 Jan 31 18:28 SMSSearchidx.spotlight
-rw-r--r-- 1 mobile mobile 0 Jan 31 18:28 updates.SMSSearch.spotlight
디렉터리 내부에는 sqlite 포맷의 파일 하나와 스팟라이트 포맷의 파일이 두개 존재하였다. 실제로도 각 포맷은 확장자 명에 맞는 포맷 구조를 가지고 있었다.
SMSSearchdb.sqlitedb 파일을 뷰어로 확인하면 다음과 같이 나타난다.