




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第7章iOS操作系統(tǒng)取證技術(shù)7.1iOS操作系統(tǒng)取證概述7.2iOS操作系統(tǒng)常見邏輯數(shù)據(jù)提取分析7.3iPhone備份文件的取證
7.1?iOS操作系統(tǒng)取證概述
7.1.1?iPhone手機的發(fā)展iPhone是美國蘋果公司研發(fā)的智能手機系列,在一段時期內(nèi),iPhone手機幾乎占據(jù)了手機市場的半壁江山,成為時尚的代名詞,其中緣由和iPhone手機的靚麗外觀、驚艷操作、流暢系統(tǒng)密不可分。由于iPhone是使用iOS最多的設(shè)備,因此在本章后續(xù)內(nèi)容中,有些地方會混用iOS和iPhone這兩個名詞。
2004年蘋果公司成立了iPhone研發(fā)團(tuán)隊,使iPhone手機發(fā)展邁出了第一步。從第一代手機推出后,蘋果公司以平均每年發(fā)布1~2款手機的頻率更新著iPhone系列。iPhone的內(nèi)部版本號和系列型號對應(yīng)關(guān)系如表7-1所示。
7.1.2?iOS操作系統(tǒng)簡介
iPhone手機從2007年第一代開始,就搭載了蘋果公司研發(fā)的iOS操作系統(tǒng)。該系統(tǒng)是一個封閉的操作系統(tǒng),僅支持在iPhone、iPodtouch、iPad等蘋果設(shè)備上運行,這也是蘋果系列硬件設(shè)備的核心競爭力所在。
在最高層級,iOS扮演著底層硬件和用戶創(chuàng)建的App之間的中介角色。App不會直接與底層硬件通信,而是通過一套定義明確的系統(tǒng)接口與硬件進(jìn)行通信。這些接口讓同一應(yīng)用能夠運行在不同性能的硬件設(shè)備上,iOS的技術(shù)實現(xiàn)可以被看作多個抽象的層級,如圖7-1所示。圖7-1iOS操作系統(tǒng)層級
用戶界面(CocoaTouch)層包含了構(gòu)建iOS應(yīng)用中與用戶交互有關(guān)的關(guān)鍵運行庫。這些庫定義了應(yīng)用的展現(xiàn),提供應(yīng)用的基本操作空間和關(guān)鍵技術(shù),包括多任務(wù)、以接觸為基礎(chǔ)的輸入、消息推送和許多高級的系統(tǒng)服務(wù)。
媒體(Media)層提供圖像、音像和視頻技術(shù)。
核心服務(wù)(CoreService)層包含了App用到的基礎(chǔ)系統(tǒng)服務(wù),其中最關(guān)鍵的服務(wù)是核心基礎(chǔ)(CoreFoundation)和基礎(chǔ)(Foundation)框架,它定義了所有App都會用到的基礎(chǔ)類型。這層也包含了一些特別的技術(shù),如位置、iCloud、社交媒體和網(wǎng)絡(luò)。
核心系統(tǒng)(CoreOS)層包含了大部分為系統(tǒng)提供服務(wù)的底層功能。即使App中沒有直接使用這些技術(shù),它們也很有可能已經(jīng)在其他框架中被間接使用。當(dāng)用戶有明確的安全需要或與外部硬件配件通信時,可以使用核心系統(tǒng)中的框架。
越獄的工作實質(zhì)就是攻擊這一信任鏈。所有越獄工具的作者都需要找到這一信任鏈上的漏洞,從而禁止信任鏈中負(fù)責(zé)驗證的組件。破解引導(dǎo)ROM通常是最有效的辦法,因為該組件不會因為蘋果公司今后的軟件更新而改變。
1.系統(tǒng)安全機制
蘋果公司在iOS操作系統(tǒng)安全方面下了一番苦功,相繼加入了沙盒機制、數(shù)據(jù)保護(hù)API、鑰匙串API、全盤加密技術(shù)來保護(hù)系統(tǒng)和數(shù)據(jù)的安全性。
1)沙盒機制
iPhone對安裝在手機中的應(yīng)用程序有所限制,即應(yīng)用程序只能在為該程序創(chuàng)建的文件系統(tǒng)中讀取文件,不可以去其他地方訪問,此區(qū)域被稱為沙盒??傮w來說,沙盒就是一種獨立、安全、封閉的空間,所有的非代碼文件都要保存在此,如圖像、圖標(biāo)、聲音、映像、屬性列表、文本文件等。
2)數(shù)據(jù)保護(hù)API
數(shù)據(jù)保護(hù)API利用文件系統(tǒng)加密、鑰匙串和用戶密碼提供了一個額外的針對文件的保護(hù)層,開發(fā)者可以根據(jù)需求調(diào)用,這限制了某些進(jìn)程在系統(tǒng)層面讀取文件。該API最常用的場景就是當(dāng)設(shè)備鎖定時確保數(shù)據(jù)不可用。
3)鑰匙串API
iOS操作系統(tǒng)提供了鑰匙串API來存儲少量機密信息。開發(fā)者可以用它來存儲密碼、機密密鑰以及那些不能被其他應(yīng)用訪問的敏感信息。調(diào)用鑰匙串API主要通過security守護(hù)進(jìn)程來完成,即從SQLite數(shù)據(jù)庫中提取數(shù)據(jù)。開發(fā)者可以指定在什么情況下允許應(yīng)用讀取密鑰。
4)全盤加密
對設(shè)備中底層的每個數(shù)據(jù)使用密鑰加密,密鑰類型分為文件密鑰(FileKey)、層級密鑰(ClassKey)、文件系統(tǒng)密鑰(File?SystemKey)和設(shè)備密鑰(DeviceKey)。
(1)文件密鑰針對每個文件單獨生成,存儲在文件的元數(shù)據(jù)中。不同級別的文件需要使用不同強度的加密密鑰。
(2)層級密鑰的作用是專門為那些特殊數(shù)據(jù)提供不同級別的保護(hù)。在早先的iOS版本中,默認(rèn)的保護(hù)等級是NSFileProtectionNone;但是從iOS5開始,默認(rèn)的保護(hù)等級變成了NSFileProtectionCompleteUntilFirstUserAuthentication。
(3)文件系統(tǒng)密鑰是一種全局加密密鑰,當(dāng)元數(shù)據(jù)被層級密鑰加密后,用戶使用文件系統(tǒng)密鑰來加密涉及文件安全的元數(shù)據(jù)。
(4)設(shè)備密鑰通常被稱為UID密鑰,每臺設(shè)備唯一,只能通過硬件的AES引擎訪問,操作系統(tǒng)無法直接獲取。它是系統(tǒng)的主密鑰,用來加密文件系統(tǒng)密鑰和層級密鑰。如果用戶啟用了用戶密碼(UserPasscode),那么它將與設(shè)備密鑰結(jié)合起來加密層級密鑰。
2.運行模式
iPhone有3種運行模式:正常模式、恢復(fù)模式(RecoveryMode)和DFU模式(Developer/DevelopmentFirmwareUpgradeMode)。下面重點介紹恢復(fù)模式和DFU模式。
1)恢復(fù)模式
恢復(fù)模式啟動時進(jìn)入iBoot模式,在此模式下可以通過iTunes對設(shè)備進(jìn)行刷機操作。進(jìn)入恢復(fù)模式有以下兩種方式。
方式一,其操作步驟如下。
(1)通過數(shù)據(jù)線連接iPhone設(shè)備至裝有iTunes的計算機。
(2)確保iPhone設(shè)備處在主屏幕界面。
(3)長按電源鍵,忽略彈出的“滑動來關(guān)機”消息,不要松開電源鍵。
(4)長按Home鍵。
(5)當(dāng)iPhone設(shè)備出現(xiàn)黑屏?xí)r,松開電源鍵,繼續(xù)按住Home鍵,直到計算機上的iTunes彈出“檢測到一個處于恢復(fù)模式iPhone”的消息再松開Home鍵。
(6)這時該設(shè)備已進(jìn)入恢復(fù)模式。
方式二,其操作步驟如下:
(1)拔掉數(shù)據(jù)線,關(guān)閉iPhone設(shè)備。
(2)長按Home鍵。
(3)運行計算機上的iTunes,將iPhone設(shè)備連接至計算機,此時依舊長按Home鍵不放。
(4)當(dāng)iPhone設(shè)備出現(xiàn)熟悉的RecoveryMode界面時,松開Home鍵。
若需要退出恢復(fù)模式,則需同時按住電源鍵和Home鍵,直到iPhone設(shè)備出現(xiàn)蘋果啟動圖標(biāo)即可。
2)?DFU模式
DFU模式與恢復(fù)模式的區(qū)別就是前者跳過了iBoot引導(dǎo)。iPhone設(shè)備越獄(經(jīng)過越獄的iPhone擁有對iOS操作系統(tǒng)底層的讀寫權(quán)限)、降級iOS版本等操作都是在DFU模式下完成的。越獄后的iPhone設(shè)備可以通過底層訪問磁盤分區(qū),獲取物理鏡像(不過由于iPhone4S采用了硬件加密芯片,即使獲取到物理鏡像也是加密的)。
不同iPhone系列手機進(jìn)入DFU模式的方法不同。
針對iPhone6S或者更低版本的iPhoneSE而言,進(jìn)入DFU模式的方法如下:
(1)使用數(shù)據(jù)線連接iPhone設(shè)備至計算機。
(2)同時按Home鍵和電源鍵。
(3)等待8?s,松開電源鍵,繼續(xù)按住Home鍵不放。如果此時出現(xiàn)蘋果圖標(biāo),則說明按電源鍵的時間過長,需重新開始上面的步驟。
(4)當(dāng)iPhone設(shè)備進(jìn)入DFU模式時,手機屏幕是黑的,iTunes會提示“檢測到一個處于恢復(fù)模式的設(shè)備”。如果此時手機上顯示連接iTunes的圖標(biāo),需重新開始上面的步驟。
針對iPhone7、iPhone7Plus而言,進(jìn)入DFU模式的方法如下:
(1)使用數(shù)據(jù)線連接iPhone設(shè)備至計算機。
(2)長按電源鍵將iPhone關(guān)機。
(3)同時按下電源鍵和音量“-”鍵。
(4)等待8?s,松開電源鍵,繼續(xù)按住音量“-”鍵不放。如果此時出現(xiàn)蘋果圖標(biāo),則說明按電源鍵的時間過長,需重新開始上面的步驟。
(5)當(dāng)iPhone設(shè)備進(jìn)入DFU模式時,手機屏幕是黑的,iTunes會提示“檢測到一個處于恢復(fù)模式的設(shè)備”。如果此時手機上顯示連接iTunes的圖標(biāo),則需重新開始上面的步驟。
針對iPhone8、iPhone8Plus、iPhoneX而言,進(jìn)入DFU模式的方法如下:
(1)使用數(shù)據(jù)線連接iPhone設(shè)備至計算機。
(2)快速按一下音量“+”鍵。
(3)快速按一下音量“-”鍵。
(4)長按電源鍵直到手機變黑屏,同時按電源鍵和音量“-”鍵。
(5)等待5?s,松開電源鍵,繼續(xù)按住音量“-”鍵不放。如果此時出現(xiàn)蘋果圖標(biāo),則說明按電源鍵的時間過長,需重新開始上面的步驟。
(6)當(dāng)iPhone設(shè)備進(jìn)入DFU模式時,手機屏幕是黑的,iTunes會提示“檢測到一個處于恢復(fù)模式的設(shè)備”。如果此時手機上顯示連接iTunes的圖標(biāo),則需重新開始上面的步驟。
對iPhone手機取證主要有4個途徑:備份文件取證、邏輯取證、物理取證和iCloud取證,其中備份文件取證方法最簡單、方便。
7.1.3備份文件取證
近些年來,電子數(shù)據(jù)取證領(lǐng)域快速發(fā)展,出現(xiàn)的各類案件中都有電子數(shù)據(jù)證據(jù)的身影,其中針對iOS設(shè)備的取證占有一席之地。
在iOS備份文件沒有密碼保護(hù)的情況下,通過備份文件進(jìn)行取證是最簡單、便捷的方法。蘋果公司的iTunes軟件提供了對iOS設(shè)備進(jìn)行備份的功能。
在iOS11版本中,蘋果公司加入了USB限制模式(USBRestrictedMode)功能,用戶除了要選擇“信任”外,還要輸入解鎖密碼,只有這樣iPhone設(shè)備才能與計算機建立信任關(guān)系,并且成功連接后只有7天有效期。但在以前,信任過的設(shè)備是可以被多次連接的,現(xiàn)在加上了7天限制,超過7天需要重新信任、輸入解鎖密碼。
使用iTunes生成的備份文件在不同操作系統(tǒng)的保存位置如表7-2所示。
打開備份的目錄可以看到里面有很多文件,其中包括Status.plist、Manifest.plist、Manifest.mbdb(或Manifest.db)、Info.plist等,如圖7-2所示。圖7-2?iTunes備份出來文件的部分內(nèi)容
AppleMobileBackup.exe為蘋果驅(qū)動中的命令行程序,安裝iTunes即已成功安裝該程序。AppleMobileBackup.exe命令支持的功能如圖7-3所示。圖7-3?AppleMobileBackup.exe命令支持的功能
libimobiledevice是一個可以和iOS設(shè)備進(jìn)行通信的跨平臺的程序庫,其中包含兩個備份命令,分別為idevicebackup和idevicebackup2。idevicebackup支持低版本iOS設(shè)備的備份,idevicebackup2支持高版本iOS設(shè)備的備份。在Linux環(huán)境下使用命令格式“idevicebackup2-u設(shè)備IDbackup–full保存路徑”對iPhone設(shè)備進(jìn)行備份,這里使用“idevicebackup2-u9e972f63b73be2a879785fb3732d25f2d793e74abackup--full./”,如圖7-4所示。圖7-4使用libimobiledevice備份iPhone設(shè)備的數(shù)據(jù)
從備份文件中能獲取的內(nèi)容包括:①聯(lián)系人、個人收藏夾;②通話記錄;③蘋果商店應(yīng)用數(shù)據(jù);④安裝的應(yīng)用程序設(shè)置及數(shù)據(jù);⑤Safari瀏覽器相關(guān)數(shù)據(jù)(書簽、歷史記錄、搜索記錄、Cookies等);⑥日歷、事件;⑦相冊、視頻;⑧位置信息;⑨郵件賬號;⑩?AppStore賬號;?網(wǎng)絡(luò)設(shè)置(熱點信息、VPN設(shè)置、WiFi信息);?備忘錄、語音備忘錄;?短消息、彩信圖片;?系統(tǒng)通知消息。
從iOS3開始,iTunes就具有設(shè)置備份密碼的功能。在設(shè)置了備份密碼之后,該iOS設(shè)備每次導(dǎo)入或解析備份必須輸入密碼。使用備份密碼得到的備份文件比未加密的備份文件多了一些信息,具體包括:
①存儲的密碼;
②網(wǎng)站歷史記錄;
③WiFi設(shè)置;
④健康數(shù)據(jù)。
如果丟失或忘記密碼,該備份文件則無法恢復(fù)到設(shè)備,取證工具也無法解析該備份文件中的數(shù)據(jù)。這種情況下就需要使用類似ElcomsoftPhoneBreaker(https://www.elcom/eppb.html,以下簡稱EPB)工具進(jìn)行暴力或字典攻擊來破解密碼,在進(jìn)行密碼破解時選擇備份中的Manifest.plist文件。不過由于iOS的安全設(shè)計比較強,因此破解速度很緩慢,基本上需要使用字典攻擊破解密碼,而且在iOS9之后這種方式已經(jīng)無效。Elcomsoft官網(wǎng)公布的各個顯卡使用GPU(GraphiceProcessingUnit,圖形處理器)加速破解的速度如圖7-5所示。圖7-5各個顯卡使用GPU加速破解的速度
當(dāng)案件中出現(xiàn)需要處理具有備份密碼的iOS設(shè)備且無法破解的情況時,iOS11之前的版本是無法對這種情況進(jìn)行處理的,清除備份密碼將導(dǎo)致整個證據(jù)手機數(shù)據(jù)的丟失。但是在iOS11或更高版本中,可以通過還原設(shè)置的方式清除備份密碼,操作方法如下:
(1)在iOS設(shè)備上前往“設(shè)置”→“通用”→“還原”,點擊“還原所有設(shè)置”,然后輸入iTunes密碼。
(2)按照上述步驟操作還原的iOS設(shè)備的設(shè)置不會影響用戶數(shù)據(jù)或密碼,但會還原顯示屏亮度、主屏幕布局和壁紙等設(shè)置,還會移除iOS設(shè)備的加密備份密碼。
(3)重新將iOS設(shè)備連接至iTunes,然后創(chuàng)建新的加密備份。
(4)完成上述操作之后,將無法使用在此之前的加密備份,但可以使用iTunes備份的當(dāng)前數(shù)據(jù)并設(shè)置一個新的備份密碼。
如果iOS設(shè)備安裝的是iOS10或更低版本,則無法使用上面的方式清除密碼。當(dāng)遇到這種情況時,可以嘗試使用iCloud云備份對設(shè)備進(jìn)行備份,然后從iCloud云備份上獲取數(shù)據(jù)。
7.1.4邏輯取證
邏輯取證是指取證軟件基本上是基于iOS備份上進(jìn)行獲取、分析的過程。iTunes提供的iOS備份功能,能夠較完整地獲取設(shè)備的數(shù)據(jù)。
7.1.5物理取證
物理取證就是將iPhone設(shè)備內(nèi)存芯片中的數(shù)據(jù)轉(zhuǎn)換為鏡像文件,類似傳統(tǒng)硬盤獲取原始的DD鏡像的過程。通過物理取證獲取的內(nèi)容不僅包含已有數(shù)據(jù),還包含未分配空間中的數(shù)據(jù)。如果iPhone設(shè)備支持物理取證,則意味著是獲取刪除文件以及keychain鑰匙串的有效方式。相較于iOS備份和邏輯取證,物理取證能提取到更多的數(shù)據(jù)。
keychain文件中可以包含多種類型的數(shù)據(jù),如密碼(包括網(wǎng)站、FTP服務(wù)器、SSH賬戶、網(wǎng)絡(luò)共享、無線網(wǎng)絡(luò)、群組軟件、加密磁盤鏡像等各種應(yīng)用)、私鑰、電子證書、加密筆記等。
iPhone4之后啟用了硬件加密,iOS8版本更是增強了keychain鑰匙串的功能,對存儲的數(shù)據(jù)進(jìn)行加密,采取每個文件一個獨立密鑰的方式,一旦文件被刪除,該文件的加密密鑰也會被刪除,即使恢復(fù)出該文件的存儲數(shù)據(jù)也無法對其進(jìn)行解密。所以,物理取證方式適用的范圍還是很有限的。
很多取證軟件都有支持物理取證的功能,如Cellebrite的UFED(UniversalForensicExtractionDevice)。由于iOS設(shè)備的硬件加密機制,導(dǎo)致物理獲取功能只能支持早期的一些設(shè)備型號。
7.2?iOS操作系統(tǒng)常見邏輯數(shù)據(jù)提取分析
7.2.1短消息的提取和分析短消息、iMessages應(yīng)用數(shù)據(jù)保存在?/private/var/mobile/Library/SMS/sms.db目錄下,sms.db為SQLite數(shù)據(jù)庫,有時會看到sms.db-shm和sms.db-wal文件,這兩個文件是SQLite數(shù)據(jù)庫的預(yù)寫日志和索引。草稿內(nèi)容保存在Drafts目錄下,附件內(nèi)容保存在Attachments目錄下。測試手機的Library/SMS/目錄內(nèi)容如圖7-6所示。圖7-6?Library/SMS/目錄內(nèi)容
短消息數(shù)據(jù)庫sms.db對應(yīng)的iPhone備份文件中的文件名為3d0d7e5fb2ce288813306e4d4636395e047a3d28,sms.db在Manifest.mbdb中的信息如圖7-7所示(關(guān)于Winhex模板的介紹見7.3.1節(jié))。圖7-7?sms.db在Manifest.mbdb中的信息
由圖7-7可知,由sms.db數(shù)據(jù)庫的域名和路徑字符串合并得到字符串HomeDomain-Library/SMS/sms.db,再計算合并字符串的SHA1哈希值,得到短信數(shù)據(jù)庫在備份中的存儲文件名為3d0d7e5fb2ce288813306e4d4636395e047a3d28,這也是所有備份文件中文件名的由來。
sms.db數(shù)據(jù)庫中主要的表有message、chat、chat_message_join、message_attachment_join、attachment,短消息內(nèi)容主要保存在message表中,通過chat_message_join、message_attachment_join等關(guān)聯(lián)表可查找出對應(yīng)短消息的電話號碼、附件。
執(zhí)行以下SQL語句,查詢短消息內(nèi)容:selectc.chat_identifieras'電話號碼',c.service_nameas'類型',u.textas'短消息內(nèi)容',datetime(substr(u.date,1,9)+978307200,'unixepoch','localtime')as'時間',case發(fā)送'接收'endas'方向',A.filenameas'附件'fromchat_message_joinasMleftjoinchatasConC.rowid=M.chat_idleftjoinmessageasUonU.rowid=M.message_idleftjoinmessage_attachment_joinasM1onM1.message_id=U.rowidleftjoinattachmentasAonA.rowid=M1.attachment_id;
短消息內(nèi)容查詢結(jié)果如圖7-8所示。圖7-8短消息內(nèi)容查詢結(jié)果
7.2.2通話記錄的提取和分析
通話記錄的數(shù)據(jù)庫保存在?/private/var/wireless/Library/CallHistory/call_history.db文件中,保存了手機的撥出和呼入電話的歷史記錄。通過數(shù)據(jù)挖掘該數(shù)據(jù)庫,可以得到刪除的通話記錄。call_history.db數(shù)據(jù)庫中的call表保存了通話記錄數(shù)據(jù),該表中主要字段的含義如表7-3所示。
從iOS8版本開始,通話記錄數(shù)據(jù)庫的路徑變更為/private/var/wireless/Library/CallHistoryDB/CallHistory.storedata,如圖7-9所示。圖7-9通話記錄保存的位置
CallHistory.storedata數(shù)據(jù)庫(主要的表如圖7-10所示)中的ZCALLRECORD表保存了通話記錄數(shù)據(jù)。圖7-10?CallHistory.storedata數(shù)據(jù)庫中主要的表
ZCALLRECORD表中主要字段的含義如表7-4所示。
值得一提的是,在/private/var/mobile/Library/Preferences/com.apple.mobilephone.plist文件(plist格式文件轉(zhuǎn)換為xml格式的方法見7.3.1節(jié))中,節(jié)點DialerSavedNumber的值記錄了最后一次撥出的電話號碼。圖7-11中,DialerSavedNumber的值與通話記錄數(shù)據(jù)庫CallHistory.storedata中的ZCALLRECORD表中最后一條記錄的ZADDRESS字段值相同。圖7-11通話記錄歷史信息
7.2.3聯(lián)系人信息的提取和分析
聯(lián)系人數(shù)據(jù)保存在/private/var/mobile/Library/AddressBook目錄下的AddressBook.sqlitedb、AddressBookImages.sqlitedb數(shù)據(jù)庫中。AddressBook.sqlitedb數(shù)據(jù)庫存儲了每個聯(lián)系人的詳細(xì)信息,包括姓名、姓氏、電話號碼、電子郵件、地址等,上述數(shù)據(jù)主要保存在ABPerson、ABMultiValue表中;AddressBookImages.sqlitedb數(shù)據(jù)庫存儲了聯(lián)系人的頭像數(shù)據(jù),以blob
7.2.4瀏覽器歷史記錄的提取和分析
iOS設(shè)備中都預(yù)裝了蘋果瀏覽器應(yīng)用Safari,Safari的瀏覽記錄、書簽、Cookies數(shù)據(jù)保存在?/private/var/mobile/Library/目錄和Safari程序目錄中。
(1)?Safari書簽存儲在?/private/var/mobile/Library/Safari/Bookmarks.db數(shù)據(jù)庫中,早期iOS版本則存儲在Bookmarks.plist或Bookmarks.db文件中。
(2)?Safari瀏覽器的Cookies存儲在?/private/var/mobile/Library/Cookies/Cookies.binarycookies文件中,該文件存儲格式并非SQLite數(shù)據(jù)庫。
(3)?Safari快速訪問站點截屏記錄了用戶最常訪問網(wǎng)站的截圖縮略圖,存儲在/private/var/mobile/Library/Caches/Safari/目錄中。
(4)?Safari搜索緩存記錄了用戶使用Safari瀏覽器在搜索欄中的最新搜索,存儲在/private/var/mobile/Library/Caches/Safari/RecentSearches.plist文件中。
(5)?Safari歷史搜索記錄了Safari瀏覽器最近搜索的列表,當(dāng)用戶刪除Safari搜索緩存、Safari歷史瀏覽記錄時,Safari歷史搜索信息依然不會被刪除,存儲在/private/var/mobile/Library/Preferences/com.apple.mobilesafari.plist文件中,轉(zhuǎn)換后可以看到以數(shù)組方式顯示的歷史搜索記錄,如圖7-12所示。圖7-12?Safari歷史搜索記錄
(6)?Safari暫停狀態(tài)是指當(dāng)用戶按下Home鍵、iPhone關(guān)機、瀏覽器崩潰等這幾種情況發(fā)生時Safari瀏覽器的最后狀態(tài),Safari暫停狀態(tài)就是為了能夠讓瀏覽器順利恢復(fù)到這種狀態(tài)而產(chǎn)生的。此時,Safari數(shù)據(jù)存儲在/private/var/mobile/Library/Safari/SuspendState.plist文件中,如圖7-13所示。圖7-13SuspendState.plist文件中的部分內(nèi)容(已轉(zhuǎn)換)
(7)?Safari縮略圖保存第三方應(yīng)用使用WebKit框架(WebKit是蘋果macOSX操作系統(tǒng)引擎框架版本的名稱,主要用于Safari、Dashboard、Mail和其他一些macOSX程序)最后活動的截圖,存儲在?/private/var/mobile/Library/Caches/Safari/Thumbnails/目錄或?/private/var/mobile/Library/Safari/Thumbnails/目錄中。
7.2.5郵件客戶端信息的提取和分析
當(dāng)用戶將他們的電子郵件賬戶同步到設(shè)備時,賬戶信息以及電子郵件內(nèi)容會被存儲在設(shè)備內(nèi)。
/private/var/Keychain/keychain-2.db文件保存了電子郵件的賬號信息,在該鑰匙串文件中還有用戶登錄、WiFi賬號、應(yīng)用登錄等信息。從數(shù)據(jù)庫的inet表中可以得到電子郵件的賬號信息。
/private/var/mobile/Library/Mail/目錄中保存了蘋果郵件客戶端每個電子郵件賬戶同步到設(shè)備的郵件文件夾,包括接收、發(fā)送、草稿等內(nèi)容。從測試備份文件的路徑下可看到一個Recents文件,查看數(shù)據(jù)庫中contacts表包含的一些聯(lián)系人信息,如圖7-14所示。
圖7-14?Recents文件中contacts表的部分記錄
7.2.6位置信息的提取和分析
自從iOS6版本于2012年發(fā)布以來,蘋果手機擁有了自己的地圖應(yīng)用程序,數(shù)據(jù)存儲在?/private/var/mobile/Library/Preferences/com.apple.Maps.plist文件中。該文件包含用戶最后搜索的信息,如經(jīng)度、緯度、搜索查詢。地圖主文件存儲在?/private/var/mobile/Library/Maps目錄中,包含用戶搜索的歷史記錄以及所標(biāo)記的位置列表。
7.2.7其他信息源分析
Notes應(yīng)用程序存儲了有關(guān)用戶創(chuàng)建的備注信息,數(shù)據(jù)存儲在?/private/var/mobile/Library/Notes/notes.sqlite、/private/var/mobile/Library/Notes/notes.idx文件中。notes.idx為筆記的片段存儲的索引文件,筆記標(biāo)題、內(nèi)容、創(chuàng)建時間和修改時間存儲在notes.sqlite數(shù)據(jù)庫中的ZNOTE和ZNOTEBODY表中。
日歷應(yīng)用程序允許用戶手動創(chuàng)建事件,并將它們與其他應(yīng)用程序進(jìn)行同步。日歷事件信息存儲在/private/var/mobile/Library/Calendar/Calendar.sqlitedb和/private/var/mobile/Library/Calendar/Extras.db這兩個數(shù)據(jù)庫中。/Calendar.sqlitedb數(shù)據(jù)庫基本上包含了與日歷中存在的事件相關(guān)的所有信息,Extras.db數(shù)據(jù)庫保存了日歷設(shè)置、與特定日歷事件相關(guān)的提醒等額外信息。
語言備忘錄應(yīng)用程序可以讓用戶錄制語音,這些備忘錄數(shù)據(jù)存儲在/private/var/mobile/Media/Recordings/目錄中。在該文件夾中,每個語音備忘錄的元數(shù)據(jù)信息被保存至Recordings.db數(shù)據(jù)庫中,包括每次錄音備忘的時長、備忘錄名稱、日期、語音備忘錄的文件名等,文件中保存的是具體的錄音數(shù)據(jù)。
7.3?iPhone備份文件的取證
7.3.1備份文件的結(jié)構(gòu)與分析iOS的備份文件包括3類:PList文件、數(shù)據(jù)文件以及數(shù)據(jù)庫文件。
1.?PList文件PList是一種屬性列表文件,用來存儲串行化后的對象,擴展名為?.plist。其存儲方式有3種,其中以XML格式或binary格式最為常見。
1)?Info.plist文件
Info.plist文件是明文保存的,里面記錄了設(shè)備名字、iOS版本、型號、備份日期、設(shè)備信息、UDID、ICCID、MEID、應(yīng)用程序列表等信息,如圖7-15所示。圖7-15?Info.plist文件的部分內(nèi)容
2)?Manifest.plist文件
Manifest.plist是一個二進(jìn)制格式的PList文件,里面記錄了安裝的應(yīng)用程序、備份是否加密等信息。用文本工具打開該文件是亂碼的,部分內(nèi)容如圖7-16所示。
從圖7-16可以看出,二進(jìn)制格式的PList文件是非明文的,無法直接閱讀其內(nèi)容,可以通過工具將這種格式轉(zhuǎn)換成明文的XML格式。macOS、Windows操作系統(tǒng)環(huán)境下都提供了轉(zhuǎn)換命令。Windows環(huán)境需要安裝iTunes,命令程序存放的路徑為C:\ProgramFiles(x86)\CommonFiles\Apple\AppleApplicationSupport\plutil.exe。plutil.exe命令支持的格式如圖7-17所示。圖7-17?plutil.exe命令支持的格式
將二進(jìn)制格式的PList文件轉(zhuǎn)換為XML格式,使用的命令為“plutil.exe-convertxml1plist文件?-oxml文件”,如“plutil-convertxml1Manifest.plist-oManifest.json”。轉(zhuǎn)換后生成的Manifest.json文件的部分內(nèi)容如圖7-18所示。圖7-18?Manifest.json文件的部分內(nèi)容
3)?Status.plist文件
Status.plist也是一個二進(jìn)制格式的PList文件,包含了一些諸如備份時間、是否為全量備份等備份狀態(tài)信息,轉(zhuǎn)換后的部分內(nèi)容如圖7-19所示。圖7-19?Status.plist文件轉(zhuǎn)換后的部分內(nèi)容
2.數(shù)據(jù)文件
iOS備份文件中有大量文件的文件名是由40個十六進(jìn)制字符組成的,這些文件都是數(shù)據(jù)文件。其文件名的生成規(guī)律是根據(jù)“域?+?原始路徑”(使用“-”為連接符)拼接得到的字符串計算SHA1值,SHA1值就是生成的文件名。例如,短消息數(shù)據(jù)庫的路徑為Library/SMS/sms.db,其域名為HomeDomain,將字符串合并后為HomeDomain-Library/SMS/sms.db,計算該字符串的SHA1哈希值為3d0d7e5fb2ce288813306e4d4636395e047a3d28,如圖7-20所示。圖7-20計算SHA1結(jié)果
3.數(shù)據(jù)庫文件
iOS備份文件中的數(shù)據(jù)庫相關(guān)文件有Manifest.mbdx、Manifest.mbdb、Manifest.db。
在iOS5版本之前,iOS備份文件中有Manifest.mbdb和Manifest.mbdx兩個文件,其中,Manifest.mbdb是備份的索引文件,由一個定長的頭部和若干定長的記錄構(gòu)成;Manifest.mbdx數(shù)據(jù)庫中記錄著文件信息,如域名、路徑、哈希值、文件大小等屬性。
但在iOS5版本中廢棄了Manifest.mbdx文件,Manifest.mbdb文件包含域名、路徑、路徑類型、創(chuàng)建時間、密鑰、文件大小等屬性。Manifest.mbdb是一個結(jié)構(gòu)化文件,由無數(shù)個數(shù)據(jù)記錄組成。使用十六進(jìn)制查看工具WinHex打開該文件,其文件頭部分內(nèi)容如圖7-21所示。
由圖7-21可知,前面6字節(jié)6D6264620500為文件頭,隨后的字節(jié)存儲著備份文件中各種數(shù)據(jù)文件的信息。解析Manifest.mbdb文件結(jié)構(gòu),可以看出數(shù)據(jù)記錄中很多數(shù)據(jù)字段的存儲結(jié)構(gòu)為“長度?+?值”的模式,即由前2個字節(jié)聲明其值的長度(用字節(jié)表示),緊隨其后則是字段的內(nèi)容。Manifest.mbdb中一條數(shù)據(jù)記錄的結(jié)構(gòu)解析如表7-5所示。
表7-5中整數(shù)的存儲格式為big-endian。為了便于分析一條數(shù)據(jù)的結(jié)構(gòu),可以借助WinHex、010editor等十六進(jìn)制編輯器的模板功能。參照表7-5中各個數(shù)據(jù)字段的解析,下面寫了一個簡單的WinHex模板,其中文件屬性這部分
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年勁截紓行業(yè)深度研究分析報告
- 2024年全球及中國變頻增壓泵行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 角質(zhì)溶解藥項目風(fēng)險識別與評估綜合報告
- 眼鏡促銷方案策劃書3
- 2024-2030全球絕緣干式電力變壓器行業(yè)調(diào)研及趨勢分析報告
- 外貿(mào)出口貿(mào)易采購代理合同
- 2025年企業(yè)標(biāo)志旗項目投資可行性研究分析報告
- 房地產(chǎn)銷售項目合作合同書
- 2025-2030年中國折合晾衣架行業(yè)深度研究分析報告
- 2024-2030全球煙囪檢查攝像機行業(yè)調(diào)研及趨勢分析報告
- 2025年2月時事政治100題及參考答案
- 2025年湖南鐵道職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫帶答案
- 部編高教版2023·職業(yè)模塊 中職語文 2.《寧夏閩寧鎮(zhèn):昔日干沙灘今日金沙灘》 課件
- 安全環(huán)保職業(yè)健康法律法規(guī)清單2024年
- (正式版)YBT 6328-2024 冶金工業(yè)建構(gòu)筑物安全運維技術(shù)規(guī)范
- 2022年袋鼠數(shù)學(xué)競賽真題一二年級組含答案
- 人工智能引論智慧樹知到課后章節(jié)答案2023年下浙江大學(xué)
- 銀行保潔服務(wù)投標(biāo)方案(技術(shù)標(biāo))
- 青島市社會團(tuán)體換屆工作規(guī)范
- 個人房屋出租合同協(xié)議書(打印版)
- 公共衛(wèi)生科工作職責(zé)
評論
0/150
提交評論