MACOS 용 Apple의 Wi-Fi 비밀번호 공유 프로토콜의 해킹 구현.
Python의 Linux 전용 구현은 여기에서 제공됩니다.
이 프로젝트에는 실험 소프트웨어가 포함되어 있으며 Open Wireless Link 프로젝트의 역 엔지니어링 노력의 결과입니다. 이 코드는 다큐멘터리 및 교육 목적으로 만 사용됩니다. 테스트되지 않았고 불완전 합니다. 이 프로젝트는 Apple Inc와의 제휴하거나 승인되지 않습니다.
홈브류를 통해 libsodium
설치하십시오.
brew install libsodium
우리는 부여자와 요청자 역할을 모두 제공합니다. Xcode 응용 프로그램을 사용하거나 프로젝트를 구축 make
.
대상 PWS-Grantor
실행하여 비밀번호 공유 장치 클라이언트를 시작하여 BLE 광고를 스캔하고 첫 번째 일치하는 광고에 연결하고 공유를 시작합니다. 또는 make
통해 건축 할 때 :
build/DerivedData/Build/Products/Debug/PWS-Grantor < ssid > < psk >
요청 자 역할에는 MACOS의 보안 및 블루투스 제한으로 인해 특별한 설정이 필요합니다.
1 단계 : 여기에 설명 된대로 사용자의 Apple ID 인증서에 액세스하려면 AMFI 보안 기능을 비활성화해야합니다. 복구 모드에서 재부팅하고 실행 : 실행 :
csrutil disable
nvram boot-args= " amfi_get_out_of_my_way=0x1 "
2 단계 : CoreBluetooth
사용하여 BLE 광고의 제조업체 데이터를 설정할 수 없으므로 python-gatt-relay
에서 GATT 릴레이 서버를 제공합니다. 외부 Linux 기계 (예 : Raspberry Pi 4)에서 릴레이를 설정하십시오. 자세한 내용은 포함 된 README
참조하십시오.
3 단계 : 마지막으로 PWS-Requestor
대상을 실행하여 다른 장치에서 암호를 요청하십시오. 또는 make
통해 건축 할 때 :
build/DerivedData/Build/Products/Debug/PWS-Requestor < appleID > < gattServerAddress >