В iPhone обнаружен баг, который нарушает работу беспроводной связи при подключении к точке доступа с определенным именем. Хуже того, Wi-Fi не заработает даже после перезагрузки устройства, а также если точка доступа будет переименована. Исследователи предупреждают, что такой баг может стать настоящим подарком для пранкеров и злоумышленников, которые могут поднимать собственные точки доступа в общественных местах и блокировать подключающиеся к ним iPhone.
Проблему обнаружил исследователь Карл Шу (Carl Schou), когда попытался подключиться к своей личной точке доступа, называвшейся «%p%s%s%s%s%n». При попытке подключения Wi-Fi на его iPhone (iPhone XS под управлением iOS версии 14.4.2) попросту отключался, а когда эксперт пытался включить его снова, ничего не вышло ни после перезапуска девайса, ни после изменения SSID.
After joining my personal WiFi with the SSID “%p%s%s%s%s%n”, my iPhone permanently disabled it’s WiFi functionality. Neither rebooting nor changing SSID fixes it :~) pic.twitter.com/2eue90JFu3
— Carl Schou (@vm_call) June 18, 2021
Журналисты издания Bleeping Computer, с которыми Шу поделился этим наблюдениям, провели собственные опыты и подтверждают, что беспроводная связь на iPhone выходит из строя после подключения к беспроводной сети с подобным названием. На Android-устройствах воспроизвести баг не удалось.
«В ряде тестов при попытке подключиться к такому странному SSID наш Wi-Fi начинал работать с перебоями, и всё приводило к одному и тому же результату — сбою беспроводного подключения устройства.
В некоторых тестах подключение к SSID не удавалось, но больше мы не могли получить доступ и к нашей обычной беспроводной сети.
Другие тесты привели к поведению, описанному Шу, когда Wi-Fi отключался, и мы более не могли включить его обратно, как показано ниже», — пишут журналисты.
Исследователи говорят, что единственный способ избавиться от этого бага: полностью сбросить настройки сети на устройстве.
Судя по всему, корень проблемы кроется в ошибке, связанной с синтаксическим анализом входных данных. Когда в именах точек доступа присутствует строка с символами «%», iOS может ошибочно интерпретировать буквы, следующие после «%», как спецификаторы формата. Шу признается, что он умышленно называет все свои точки доступа таким образом, «чтобы вые*ать плохо разработанные устройства».
Разработчики Apple пока никак не прокомментировали обнаружение ошибки.