天天看點

《iOS驗證實戰:調查、分析與移動安全》一3.3 資料存儲位置

iphone擁有标準的檔案目錄結構,在其中存儲着各種檔案(參考附件c,展示了從iphone中恢複的檔案夾和檔案的全清單)。iphone硬體沒有外置存儲插槽,是以它所有的資料都存儲在裝置内部(與之對應的是,其他裝置擁有外置sd卡或仿真sd卡裝置)。為了顯示iphone的目錄層級,我們使用第5章中提及的技術,通過wi-fi遠端接入一個已越獄的iphone。在一台macintosh電腦上通過ssh連接配接到iphone,以檢視其檔案系統進行研究分析。登入裝置後可以通過“1s”指令檢視目錄内容。

《iOS驗證實戰:調查、分析與移動安全》一3.3 資料存儲位置

審查者感興趣的大部分資料都存儲在“private/var/mobile/”路徑下(在iphone磁盤映像上,“mobile”檔案夾将是已挂載映像的根目錄);然而,我們也能夠在其他位置找到有價值的驗證證據。在mobile檔案夾中,有三個子檔案夾:applications、library和media。任何下載下傳的程式都将以圖3-1中所示的格式存儲到applications檔案夾。每個安裝的程式都有一個應用程式辨別,此辨別将作為程式存儲的檔案夾名稱,且此辨別在所有裝置上都是一樣的。

《iOS驗證實戰:調查、分析與移動安全》一3.3 資料存儲位置

所有應用程式檔案夾的内容通常都是一樣的,包含以下一些标準的檔案夾和檔案:

documents檔案夾中包含特定程式的相關檔案,比如plists、文本檔案或圖檔。

library檔案夾包含緩存資料、cookies、參數以及webkit資料(如果程式有應用到此資料)。“參數”通常是使用者登入資料的存儲位置(如果此應用程式要求使用者提供憑證登入)。

應用程式檔案夾的資料可被提取以檢視私有檔案,其中包含了程式依賴代碼和其他檔案。

tmp檔案夾在大多數的應用程式目錄下是空的。

下面展示的清單是iphone應用程式yahoo!的目錄内容,其中一些較容易了解的檔案未展示(比如logos和icons)。此架構代表了标準的應用程式目錄。我們先看一下最頂層的目錄,可看到documents、library以及tmp檔案夾,然後可看到yahoo!應用程式檔案夾的大緻結構。其中,itunes artwork和itunesmetadata.plist檔案是标準檔案,在所有通過itunes app store下載下傳的程式目錄下都可以找到它們。我們可以提取實際的應用程式檔案資料,以便更詳細地了解這個程式的開發情況。在這個例子中,info.plist檔案中可能包含了應用程式版本号、釋出時間,或許還有使用者的登入資料。不同的應用程式還會有不同的配置檔案。在審查者尋找存儲的應用程式資料時,普遍都會關注這個區域。

《iOS驗證實戰:調查、分析與移動安全》一3.3 資料存儲位置
《iOS驗證實戰:調查、分析與移動安全》一3.3 資料存儲位置

除已下載下傳的應用程式外,更多常見的資料通常被存儲在library或media下的特定子檔案夾中。例如,短信被存儲在library>sms路徑下一個叫sms.db的檔案中。對大多數資料來說,iphone檔案系統的組織結構是相當直覺的。

對于一些存儲在裝置根目錄中的檔案,為了了解其中存儲的資料,我們也将進行少量研究。其中一個例子是存儲在裝置上的gps位置資訊。許多應用程式經常詢問使用者是否允許它開啟gps定位功能,包括照相機和視訊錄像。是以,gps資料經常可以在圖檔或視訊檔案中找到。當ios 4.0版本釋出時,iphone檔案系統的部分設計發生了變化。其中一個主要的轉變與一個叫做consolidated.db的檔案相關。這個資料庫檔案中包含了全數組的gps資料以及經緯度坐标、時間戳、手機發射台位置、裝置進行的wi-fi或藍牙連接配接。這個資料庫檔案有些特殊,雖然它可能存儲了一些應用程式的私有資訊,但它不在應用程式私有檔案夾中。關于從consolidated.db檔案或其他地方恢複gps資料的更多細節,可以在第6章中檢視到。

繼續閱讀