如今智能手機在取證鑑定中發揮的作用越來越大。您的智能手機比其他任何東西、任何人都更瞭解您的日常生活。它跟蹤您的位置,記錄您的足跡,AI 您的照片,並幫助您付款。由於大量的數據集中在一個設備中,因此有理由期望獲得最高級別的保護。在本文中,我們將回顧蘋果公司保護其用戶數據的措施的時間表以及執法部門使用的對策。本文不包括雲取證,只有純粹的設備取證。

“現在,我們非常尊重執法部門,我們在許多領域與他們合作,但在這個問題上我們有分歧。因此,讓我說得再清楚不過: 削弱或取消加密,會傷害那些出於正當理由使用加密的好人。最終,我相信它會對我們的第一修正案權利產生寒蟬效應,破壞我們國家的建國原則。” (蒂姆 · 庫克,2015)

所以,讓我們回顧一下蘋果這些年來爲保護用戶的隱私和安全所做的努力。

iPhone OS 1到3——易如反掌

最初的 iOS 版本中,蘋果並不關心安全問題。沒有加密,密碼很容易繞過,安全性很低。說實話,第一代 iPhone 在安全方面並沒有做的很多,因爲最初沒有太多需要保護的東西。Jonathan Zdziarski 發現了從鎖定設備中提取完整文件系統的方法,詳見iOS Forensic Investigative Methods(https://www.zdziarski.com/blog/?p=2287)。

產品發佈

  • iPhone OS 1.0 – iPhone
  • iPhone OS 2.0 – iPhone 3G
  • iPhone OS 3.0 – iPhone 3GS

iOS 4——文件系統加密

在 iOS 4之前,iPhone 中的數據是不受保護的。簡單地移除存儲芯片就可以訪問所有用戶數據。注意,文件系統加密是基於硬件密鑰的; 解密數據不需要用戶的密碼。因此,當法律需要的時候,蘋果仍然能夠訪問這些設備的內容。

產品發佈

  • iOS 4.0 – iPhone 4
  • iOS 5.0 – iPhone 4s
  • iOS 6.0 – iPhone 5

iOS 7——配對及通知

在 iOS 4到iOS 7,安全部分幾乎沒有什麼變化。iOS 7中唯一值得注意的變化是新的配對過程,在 iPhone 上彈出了一個通知窗口。用戶必須點擊通知框來確認配對。蘋果公司正準備在 iOS 8上進行一次大的升級。

iOS 7 也是首款支持指紋識別和安全區的 64 位 iPhone 的 iOS 版本。

產品發佈

  • iOS 7.0 – iPhone 5s,首款配備安全安全區的 64 位 iPhone

與此同時,Zdziarski 發現了 iOS 設備上的一個後門,詳見https://www.zdziarski.com/blog/?p=3466

iOS 8:使用密碼加密;密碼破解不再有效

iOS 8在安全方面是一個里程碑的版本。在這個版本中,蘋果幾乎改變了整個iPhone安全模型。

產品發佈

  • iOS 8 – iPhone 6及6 Plus

讓我們從邏輯獲取說起。

在 iOS 8之前,蘋果公司爲每一臺 iPhone 創建一個靜態配對記錄(lockdown文件)。配對記錄由蘋果保留。即使在工廠被重置,靜態配對記錄也將保持不變。一旦配對,設備無法"取消配對"。也就是說,lockdown記錄不會過期。這使得蘋果能夠與執法部門合作。蘋果公司一旦收到鎖定的蘋果設備,可以提取數據,並將鏡像提供給申請機構。

隨着 iOS 8的發佈,這種情況發生了改變。配對記錄變成了每次不同。當處理一個配對請求時,iOS現在 會生成一個新的密鑰對,其中一個密鑰存儲在內部存儲器中,另一個存儲在目標計算機上。銷燬任何一個密鑰都會導致配對無效,從而使連接無效。

單單這一變化就夠嚴重了,但蘋果並沒有止步於此。與靜態硬件憑證支持的文件系統加密不同,iOS 8現在使用了一種基於用戶屏幕鎖密碼的加密方案。現在,在用戶在冷啓動後或打開電源時首次使用密碼解鎖其設備前,密鑰加密密鑰是動態生成的。更改密碼將重新創建並重新保存密鑰加密密鑰。因此,沒有人(包括蘋果公司)可以在不知道用戶密碼的情況下解密冷設備(以今天的術語來說是第一次解鎖之前) 的完整文件系統。請注意,文件系統的某些部分仍然可以訪問,以允許 iPhone 完全啓動; 這包括一些日誌和系統數據庫。即使沒有密碼,這些碎片也可以被提取出來。

正如大家所看到的,密碼開始成爲蘋果安全模型的標誌。在 iOS 8中,蘋果公司瞄準了當時市場上的iPhone破解盒。僅一次系統更新就讓當時市面上所有密碼破解盒子失效。取證公司花了幾年時間纔開發出新的、更加複雜的解決方案。

請注意,在 iOS 8之前,蘋果可以進行 iOS 數據提取。但蘋果的執法要求準則現在明確指出:

對於所有運行 iOS 8.0及以後版本的設備,蘋果無法進行 iOS 設備數據提取,因爲執法部門通常需要的數據是加密的,而且蘋果沒有加密密鑰。所有 iPhone 6和以後的設備都運行 iOS 8.0或者更新版本的 iOS。

iOS 8還引入了一個限制, 可以使用一個單獨的、用戶可配置的限制 PIN (始終爲 4 位數字)來限制某些設備活動。

iOS 9:默認6位數密碼

iOS 9有一個值得注意的變化,現在設置新設備時默認使用6位數密碼。雖然還可以切換回舊的4位數密碼,但是隨着每個 iOS新 版本的發佈,相關步驟變得越來越不顯眼。

產品發佈

  • iOS 9.0.1 – iPhone 6s及6s Plus

iOS 10:縮短lockdown有效期

在 iOS 10之前,配對記錄(lockdown文件)幾乎從不會失效。我們可以使用6個月前創建的lockdown記錄。由於許多取證公司依賴現有的lockdown記錄進行邏輯提取,蘋果公司開始將lockdown記錄視爲一種威脅。iOS10嚴重縮短了lockdown文件的有效期。當時沒有官方聲明,但後來人們知道 iOS 10及以上版本在最後一次使用30天后配對記錄就失效了。

另一方面,iOS 10存在一個巨大的倒退。 從 iOS 5(甚至是 iOS 4)開始,蘋果就使用了相同的算法來驗證備份密碼。大約20,000個哈希迭代被用來從用戶的密碼生成加密密鑰。這是緩慢的,但還可以接受。然而,在 iOS 10中,一些實習生不小心創建了一個後門。這個後門使用單個哈希迭代,這使我們能夠以每秒數千萬密碼的速度創建攻擊。

產品發佈

  • iOS 10.0.1 – iPhone 7及7 Plus

iOS 10.1:修復備份密碼後門

在 iOS 10.0中引入的備份密碼後門在 iOS 10.1中被修復。

iOS 10.2:備份密碼加強

經過仔細考慮,蘋果公司認爲速度還不夠慢,並大大增加了用密碼生成備份加密密鑰所需的散列迭代次數。從那時起,基於 CPU的攻擊每分鐘大約可以嘗試12個密碼,而 GPU 輔助攻擊則顯示恢復速度約爲每秒100至200個密碼(單個 GPU)。從本質上講,這讓暴力破解變得沒有意義,除非是最簡單的密碼。

iOS 10.3:向APFS過渡

隨着 iOS 10.3的發佈,蘋果公司將所有的設備都升級成了一個新的、爲固態存儲優化的文件系統——APFS。新的文件系統迫使取證公司更新他們的軟件。

iOS 11:配對需要密碼

iOS 11給設備安全模型帶來了兩個顯著的變化。首先,蘋果引入了一種方法,可以從 iOS 設備上的設置中重置備份密碼。重置備份密碼需要用戶輸入屏幕鎖密碼; 因此屏幕鎖密碼的作用顯著增加。我們認爲這是一個巨大的倒退,從多層次的安全模型到一個完全基於用戶密碼的模型。

產品發佈

    • iOS 11.0 – iPhone 8及8 Plus

    • iOS 11.0.1 – iPhone X

建立屏幕鎖密碼在所有其他安全措施上的完全支配性的另一個步驟是,在與新計算機配對時,需要鍵入密碼。

關於配對記錄還有一件事,蘋果已經正式確認了lockdwon / 配對記錄的失效規則。

配對過程要求用戶解鎖設備並接受來自主機的配對請求。在 iOS 11或更高版本中,用戶還需要輸入其密碼。用戶完成此操作後,主機和設備交換並保存2048位 RSA 公鑰。然後給主機一個256位的密鑰,該密鑰可以解鎖存儲在設備上的託管密鑰包。交換的密鑰用於啓動加密的 SSL 會話,這是設備在向主機發送受保護的數據或啓動服務(iTunes 同步、文件傳輸、 Xcode 開發等)之前所需要的。設備通過 Wi-Fi 連接主機時使用加密的會話進行所有通信,因此它必須事先通過 USB 配對。配對還支持多種診斷功能。在 iOS 9中,如果配對記錄的使用時間超過6個月,它就會過期。這個時間段在 iOS 11或更新版本中縮短爲30天。(來源: iOS 安全指南2019年5月版 ,iOS 12.3)。

iOS 11也爲我們帶來了新的S.O.S.模式,一旦激活,就會禁用生物特徵解鎖。此外,通知不再存儲在備份中(這修復了一個漏洞,允許通過分析舊的通知偷窺用戶的安全通信——順便說一下,這些通知不會出現在設備本身上)。

iOS11.4.1:引入USB限制模式

iOS 11.4.1的發佈引入了USB限制模式,該功能旨在抵禦密碼破解工具(如Cellerbrite和Grayshift開發的密碼破解工具)。iOS 11.4.1在設備最後一次解鎖後一小時,或設備與USB配件或計算機斷開連接後一小時,自動關閉閃電端口的USB數據連接。此外,用戶還可以在任何時候通過使用S.O.S.模式手動禁用USB端口。

iOS 12將USB限制又向前推進了一步。根據蘋果發佈iOS 12後發佈的新iOS安全指南,如果上一次USB連接已經超過三天,或者設備處於需要密碼的狀態,則在設備鎖定後立即禁用USB連接。此外,如果用戶使用S.O.S.模式,USB端口也會被禁用。

此外,在iOS 12系統中,如果USB連接已經建立超過三天,設備將在鎖定後立即禁止新的USB連接。這是爲了加強對不經常使用此類連接的用戶的保護。當設備處於需要密碼才能重新啓用生物認證的狀態時,USB連接也會被禁用。”

此外,iOS 12引入了屏幕使用時間功能。一段時間後,屏幕使用時間可以通過iCloud同步。

產品發佈

  • iOS 12.0 – iPhone Xs及Xs Max
  • iOS 12.0 – iPhone Xr

iOS 13:更改備份密碼需要密碼; USB 限制模式再次改進

隨着iOS 13的發佈,蘋果宣佈對iTunes進行重大改革,iTunes是唯一一個爲iOS設備進行本地備份的“官方”應用程序。在macOS Catalina和更新版本中,本地備份是在Finder應用程序中創建的,而不是iTunes。Mac電腦上不再有iTunes了。

產品發佈

    • iOS 13.0 – iPhone 11 Pro及11 Pro Max

    • iOS 13.0 – iPhone 11

當您設置或更改保護本地備份的密碼時,將提示您在iPhone上輸入鎖屏密碼。類似於新的配對請求(從iOS 11開始),您需要在設備上輸入密碼。

那麼USB限制呢?iOS 13爲iPhone帶來了一種配件的“配對”。爲了“配對”一臺電腦,你需要在iPhone上輸入PIN碼;然後,設備將交換加密密鑰,以啓用數據傳輸(包括圖片)。“配對”配件是一個單面的過程,不需要PIN碼,也不涉及加密密鑰。當用戶在設備解鎖時(或在連接附件後解鎖),配件會“配對”到iPhone。然後,iPhone將存儲有關“配對”配件的信息,並將該配件指定爲“受信任”狀態。

iOS 13的USB限制對配對過的配件和新配件是不同的。在 iOS 13 中,由於設備已鎖定或用戶斷開以前使用的配件,在一小時後,通過 USB 端口(Lightning 連接)的數據通信受到限制。

iOS 13會區別對待配對過的及新的USB配件。如果用戶試圖連接之前配對的USB配件,如果在一個小時之內,連接可以建立。

然而,如果用戶試圖連接之前沒有與iPhone配對的新配件,即使在一小時內嘗試連接,USB端口也會立即被鎖定。

此外,未加密的本地備份不再包含通話記錄和Safari瀏覽歷史記錄。

硬件漏洞利用

從iPhone 5s到iPhone 8、8 Plus和iPhone X一代設備(包括配備類似處理器的iPad和Apple TV機型),所有64位蘋果設備都發現了大規模的硬件漏洞。即使密碼未知,也可以通過DFU在鎖定的設備上通過checkm8漏洞和checkra1n越獄。該漏洞允許從鎖定的設備中執行有限的文件系統和keychain獲取,並從任何易受攻擊的設備中提取完整的文件系統和keychain,無論iOS版本如何,只要知道密碼即可。請注意,無論是利用漏洞或越獄都無助於鎖屏密碼破解。

本文翻譯整理自ElCOMSOFT博客,原文作者Oleg Afonin

聲明:本文來自取證雜談,版權歸作者所有。文章內容僅代表作者獨立觀點,不代表安全內參立場,轉載目的在於傳遞更多信息。如有侵權,請聯繫 [email protected]

相關文章