В прошлом месяце исследователь Карл Шу (Carl Schou) обнаружил в iPhone баг, который нарушает работу беспроводной связи при подключении к точке доступа с определенным именем.

Проблема обнаружилась при подключении к точке доступа, называвшейся «%p%s%s%s%s%n». При попытке подключения к этой сети Wi-Fi на устройстве попросту отключился, а когда эксперт пытался включить его снова, ничего не вышло ни после перезапуска девайса, ни после изменения SSID.

Судя по всему, корень этой проблемы кроется в ошибке, связанной с синтаксическим анализом входных данных. Когда в именах точек доступа присутствует строка с символами «%», iOS может ошибочно интерпретировать буквы, следующие после «%», как спецификаторы формата. К тому же позже исследователь заметил, что iPhone реагирует еще хуже на сеть с именем «%secretclub%power».

Поскольку имена сетей Wi-Fi сохраняются в определенных файлах, каждый раз, когда iPhone пытается подключиться к сети Wi-Fi, iOS считывает эти файлы, «падает» и перезагружается в цикле. В итоге выяснилось, что единственный способ избавиться от этого бага: полностью сбросить настройки сети на устройстве (очистить локальные файлы от проблемного сетевого имени).

Но если раньше этот баг можно было назвать просто неприятным, теперь выяснилось, что проблема гораздо серьезнее. Эксперты компании ZecOps сообщили, что добавление «%@» к названию беспроводной сети может спровоцировать цикличный отказ в обслуживании, который, в свою очередь, можно использовать как use-after-free уязвимость для удаленного выполнения кода.

Так как iOS автоматически подключает пользователей к ближайшей сети Wi-Fi, эксперты предупреждают, что такая уязвимость может применяться для атак, не требующих взаимодействия с человеком. Достаточно просто создать сеть Wi-F с вредоносным именем, а затем ждать, пока ближайшие пользователи подключатся к ней, когда окажутся достаточно близко.

ZecOps отмечает, что исходная ошибка, обнаруженная Шу в прошлом месяце, влияла на все версии iOS 14.x, а вот удаленное выполнение кода, которому исследователи дали имя WiFiDemon, было возможно только на iPhone и iPad с iOS версий от 14.0 до 14.4. То есть, баг был исправлен ​​в январе 2021 года с релизом iOS 14.4, однако Apple не стремилась придать эту проблему огласке.

Эксперты в очередной раз призывают пользователей своевременно устанавливать обновления, хотя отмечают, что более старые версии iOS (до iOS 14.x) вообще не уязвимы перед WiFiDemon и атаками на отказ в обслуживании.

Оставить мнение