註冊裝置: 用戶端產生 PKCS#10 格式的憑證簽署要求(CSR),內含 2048 位元 RSA 金鑰與 SHA-1 簽章,再將要求送至 Apple 舊版的 authenticateDS 設備註冊端點。伺服器隨後回傳 Apple Identity Services(IDS)憑證。
註冊 IDS 身分: 憑藉該憑證及相關裝置資料,Linux 可以註冊為支援 IDS 的裝置,宣告可用的加密類型、訂閱必要的訊息子服務,並取得 Apple Push Notification Service(APNs)推播憑證。
同步「尋找」資料: 用戶端重現原生「尋找朋友」的請求順序,包括初始化、重新整理,以及帶有 intent: distributeKeysmode: proactiveSubscribeAndFetch 請求。Apple 接著要求已同意分享位置的聯絡人裝置,透過 IDS 與 APNs 將目前的位置金鑰資料傳送給新註冊的身分。
在本機解密: 加密的 IDS 封包包含關係資料與 SearchParty 金鑰材料。開源套件 pypush 負責推播與 IDS 層,FindMy.py 則查詢並解密後續的「尋找」報告,還原位置座標、時間戳記與精確度資訊。
示範中的 SubscribeAndFetch 行為顯示:當位置分享關係已經存在時,Apple 可以把目前的位置金鑰資料傳送給新獲授權的裝置。這對裝置更換與帳號同步相當重要,否則使用者每新增一部裝置,就可能必須要求所有聯絡人停止並重新開始位置分享。
據公開技術說明,相關封包包含關係識別碼、金鑰索引、32 位元組的雜湊廣播金鑰,以及 85 位元組的私密金鑰表示形式。這些欄位顯示,「尋找」位置報告的解密依賴特定分享關係與金鑰版本,且目前的金鑰狀態可以透過 IDS 重新分發。
根據研究說明,它沒有以下功能:
因此,這項成果更準確的定位是互通性與信任邊界研究,而不是遠端任意追蹤陌生人的漏洞。較實際的安全風險在於 Apple 帳號或獲信任裝置遭到入侵:如果攻擊者控制帳號,或將未授權裝置註冊進帳號,該帳號原本能看到的位置分享就可能被暴露。
Zerotistic 的示範與 nRootTag 觸及「尋找」生態系統中的不同部分,威脅模型也不一樣。
nRootTag 針對的是「尋找網絡」與離線尋找。 研究人員指出,Apple 服務接受了超出預期的藍牙位址類型。這可能讓攻擊者把具備藍牙功能的電腦變成類似 AirTag 的追蹤訊標,再利用附近 Apple 裝置回報位置,且不需要目標裝置持有人同意。
簡單說,Zerotistic 的專案接收的是帳號原本就有權查看的資料;nRootTag 則試圖建立未經授權的追蹤能力。把兩者混為一談,會讓 Linux 示範看起來比證據所支持的範圍更具威脅性。
這項研究留下的核心訊息是:把功能限定在 Apple 硬體上,並不等於硬體本身就是不可取代的安全邊界。如果伺服器主要根據帳號憑證、裝置憑證、功能能力與協定行為授予信任,那麼只要相容性足夠高,其他作業系統上的用戶端也可能跨過產品邊界;但它仍會受到帳號權限與合法取得的加密金鑰限制。