
Un toolkit di hacking ZigBee di Bishop Fox

Presentiamo ZigDiggity 2.0, un framework di penetration testing ZigBee creato da Matt Gleason e Francis Brown di Bishop Fox. Un ringraziamento speciale a Caleb Marion!
ZigDiggity versione 2 è una profonda revisione del pacchetto originale e punta a consentire a professionisti della cybersecurity, revisori e sviluppatori di eseguire complesse interazioni con reti ZigBee utilizzando un unico dispositivo.

Ti senti al sicuro in casa con il sistema d'allarme inserito? Potresti ricrederti dopo aver visto la demo del nostro nuovo toolkit di hacking, ZigDiggity, con cui prendiamo di mira i sensori di porte e finestre usando un "ACK Attack". ZigDiggity diventerà l'arma preferita per testare i sistemi abilitati a Zigbee, sostituendo tutti i precedenti tentativi.
Zigbee continua a guadagnare popolarità come metodo per fornire una semplice comunicazione wireless tra dispositivi (ad es. basso consumo/traffico, breve distanza) e si trova in una varietà di prodotti di consumo che vanno dalla domotica smart all'assistenza sanitaria. I problemi di sicurezza introdotti da questi sistemi sono altrettanto diversificati e numerosi, sottolineando la necessità di strumenti di valutazione di qualità.
Purtroppo, le soluzioni di hacking Zigbee esistenti sono cadute in disuso, essendo state a malapena mantenute, figuriamoci migliorate. Rimasti senza un modo pratico per valutare la sicurezza delle reti Zigbee, abbiamo creato ZigDiggity, un nuovo arsenale open-source per il pentest di Bishop Fox.
La nostra presentazione ricca di DEMO mostra le capacità d'attacco di ZigDiggity mettendolo alla prova contro comuni prodotti Internet of Things (IoT) che usano Zigbee. Vieni a vivere il futuro dell'hacking Zigbee, in un talk che il New York Times saluterà come "un vero trionfo dello spirito umano". ... già, probabilmente
Utilizzando un'installazione predefinita di Raspbian (installazione GUI, non headless), esegui i seguenti passaggi:
sudo raspbi-config
wget http://deconz.dresden-elektronik.de/raspbian/gcfflasher/gcfflasher-latest.debsudo dpkg -i gcfflasher-latest.debsudo apt updatesudo apt -f installsudo GCFFlasher -f firmware/zigdiggity_raspbee.binsudo GCFFlasher -rpip3 install -r requirements.txtsudo cp patch/zigbee.py /home/$USER/.local/lib/python3.7/site-packages/scapy/layers/zigbee.pysudo apt install wireshark
sudo usermod -a -G wireshark $USER). Esci e accedi di nuovo per rendere effettive le modifiche.La versione attuale di ZigDiggity è progettata esclusivamente per essere usata con il Raspbee

Attualmente gli script sono disponibili nella radice del repository e possono essere eseguiti tutti con Python3:
python3 listen.py -c 15
Quando si esegue con Wireshark, potrebbero essere richiesti privilegi di root.
ack_attack.py - Esegue l'attacco di acknowledge contro una determinata rete.beacon.py - Invia un singolo beacon e resta in ascolto per un breve periodo. Pensato per individuare quali reti sono vicino a te.find_locks.py - Esamina il traffico di rete su un canale per determinare se il comportamento del dispositivo sembra quello di una serratura. Mostra quali dispositivi ritiene siano serrature.insecure_rejoin.py - Esegue un tentativo di rejoin insicuro sulla rete target.listen.py - Ascolta su un canale inviando tutto l'output a Wireshark per la visualizzazione.scan.py - Si sposta tra i canali ascoltando e inviando i dati a Wireshark per la visualizzazione.unlock.py - Tenta di sbloccare una serratura targetI pattern utilizzati da ZigDiggity versione 2 sono progettati per essere il più affidabili possibile. Lo strumento è ancora in una fase abbastanza iniziale dello sviluppo, quindi aspettati miglioramenti nel tempo.