研究人員發現,某些網絡名稱會導致禁用 iPhone 上的 Wi-Fi
名稱中帶有百分比符號的 Wi-Fi 網絡可能會導致該錯誤
最近更新時間 2021-07-05 14:54:31
一位安全研究人員發現,名稱中帶有百分比符號 (%) 的某些 Wi-Fi 網絡可以禁用 iPhone 和其他 iOS 設備上的 Wi-Fi。Carl Schou 發推文説,如果 iPhone 進入名為 %secretclub%power 的網絡範圍內,設備將無法使用 Wi-Fi 或任何相關功能,即使在重置網絡設置後,該錯誤可能會繼續使設備上的 Wi-Fi 無法使用。
幾周前,Schou 和他的非營利組織 Secret Club,發現如果 iPhone 連接到 SSiD 名稱為 %p%s%s%s%s%n 的網絡,它會導致 iOS 網絡堆棧中的錯誤,從而禁用其 Wi-Fi,而且AirDrop 等系統網絡功能也將無法使用。
9to5 Mac 為這個奇怪的錯誤提供了一個可能的解釋:‘%[character]’ 常用於編程語言中,用於將變量格式化為輸出字符串。在 C 語言 中,'%n' 説明符意味着將寫入格式字符串的字符數保存到傳遞給字符串格式函數的變量中。Wi-Fi 子系統可能會將未經過濾的 Wi-Fi 網絡名稱 (SSID) 傳遞給一些正在執行字符串格式化的內部庫,從而導致任意內存寫入和緩衝區溢出。這將導致內存損壞,iOS 看門狗將終止該進程,從而有效地為用户禁用 Wi-Fi。
正如 9to5 Mac 指出的那樣,通過不連接名稱中帶有百分比符號的 Wi-Fi 網絡,可以避免該錯誤。