OpenDrop - открытая реализации технологии Apple AirDrop
Проект Open Wireless Link, занимающийся разбором проприетарных беспроводных протоколов компании Apple, представил на конференции USENIX 2019 доклад с анализом уязвимостей в беспроводных протоколах Apple (найдены возможности совершения MiTM-атаки для модификации передаваемых между устройствами файлов, DoS-атаки для блокирования взаимодействия устройств и вызова зависания устройств, а также применения AirDrop для идентификации и отслеживания пользователей). В ходе проведённого исследования были подготовлены открытые реализации протокола AWDL (Apple Wireless Direct Link) и технологии AirDrop, детали о которых получены в результате обратного инжиниринга.
Реализация AWDL написана на языке Си и опубликована в виде Linux-приложения owl (Open Wireless Link), использующего API Netlink для выполнения специфичных для Wi-Fi операций, таких как переключение каналов. Интеграция с сетевым стеком осуществляется через виртуальный сетевой интерфейс, позволяющий приложениям с поддержкой IPv6 использовать протокол AWDL без внесения изменений в код. Работа возможна на сетевых картах с поддержкой режима активного мониторинга, допускающего подстановку кадров (например, поддерживается в Atheros AR9280).
Протокол AWDL является основой беспроводных технологий Apple, используемых для организации прямого взаимодействия устройств без их предварительной настройки и сопряжения. На базе AWDL в том числе работает сервис AirDrop, позволяющий обмениваться файлами по Wi-Fi и Bluetooth. Подготовленные исследователями компоненты AirDrop написаны на языке Python и доступны в рамках проекта OpenDrop. Код owl и OpenDrop опубликован под лицензией GPLv3.
OpenDrop предоставляет интерфейс командой строки, позволяющий обмениваться файлами между устройствами по Wi-Fi. На уровне протокола реализация полностью совместима с устройствами Apple, что позволяет организовать взаимодействия систем на базе Linux с устройствами с iOS и macOS. Допускается отправка файлов только на устройства Apple, находящиеся в режиме неограниченного определения другими пользователями, так как выборочное определение устройства и отправка по адресной книге требуют заверения цифровой подписью Apple.
© OpenNet