Una implementación de código abierto del rol de otorgante en el protocolo de intercambio de contraseñas Wi-Fi de Apple.
OpenWifIPass es un software experimental y es el resultado de los esfuerzos de ingeniería inversa del proyecto Open Wireless Link. El código tiene solo fines documentales y educativos. No ha sido probado e incompleto . Por ejemplo, el código no verifica la identidad del solicitante . Por lo tanto, no use esta implementación con credenciales de Wi-Fi sensibles. OpenWifipass no está afiliado o respaldado por Apple Inc.
Hardware: Bluetooth Bajo Energía Radio, EG, Raspberry Pi 4
OS: Linux (debido a la dependencia bluepy )
Clone este repositorio e instálelo:
git clone [email protected]/seemoo-lab/openwifipass.git
pip3 install ./openwifipass Ejecute openwifipass para compartir credenciales de Wi-Fi ( SSID y PSK ) con cualquier solicitante (necesitamos privilegios de superviso para usar el subsistema Bluetooth):
sudo -E python3 -m openwifipass --ssid < SSID > --psk < PSK > Use la cita de su caparazón para eliminar el significado especial de ciertos caracteres en SSID / PSK . En el ejemplo a continuación, utilizamos cotizaciones ( ' ) individuales para evitar la expansión de la concha del personaje $ en el PSK.
Una ejecución exitosa del protocolo se vería de la siguiente manera:
pi@raspberrypi:~/openwifipass $ sudo -E python3 -m openwifipass --ssid OWL --psk '$uper$ecretPassword'
Start scanning...
SSID match in PWS advertisement from aa:bb:cc:dd:ee:ff
Connect to device aa:bb:cc:dd:ee:ff
Send PWS1
Receive PWS2
Send M1
Receive M2
Send M3
Receive M4
Send PWS3
Receive PWS4
Wi-Fi Password Sharing completed
Este proyecto contiene un serializador Opack (DE) reutilizable. Lea Opack.md para obtener más información.
OpenWifipass tiene licencia bajo la Licencia Pública General de GNU V3.0 .