Хакровальная реализация протокола обмена паролями Apple Wi-Fi для MacOS.
Реализация только Linux в Python доступна здесь.
Этот проект содержит экспериментальное программное обеспечение и является результатом усилий по обратной инженерной инженерии от Open Wireless Link Project. Кодекс служит исключительно документальным и образовательным целям. Это непроверенно и неполно . Этот проект не связан или одобрен Apple Inc.
Установите libsodium
, например, Via Homebrew:
brew install libsodium
Мы предоставляем роли как гранто, так и запрашивателя. Вы можете использовать приложение Xcode или make
для создания проекта.
Запустите Target PWS-Grantor
чтобы запустить обмен паролем, предоставляя клиент устройства, который будет сканировать рекламу и подключиться к первым соответствующим и начать обмен. В качестве альтернативы, когда он построен через make
:
build/DerivedData/Build/Products/Debug/PWS-Grantor < ssid > < psk >
Роль запроса требует специальной настройки из -за ограничений безопасности и Bluetooth MacOS.
Шаг 1: Нам нужно отключить функцию безопасности AMFI, чтобы получить доступ к сертификату Apple Apple пользователя, как описано здесь. Перезагрузите в режиме восстановления (⌘+r) и запустите:
csrutil disable
nvram boot-args= " amfi_get_out_of_my_way=0x1 "
Шаг 2: Поскольку мы не можем установить данные производителя блаженной рекламы с помощью CoreBluetooth
, мы предоставляем сервер реле Gatt в python-gatt-relay
. Установите реле на внешней машине Linux, например, Raspberry Pi 4. Для получения подробной информации см. Включенные README
.
Шаг 3: Наконец, запустите цель PWS-Requestor
, чтобы попросить пароль с другого устройства. В качестве альтернативы, когда он построен через make
:
build/DerivedData/Build/Products/Debug/PWS-Requestor < appleID > < gattServerAddress >