Уязвимость в Firefox для Android, позволяющая управлять браузером через общий Wi-Fi
19 сентября 2020 года
В Firefox для Android выявлена серьёзная уязвимость в реализации протокола SSDP, применяемого для обнаружения сетевых сервисов в локальной сети. Уязвимость позволяет атакующему, находящемуся в той же локальной или беспроводной сети, ответить на проверочные запросы Firefox сообщением UPnP XML "LOCATION" с intent-командами, при помощи которых можно открыть в браузере произвольный URL или вызвать обработчики других приложений.
Проблема проявляется вплоть до выпуска Firefox для Android 68.11.0 и устранена в версии Firefox для Android 79, т.е. старые классические выпуски Firefox для Android уязвимы и для устранения проблемы требуется переход на новую редакцию браузера (Fenix), в которой используется движок GeckoView, построенный на базе технологий Firefox Quantum, и набор библиотек Mozilla Android Components(недоступная ссылка). Версии Firefox для настольных систем проблема не затрагивает.
Для тестирования уязвимости подготовлен рабочий прототип эксплоита. Атака осуществляется без каких-либо действий со стороны пользователя, достаточно чтобы на мобильном устройстве был запущен уязвимый браузер Firefox для Android и чтобы жертва находилась в одной подсети с SSDP-сервером атакующего.
Firefox для Android периодически в широковещательном режиме (multicast UDP) отправляет SSDP-сообщения для определения присутствующих в локальной сети устройств для вещания контента, таких как мультимедийные плееры и умные телевизоры. Все устройства в локальной сети получают данные сообщения и имеют возможность направить ответ. В штатном режиме устройство возвращает ссылку на местоположение XML-файла с информацией об устройстве, поддерживающем UPnP. При проведении атаки вместо ссылки на XML можно передать URI с intent-командами для Android.
При помощи intent-команд можно перенаправить пользователя на фишинг-сайты или передать ссылку на xpi-файл (браузер выдаст предложение по установке данного дополнения). Так как ответы атакующего ничем не ограничены он может попытаться взять измором и наводнить браузер предложениями об установке или вредоносными сайтами в надежде, что пользователь ошибётся и кликнет на установке вредоносного пакета. Помимо открытия произвольных ссылок в самом браузере intent-команды могут использоваться для обработки контента и в других Android-приложениях, например, можно открыть шаблон письма в почтовом клиенте (URI mailto:) или запустить интерфейс для совершения звонка (URI tel:).
Источники
правитьЛюбой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.