Projekt , zajmujący się analizą własnościowych protokołów bezprzewodowych firmy Apple, na konferencji USENIX 2019 z analizą luk w protokołach bezprzewodowych Apple (zidentyfikowane możliwości przeprowadzenia ataku MiTM w celu modyfikacji plików przesyłanych między urządzeniami, ataki DoS w celu zablokowania interakcji między urządzeniami i wywołania zawieszania się urządzeń, a także wykorzystania AirDrop do identyfikacji i śledzenia użytkowników). W trakcie przeprowadzonego badania przygotowano otwarte realizacje protokołu AWDL (Apple Wireless Direct Link) oraz technologii , szczegóły, które zostały uzyskane w wyniku inżynierii wstecznej.
Realizacja AWDL została napisana w języku C i opublikowana w postaci aplikacji na system Linux (Open Wireless Link), wykorzystującej API Netlink do wykonywania operacji specyficznych dla Wi-Fi, takich jak zmiana kanałów. Integracja z stosami sieciowymi odbywa się przez wirtualny interfejs sieciowy, pozwalający aplikacjom z obsługą IPv6 korzystać z protokołu AWDL bez wprowadzania zmian w kodzie. Działanie jest możliwe na kartach sieciowych obsługujących tryb aktywnego monitorowania, który pozwala na wstrzykiwanie ramek (na przykład wspierany w Atheros AR9280).
Protokół AWDL stanowi podstawę technologii bezprzewodowych Apple, używanych do umożliwienia bezpośredniej interakcji między urządzeniami bez ich wcześniejszej konfiguracji i parowania. Na jego bazie działa również usługa AirDrop, umożliwiająca wymianę plików za pośrednictwem Wi-Fi i Bluetooth. Przygotowane przez badaczy komponenty AirDrop napisano w języku Python i są dostępne w ramach projektu . Kod owl i OpenDrop opublikowano na licencji GPLv3.
OpenDrop zapewnia interfejs wiersza poleceń, umożliwiający wymianę plików między urządzeniami za pośrednictwem Wi-Fi. Na poziomie protokołu realizacja jest w pełni zgodna z urządzeniami Apple, co pozwala na interakcje systemów opartych na Linuxie z urządzeniami z iOS i macOS. Możliwe jest przesyłanie plików tylko do urządzeń Apple, które są w trybie nieograniczonego wykrywania przez innych użytkowników, ponieważ wybiórcze wykrywanie urządzenia i przesyłanie według książki adresowej wymaga potwierdzenia podpisem cyfrowym Apple.
Źródło: opennet.ru
