Разделы

Безопасность Техника

Проблемы Wi-Fi на iPhone открыла дорогу к их захвату

Уязвимость, приводящая к сбоям в работе службы беспроводных соединений на iPhone, позволяет запускать произвольный код при определенных условиях.

Не так все просто

Исследователи выявили критически опасную уязвимость в службе беспроводных соединений смартфонов iPhone. Ее можно использовать для запуска произвольного кода удаленно и без какого-либо взаимодействия с пользователем.

Уязвимость нашли еще месяц назад: в конце июня 2021 г. эксперт по безопасности Карл Шоу (Carl Schou) обнаружил, что если попытаться подключить iPhone к точке доступа с определенными символами в названии идентификатора SSID, служба Wi-Fi на смартфоне перестает функционировать. Не помогает ни перезагрузка устройства, ни смена SSID. Собственная точка доступа Шоу носила название «%p%s%s%s%s%n».

Некоторые другие вариации приводили к непрерывному перезапуску службы Wi-Fi, но в любом случае, пользоваться соединениями Wi-Fi становилось невозможно. Восстановить работу модуля можно было только при помощи сброса сетевых настроек на смартфоне. Однако теперь выяснилось, что баг намного опаснее, чем предполагалось изначально.

Произвольный код и специальные символы

Эксперты компании ZecOps выяснили, что уязвимость можно эксплуатировать без участия пользователя, а главное, открывается возможность для запуска произвольного кода. Проблема в том, что служба Wi-Fi рассматривает определенные последовательности символов как форматирующие, а не обычные символы. В частности, эксперты ZecOps воспользовались последовательностью %@, а это спецификатор формата для вывода и форматирования объектов в Objective-C — программном языке, на котором написано ПО для iOS.

iphone600.jpg
Баг, выводящий из строя Wi-Fi на iPhone, оказался куда опаснее

«Потенциальная возможность для эксплуатирования возникает, если мы находим объект, выпущенный в стек; в этом случае, мы можем подобрать метод распыления, чтобы контролировать содержимое памяти, и затем использовать %@, чтобы этот объект рассматривался системой как объект Objective-C, — написали исследователи. — Возникает типичная уязвимость Use-After-Free (использование области памяти после ее освобождения), что может позволить запустить произвольный код».

Пользователям настоятельно рекомендуется переводить службу Wi-Fi в режим ручного подключения. Как утверждается в публикации ZecOps, Apple частично устранила уязвимость в обновлении 14.4. В версии 14.6, тем не менее, специальные символы считываются как форматирующие, что вызывает сбой в работе Wi-Fi. Ожидается, что полное исправление поступит с версией 14.7.

«По сути дела, речь идет о двойной уязвимости, — говорит Анастасия Мельникова, эксперт по информационной безопасности компании SEC Consult Services. — Помимо некорректного реагирования на определенные последовательности символов, проблема состоит еще и в том, что служба Wi-Fi на iPhone по умолчанию работает в режиме автоматического подключения к любой открытой сети. Злоумышленникам остается только создать свою точку доступа со специальными символами в названиями и дожидаться жертвы, не прилагая никаких активных усилий к заманиванию».

Роман Георгиев