Apple設備可通過利用的“Find My”網絡功能收集藍牙設備信息
安全研究人員證實,“Send My”漏洞可以利用蘋果的定位服務收集并從附近設備發送信息,然后上傳至iCloud服務器。也就是說,蘋果公司的“Find My”功能可幫助某些別有用心的人跟蹤他們的iOS和macOS設備,這會允許非互聯網連接的設備通過使用附近的蘋果設備為其上傳數據來上傳任意數據。
Find My網絡使用所有活躍的iOS設備作為節點來傳輸位置數據,這樣黑客便有可能模仿AirTag連接到Find My網絡并廣播其位置的方式,通過加密的廣播發送它的位置,而當這個數據被替換成消息時,它可以被加密廣播信息所掩蓋了。
安全研究員Fabian Bräunlein開發了一個概念證明,使用一個微控制器和自定義MacOS應用程序,該應用程序可以通過低功耗藍牙(BLE)將數據從一個設備廣播到另一個設備。一旦連接到互聯網,接收設備便可以將數據轉發到攻擊者控制的Apple iCloud服務器。
Bräunlein將該方法稱為“Send My”,并提出了該方法的幾個用例,包括為物聯網(IoT)傳感器建立一個良性網絡,或隨著時間的推移耗盡人們的移動數據計劃。
考慮到該功能是基于“Find My離線查找系統的隱私和安全設計的固有功能”,蘋果幾乎不可能阻止這種濫用Find My的行為。
Braunlein表示,他的靈感來自于Apple AirTags,Apple AirTag是一款可以掛在隨身物品上的藍牙追蹤器。大小跟硬幣差不多,方便與任何物品掛在一起,比如你跟鑰匙掛在一起,只要鑰匙離開配對的iPhone一定范圍,手機就會發出聲響、跳出警訊通知用戶。若第一時間沒有收到警訊,也可以透過iPhone的“Find My”定位,一步步找回丟失的鑰匙。
Braunlein利用了德國達姆施塔特技術大學(Technical University of Darmstadt)的一個團隊之前的研究(PDF) ,該團隊已經對蘋果的Find My網絡進行了逆向工程,開發了一個名為OpenHaystack的工具。OpenHaystack允許人們創建自己的附件,這些附件可以被定位器服務找到和跟蹤。在此過程中,該團隊還發現了系統可能暴露用戶身份的漏洞。
當通過藍牙使用時,蘋果的“Find My”功能基本上是通過藍牙眾包查找某人的設備或物品的能力,設備之間使用位置信標進行通信。然后,設備的所有者就可以接收到注冊在蘋果icloud上的“查找我的iPhone”或iOS/MacOS“查找我的手機”應用程序中的設備的位置報告。
收集藍牙設備信息步驟如下:
1.當AirTag和Apple Device配對時,會生成一個橢圓曲線密鑰對,并將公鑰推送到AirTag和一個用于生成滾動公鑰的共享密鑰;
2.AirTag每2秒就發送一次以公鑰為內容的低功耗藍牙廣播,使用之前共享的秘密每15分鐘更改一次;
3.附近的iPhone,Macbook等可識別Find My 的廣播,檢索其當前位置,使用廣播的公共密鑰(使用ECIES)對位置進行加密,并上傳加密的位置報告;
4.在設備搜索過程中,配對的所有者設備會生成AirTag在過去幾天使用過的滾動公鑰列表,并向蘋果服務查詢它們的SHA256哈希值。Apple后端返回所請求的密鑰ID的加密位置報告;
5.所有者設備解密位置報告并顯示一個大致位置;
要按Bräunlein總結的方式使用該服務,需要許多工程步驟和自定義的硬件。為了發送數據,他編寫了一個低成本的ESP32微控制器作為調制解調器,使用基于openhaystack的固件廣播一個硬編碼的默認消息,然后在串行接口上監聽任何新數據的循環廣播,直到接收到新消息為止。然后,啟用了Find My服務的附近的Apple設備可以接收這些信號并將其發送到Apple的服務器。
為了檢索數據,Bräunlein也開發了一個基于OpenHaystack的MacOS應用程序,該應用程序使用具有提高權限的Apple Mail插件將經過身份驗證的位置檢索請求發送到Apple后端。
用戶會被提示輸入4字節的調制解調器ID(可以在刷新ESP固件時設置),之后應用程序將自動獲取、解碼并顯示消息。之后,用戶可以獲取其他信息或改變調制解調器。
Bräunlein想到了Send My利用方法的幾種用途。一種方法是將物聯網設備連接在一起,以更有效地共享互聯網連接。這是使用Amazon 的Sidewalk網絡和Echo設備顯示的場景;然后,可以使用iOS設備使用“Send My”來創建相同的信息。
由于Finding設備會緩存收到的廣播,直到它們具有Internet連接,只要人們經過該區域,傳感器甚至可以從沒有移動覆蓋的區域發送數據。
對于有更險惡意圖的人來說,這種方法可能被用來從某些氣密系統或高安全性法拉第籠屋子中竊取數據。 法拉第籠是由導電材料制成的外殼,用于阻止電磁場并防止通信信號穿透。
攻擊者可能會使用Send My來耗盡附近的iPhone的移動數據計劃,盡管系統上發送的廣播信息的數據容量不是很大(以千字節為單位),所以這種消耗可能需要一段時間。
Bräunlein說:
由于Finder設備的位置報告數量有限(由于1字節計數值,每次提交255個報告),每個報告都超過100字節,廣播許多獨特的公鑰應該會導致手機發送的移動流量的放大。
本文翻譯自:https://threatpost.com/apple-find-my-exploited-bluetooth/166121/如若轉載,請注明原文地址。






















