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.

Источник: http://www.opennet.ru/opennews/art.shtml?num=51313