解決方案
當 Apple 的 iOS 18.1 更新於 2024 年 11 月初為 AirPods Pro 2 開啟助聽器功能時,Rithwik Jayasimha 和他的父親為他聽力不佳的祖母買了一副——卻在購買十五分鐘後發現該功能不見了。印度不在 Apple 的支援國家名單上,而這項遺漏之所以令人難受,是因為價格:印度專用助聽器通常要價 ₹50,000 至 ₹800,000,而 Apple 宣稱這款消費級耳機能矯正最高 60 dBHL 的聽力損失。
顯而易見的繞道方法都失敗了。代理 Apple 的 IP 地理定位端點、更改商店地區、語言環境與時區,甚至用 Xcode 模擬 CoreLocation,都無法解鎖該功能,而憑證綁定(certificate pinning)則破壞了其他連線。反編譯 locationd 與 countryd 二進位檔後,原因便清楚了:Apple 的 CLCountryTracker 會刻意略過模擬位置,而主控台日誌顯示裝置仍知道自己不在美國。
一位朋友說明了他們漏掉的管道:僅支援 Wi-Fi 的 iPad 沒有 GPS 或行動網路,因此 iOS 會根據周遭的 Wi-Fi SSID 與 MAC 位址推斷位置。三人組從開放的 Wigle 資料庫取得 Menlo Park 的信標資料,分叉(fork)Skylift 專案,讓 ESP32 循環播放約 100 個加州 SSID,將 iPad 包進鋁箔法拉第籠,並運轉一台廚房微波爐——一台 2.4GHz 干擾器——以蓋過班加羅爾的真實網路。在籠內重新開機後,iPad 的法規網域翻轉為美國,助聽器設定便出現了。
一旦啟用,該旗標與聽力設定檔會透過 iCloud 同步,因此這項功能會跟著擁有者的帳號走,而非單一裝置。該團體公開了完整方法,提議在班加羅爾舉辦小型場次為人解鎖 AirPods,並打造了更堅固的第二版籠子,以供進一步的無線電與網路實驗。
成果
僅支援 Wi-Fi 的裝置會從環境中的 SSID 定位自身,因此要「傳送」它,得改變無線環境,而非 GPS
為何奏效
沒有 GPS 或行動網路的裝置會從環境中的 Wi-Fi 信標定位自身,因此偽造這些信標,就等於偽造了整個定位判斷所信任的唯一感測器。
Apple 的強化防禦——憑證綁定與 locationd 內的模擬位置檢查——保護的是預期攻擊者會使用的管道,卻讓 Wi-Fi 定位管道保持開放。
這個實體變通方法便宜且可重現:鋁箔、紙板、一台 2.4GHz 微波爐,以及一顆循環播放開源信標資料的 ESP32。
由於啟用的旗標會跟著擁有者的 iCloud 帳號走,一次成功解鎖便會持續有效,並傳播到他們的其他裝置,無須重複「傳送」。
這項成果值得這番努力:在印度,專用助聽器要價高達 ₹800,000,而 AirPods 這條路讓聽力矯正有了消費電子產品的價格。
可套用之處
當平台以位置限制某項功能時,找出真正餵給該檢查的感測器並在那裡模擬:偽造顯而易見的管道會失敗,改變環境中的 Wi-Fi 無線環境則會成功。
後續
《Wired》同日報導了這則故事,Hacker News 討論串獲得 591 分與 193 則留言,作者們在當中回答關於這項破解的技術問題。該團體表示印度各地有數十人聯絡他們求助,並計畫使用第二個更堅固的籠子舉辦解鎖場次。並非每次複製都成功——有些讀者發現 AirPods 仍保留最後連線的地區——作者們也預期 Apple 可能修補這個漏洞,不過 Apple 當時並未置評。這起事件也讓該團體留下了一個法拉第籠,他們計畫將其再用於無線電與網路研究。
追溯依據
參考來源
- Bypassing regulatory locks, Faraday cages and upgrading your hearing Lagrange Point (Substack) · lagrangepoint.substack.com ·
- These Guys Hacked AirPods to Give Their Grandmas Hearing Aids Wired · wired.com ·
- Bypassing regulatory locks, hacking AirPods and Faraday cages (Hacker News discussion) Hacker News · news.ycombinator.com ·