iCloud功能與安全性介紹
2019-7-29 高田數位鑑識
當無法對iOS裝置進行檔案或物理取證時,雲端提取是一種可行的替代方案。新的iOS 13版本帶來更多的安全措施,但對數位鑑識人員的工作只會更加困難。下載iCloud備份的功能已經存在多年,但是需取得用戶帳密以及雙重驗證(2FA)的資訊始終是一個障礙。
iCloud安全分析
Apple不擁有存儲其用戶資料的伺服器。 iCloud備份,照片,訊息甚至密碼都儲存於Amazon,Microsoft,Google,AT&T和中國政府擁有的第三方伺服器上(適用於居住在中國大陸的用戶)。 但是,這並不代表著Amazon,Microsoft,Google,AT&T或中國政府可以讀取任何儲存於雲端伺服器的這些資料。 讓我們以iCloud備份為例,來看看Apple如何保護iCloud資料免於實體的威脅。
首先,用戶的iCloud備份檔案被切分成多個塊(Chunks),每個塊單獨上傳(以隨機的順序)到一個或多個伺服器。 每個塊都使用唯一的加密密鑰進行加密。沒有這些密鑰,即使以正確的順序組裝,資料仍是加密的二進制數據檔案。
那誰擁有加密密鑰呢?密鑰儲存在Cupertino資料中心的Apple自己的伺服器上。密鑰永遠不會傳遞給Apple以外的任何單位或中國政府(但執法單位在有合法的搜索權下,可以要求Apple提供嫌犯的iCloud資料,通常Apple會在48小時至3個禮拜內提供)。
從以上分析我們可以得知
- 由於Apple擁有用戶資料和加密密鑰,因此Apple可以完全可以讀取用戶資訊。
- Apple可以將用戶的iCloud資料解密並將其移交給執法單位。
- 通過身份驗證的人,可以讀取資料和加密密鑰,因此可以從而下載和解密iCloud備份。
iCloud備份 (iCloud Backups)
iCloud備份的備份檔案內大多數的資料都可以使用用戶驗證資訊(Credential)進行解密,但某些重要的資訊會採用更安全的硬體加密機制來處理。該硬體加密過程會在iOS裝置內執行(在iPhone或iPad本身); 這些重要的資訊不會以未加密的形式傳輸出。由於採硬體加密方式,因此這些內容只能恢復到當初備份的那一台硬體裝置上(若移轉iCloud備份到新的裝置,舊的裝置必須在旁)。
在iOS 12和iOS 13(beta)中,此內容包括:
以下內容不會被iCloud Backup備份:
此外,如果用戶有針對特定類別啟用iCloud同步,則會從iCloud備份中將同步項目排除,不進行iCloud備份。 這些項目包括:
*注意*,iOS 13特別排除了以下兩個內容類別:
iCloud同步(iCloud Sync)
自從2011年iCloud備份出現以來,Apple正逐漸降低該功能。 iCloud Photo Library的推出使照片透過iCloud的同步服務在設備間同步資料。 一旦用戶啟用了 iCloud Photo Library,照片將不再儲存於iCloud備份中。 同樣的,一旦用戶啟用了iCloud Message(需要iOS 11.4及更高版本),簡訊與iMessage訊息將不再儲存在iCloud備份中,而是透過用戶的iCloud帳號進行同步。 iOS 13之後,iCloud備份將停止Call Logs和Safari瀏覽記錄的備份,這兩個類別會由iCloud同步功能取代。
Authentication token適合用於提取iCloud同步資料(受保護類別除外)。 以下總結了iCloud同步資料的安全機制:
使用螢幕鎖加密的iCloud資料
該類別的資料受到最高等級的保護處理,採用了End-to-end Encryption(E2EE)來確保只有用戶才可解密這類別的資料。以下類型資料必須註冊在同一個Apple ID下,並知道裝置的螢幕鎖定密碼(或Mac系統密碼),才可以解密使用:
若要讀取這些保護的內容,你必須要有以下所有項目:
讀取iCloud資料的限制
例外:iOS 11與12的保護與提取健康資料
從iOS 11開始,Apple提供了iCloud的健康資料同步功能。 在iOS 11中,除CDA記錄之外的所有類型的資料都採iCloud同步。且對活動,睡眠,營養,等類型的資料沒有額外的保護。
iOS 11健康資料保護方式
- 讀取iCloud上同步的健康資料,需Apple ID帳密與2FA驗證碼。
- Apple有技術能力取得iCloud上的健康資料。
- 當政府或GDPR請求時提供iCloud健康同步資料時,Apple會提供。
- PA可以分析iCloud同步的健康資料。
iOS 12健康資料保護方式
與iOS 11最大的不同,iOS 12針對健康資料採用E2EE加密方式;有趣的是,舊的(未加密的)健康資料在用戶將其最後一個設備更新到iOS 12後尚會在iCloud上保留一段時間。為了讀取iOS 12以上版本的iCloud同步的健康數據,需要以下所有項目:
- Apple ID帳密。
- 2FA驗證碼(若沒啟用2FA,則健康資訊不會同步至iCloud)。
- 任一個已在iCloud同步上註冊過的裝置或Mac。
已下為iOS 12的限制
雙因素驗證的好處、Advantage of Two-Factor Authentication
如果用戶啟用了2FA雙因素身份驗證,用戶可獲得的備份深度,會比沒有啟用2FA多很多。如用戶可以使用iPhone直接重置Apple ID密碼,他們可以在不知道iCloud密碼的情況下停用“尋找我的iPhone”功能。
只有具有2FA身份驗證的帳戶才能執行以下操作:
- 同步密碼(iCloud Keychain)
- 同步訊息(簡訊與iMessages)
- 同步健康資料
- 同步螢幕使用時間資料
數位鑑識人員因2FA驗證,可以獲得的資訊比沒保護的情況下還完整。且若有手機的情況下,取得2FA的一次性密碼也相對簡單。或者也可以使用Authentication Tokens來跳過2FA驗證,但會有限制。
Token與2FA驗證的限制、Restrictions of Authentication Token and Two-Factor Authentication
早期,若使用驗證Token可從雲端提取大部分的資料,甚至包括iCloud備份。而今,Apple大幅限制了驗證Token可以提取的資料。您無法再使用Token來讀取已啟用2FA驗證的iCloud備份。雖然您仍然可以使用Token從非2FA帳戶下載iCloud備份,但這些Token的生命週期僅限於產生後的一小時。
不管有或沒有啟用2FA的狀態下,可以使用Token提取的同步內容包括(沒有一小時時間限制):
- 大部分的同步資料,包括聯絡人、行事曆、筆記等。
- Safari瀏覽紀錄。
- 電話撥打紀錄。
- iCloud照片。
- iDrive檔案。
- Cloud郵件。
- FileVailt 2硬碟加密救援的Token。
若啟用了2FA:
- iCloud備份無法透過token讀取。
若2FA沒啟用:
- iCloud備份可以使用Token取得,但有一個小時的限制。
以下為無法透過Token取得的內容:
如何取得Apple ID帳密
因為token的限制較多,鑑識人員可以思考如何取得Apple ID驗證帳密:
總結
iCloud Authentication Token不再像過去前那樣方便。Token的加密和保護與一小時的組合限制使得Token對於讀取特定類型的同步資料是有效的。可惜的是,最有價值的資料無法透過Token取得,例如iCloud備份,密碼,健康和訊息。