CTF-D/Disk

[Disk] A회사 보안팀은 내부직원

Ron Weasley 2022. 3. 15. 20:04

문제를 보겠습니다.

문제를 보면 내부직원이 인터넷을 통해서 내부문서를 외부로 업로드를 하였다는 것으로 보아. P2P같은 사이트에 업로드를 했다는 것을 알 수 있습니다.

 

주어진 파일을 가지고 문제를 풀어 보도록 하겠습니다.

파일을 다음과 같이 FTK Imager로 열게 되면 다음과 같이 root경로에 다양한 폴더들이 존재하는 것으로 보인다.

각 폴더들은 하나의 app을 가지고 있었고, 이것으로 보아 그 app을 설치할 때 받았던 고유번호인것으로 추정이 됩니다.

 

각 app들은 다음과 같습니다.

Weather.app, CGV2.app, CNN-iPhone.app, Podcasts.app, Dropbox.app, WebViewService.app, HousekeepingLog.app,

MyPainting.app, HarroNotes.app, dayalbumlite.app입니다.

 

이것으로 보아 해당 이미지 파일의 운영체제를 알 수 있었습니다. 모바일 이미지 파일이며 기종은 iPhone입니다. 왜 iPhone인지 궁금하시다면, 파일 app을 보면 CGV2.app가 설치되어 있는 폴더로 가면 iTunes라는 plist가 존재합니다.

 

plist란 맥OS 응용프로그램에서 사용하는 "등록 정보 파일"이며, XML파일로 포맷되어 있으며 텍스트 또는 바이너리 형식으로 저장됩니다.

 

본론으로 넘어가여 설치되어 있는 app들을 보아 P2P사이트는 단 하나, Dropbox밖에 없다는 것을 알 수 있습니다.

Dropbox로 들어가서 다음과 같은 경로로 가면 png파일이 하나 존재합니다.

Root\5BB3AF....439\Library\Caches\Snapshots\com.getdropbox.Dropbox

tim_folder라는 명칭안에 S-Companysecurity.pdf가 존재하는것이 보입니다. 이것으로 보아 유출한 내부 문서는 S-Companysecurity.pdf로 추측을 할 수 있습니다. 하지만 이것만 보면 플래그값을 찾을 수 없기 때문에 Dropbox의 캐시가 저장되어 있는 경로로 가보겠습니다.

Root\5BB3AF....439\Library\Caches\cache.db

cache.db파일을 추출하여 SQLite로 열어봅시다.

열어서 파싱된 값을 살펴보면 다음과 같습니다.

아까 사진이랑 동일한 폴더 명을 볼 수 있습니다. 그래서 필터된 xml version .....을 보면 암호화된 값을 볼 수 있어서 추출한 db파일을 가지고 plist의 값을 파싱해주는 도구로 살펴보겠습니다.

이렇게 암호화된 파일을 이렇게 해줍니다.

그래서 아까 우리가 살펴봤던 S-Companysecurity.pdf파일을 검색하여 봅시다.

찾아왔습니다. 이제 살펴볼게욤!! 먼저 NS.time이란 시간을 나타냅니다. 

Dropbox에서는 캐시에 저장할 때, 그 파일에 대한 업로드 시간을 먼저 보여주고, 뒤에 수정 시간을 나타냅니다.

 

타임스탬프를 변환하면 다음과 같습니다.

Upload Time = 378291354 = Thu, 27 December 2012 17:55:54 +0900

Modified Time = 357554798 = Tue, 01 May 2012 17:46:38 +0900

 

그럼 플래그 형식에 맞춰서 적어 주시면 됩니다.

 

업로드 시간 : 2012년 12월 27일 17시 55분 54초

수정 시간 : 2012년 05월 01일 17시 46분 38초

파일명 : S-Companysecurity.pdf

파일 사이즈 : 2.1MB