許多 iOS 應用程序正在利用推送通知觸發的后臺進程,來收集有關用戶數據,從而允許創建用于跟蹤的指紋配置文件。


發現這種做法的移動研究人員 Mysk 表示,這些應用程序繞過了蘋果的后臺應用程序活動限制,并對 iPhone 用戶構成隱私風險。


“應用程序不應根據收集的數據秘密構建用戶配置文件,并且不得嘗試、促進或鼓勵其他人識別匿名用戶或根據從 Apple 提供的 API 收集數據。” 蘋果應用商店審查指南的一部分寫道。


在分析了 iOS 后臺進程在接收或清除哪些數據后,研究人員發現許多有一定用戶群的應用程序涉及其中。


喚醒并收集數據


Apple 設計 iOS 時不允許應用程序在后臺運行,以防止資源消耗并提高安全性。當不使用應用程序時,它們會被暫停并最終終止,因此它們無法監視或干擾前臺活動。


不過,在 iOS 10 中,蘋果推出了一個新系統,允許應用程序在后臺悄悄啟動,以便設備顯示新的推送通知之前對其進行處理。


該系統允許接收推送通知的應用程序解密傳入有效負載,并從其服務器下載附加內容在將其提供給用戶之前對其進行豐富。此過程完成后,應用程序將再次終止。


通過測試,研究人員發現許多應用程序濫用此功能。根據應用程序的不同,包括系統正常運行時間、區域設置、鍵盤語言、可用內存、電池狀態、存儲使用情況、設備型號和顯示屏亮度。



LinkedIn 在推送通知到達期間的網絡數據交換


研究人員認為,這些數據可用于指紋識別/用戶分析,從而實現持久跟蹤,而這在 iOS 中是嚴格禁止的。


“測試表明,這種做法比我們預期的更常見。許多應用程序在被通知觸發后發送設備信息的頻率令人震驚,”Mysk解釋道。


Mysk 創建了一個視頻,顯示了Facebook、LinkedIn 等接收推送通知期間的網絡流量交換。這些應用程序被發現使用 Google Analytics、Firebase 或他們自己的專有系統等服務,將各種設備數據發送到他們的服務器。


有人就其應用程序檢索用戶數據的問題聯系了 Microsoft、Apple和 LinkedIn,但未立即得到回復。


緩解措施


蘋果將通過加強對設備信號 API 的使用限制來填補這一空白,并防止進一步濫用推送通知喚醒。


從 2024 年春季開始,應用程序將被要求準確聲明為什么它們需要使用可被濫用于指紋識別的 API。這些 API 用于檢索有關設備的信息,例如磁盤空間、系統啟動時間、文件時間戳、活動鍵盤和用戶默認值。


如果應用程序沒有正確聲明它們對這些 API 的使用用途,Apple App Store 將會拒絕它們使用。


在此之前,想要取消這種指紋識別的 iPhone 用戶應該完全禁用推送通知,但禁用推送通知并不能完全防止濫用。


參考及來源:https://www.bleepingcomputer.com/news/security/iphone-apps-abuse-ios-push-notifications-to-collect-user-data/