Come farà Apple (in privato) a localizzare il tuo dispositivo perso offline?

Lunedì, durante la conferenza WWDC, Apple ha presentato una fantastica nuova funzione chiamata 'Find My'. A differenza della tradizionale 'Trova il mio iPhone', che si affida all'infrastruttura della rete cellulare e al GPS del dispositivo perso, la funzione 'Trova me' è in grado di trovare anche i dispositivi di senza schede SIM e GPS. Ad esempio, laptop, o persino etichette di posizione 'stupide', attaccate a qualsiasi oggetto (Apple ha accennato a questo solo in senso ampio).

L'idea è di trasformare l'intera rete esistente di iPhone in un vasto sistema di monitoraggio crowdsourcing degli oggetti circostanti. Ogni iPhone attivo monitorerà costantemente i segnali dei beacon BLE che provengono da altri dispositivi. Quando trova uno di questi segnali, contrassegna il pacchetto con le proprie coordinate GPS e lo invia ai server Apple. Questo è fantastico per persone smemorate come me, che perdono continuamente cose: se lascio il mio zaino su un autobus turistico in Cina, ben presto qualcuno si imbatterà nel suo segnale — e io saprò immediatamente dove trovarlo.

(Va notato che l'idea non è stata concepita da Apple. Infatti, aziende come Tile sono attive da tempo. E sì, dovrebbero preoccuparsi per il loro business).

Se la descrizione sopra non ti ha impressionato, lascia che io ponga la domanda che devi farti: come proteggerà questo sistema da violazioni massicce della privacy?

Elencando i potenziali problemi:

  • Se un dispositivo emette costantemente un segnale BLE che lo identifica in modo univoco, chiunque avrà (un altro) modo per tracciarti. I marketer già utilizzano a questo scopo gli indirizzi MAC del WiFi e del Bluetooth, e la funzione Find My crea un ulteriore canale di tracciamento.
  • Essa rivela anche chi partecipano al processo. Ora queste persone invieranno ad Apple la loro posizione attuale (forse lo fanno già). Ma ora dovranno condividere queste informazioni anche con estranei che 'perdono' i loro dispositivi. Questo potrebbe avere conseguenze negative.
  • I truffatori potrebbero anche lanciare attacchi attivi, falsificando la posizione del tuo dispositivo. Anche se sembra poco probabile, le persone sorprendere sempre.

La buona notizia è che Apple afferma che il sistema garantisce davvero una privacy affidabile grazie all'uso sapiente della crittografia. Ma, come al solito, si sono rifiutati di rivelare i dettagli dell'implementazione. Andy Greenberg su Wired ha condiviso una parte della realizzazione tecnica riferita da Apple, che aiuta a capire molte cose. Sfortunatamente, questo racconto lascia ancora enormi lacune. È proprio ciò che intendo colmare, offrendo la descrizione più probabile di cosa stia facendo realmente Apple.

Una grande avvertenza: molte cose potrebbero rivelarsi completamente errate. Aggiornerò l'articolo quando Apple fornirà ulteriori informazioni.

Alcuni problemi principali

Per esporre lo scenario, è necessario introdurre alcuni dispositivi. Per ispirazione prendiamo la serie TV degli anni '50 "Lassie".

Il primo dispositivo che chiameremo Timmy, è "scomparso". Ha Timmy un trasmettitore BLE, ma nessun GPS o connessione a Internet. Fortunatamente, si è già accoppiato con un secondo dispositivo chiamato Ruth, che lo vuole trovare. Il nostro protagonista è Lassie: questo è un iPhone di uno sconosciuto casuale (e ignaro di ciò) che ha (supponiamo) almeno una connessione internet periodica e un GPS affidabile. E inoltre, Lassie è davvero un'ottima ragazza. I dispositivi di rete interagiscono tramite i server iCloud di Apple, come mostrato qui sotto:

Come farà Apple (in privato) a localizzare il tuo dispositivo perso offline?

(Poiché Timmy e Ruth devono essere abbinati in anticipo, probabilmente appartengono entrambi alla stessa persona. Ho accennato alla necessità di acquistare due volte dispositivi Apple affinché il sistema funzioni? Questo va bene per Apple).

Stiamo considerando un sistema di sicurezza, quindi la prima domanda è: chi è il cattivo? В этой ситуации ответ неприятный: un potenziale male intenzionato può essere chiunque. Ecco perché il problema è così interessante.

Mantenere l'anonimato di Timmy

L'aspetto più importante del sistema è che non si deve permettere a estranei di tracciarne Timmy, specialmente quando non è perso. Questo esclude alcune soluzioni piuttosto ovvie, come quando il dispositivo Timmy semplicemente urla: "Ciao, mi chiamo Timmy, per favore chiama mia mamma Ruth e dille che mi sono perso". Questo esclude praticamente qualsiasi identificatore statico invariabile, anche se opaco e simile al caso.

L'ultima richiesta è frutto dell'amara esperienza di servizi che abusano degli identificatori statici (ad esempio, il tuo indirizzo MAC WiFi) per monitorare i movimenti dei dispositivi. Apple con successo alternato combatte questa sorveglianza randomizzando gli identificatori, come gli indirizzi MAC. Se Apple implementa un identificatore di monitoraggio statico per “Find My”, tutti i problemi si aggraveranno.

Questa richiesta significa che tutti i messaggi trasmessi Timmy, devono essere opachi. Inoltre, il contenuto di questi messaggi deve cambiare abbastanza frequentemente in nuovi valori, che non possono essere collegati ai vecchi. Un modo ovvio per un dispositivo accoppiato per riconoscere tali messaggi è costringere Timmy e Ruth a concordare un lungo elenco di casuali “soprannomi” per Timmy, e lasciare che Timmy sceglie ogni volta un altro.

Questo funziona davvero. Ogni volta che Lassie vede un qualsiasi dispositivo (sconosciuto) che trasmette un identificatore, non saprà a chi appartiene. Timmy: ma può inviarlo ai server Apple insieme alla propria posizione GPS. Nel caso in cui Timmy si perda, Ruth può chiedere ad Apple di trovare tutti i possibili alias Timmy. In questa situazione, nessuno al di fuori di Apple conoscerà questa lista, e persino Apple la conoscerà solo dopo che qualcuno si sarà perso, quindi questo approccio previene la maggior parte delle opzioni di tracciamento.

Un modo leggermente più efficace per realizzare questa idea è utilizzare una funzione crittografica (come MAC o una funzione hash) per generare un elenco di alias da un breve "seed", una copia del quale viene conservata Timmy e Ruth. Questo è vantaggioso perché riduce la quantità di dati memorizzati. Ma per trovare Timmy, Ruth deve comunque inviare tutti gli alias - o il seed - ad Apple, che dovrà cercare ogni alias nel proprio database.

Nascondere la posizione di Lassie

L'approccio descritto con gli alias dovrebbe nascondere bene l'identità Timmy da Lassie anche ad Apple (fino al momento in cui Ruth inizia a cercarlo). Tuttavia, c'è un grande svantaggio: non nasconde le coordinate GPS Lassie.

Questo è problematico, per almeno diverse ragioni. Ogni volta che Lassie se un dispositivo con segnale BLE viene rilevato, deve inviare ai server di Apple la sua posizione attuale (insieme al soprannome che vede). Questo significa che Lassie informa continuamente Apple della sua posizione. Inoltre, anche se Apple promette di non conservare l'identità Lassie, il risultato di tutti questi messaggi è un'enorme base di dati centralizzata che mostra tutte le posizioni GPS in cui è stato trovato qualsiasi dispositivo Apple.

Si noti che un insieme di tali dati fornisce moltissime informazioni. Sì, gli identificatori dei dispositivi possono essere soprannomi — ma ciò non rende inutili le informazioni. Ad esempio, se un certo dispositivo Apple trasmette le stesse coordinate ogni sera, questo rivela probabilmente l'indirizzo di residenza di una persona.

Un modo ovvio per prevenire la divulgazione di questi dati da parte di Apple è crittografarli, in modo che solo coloro che hanno veramente bisogno di conoscere la posizione del dispositivo possano vederla. Se Lassie riceve un messaggio da Timmy, allora l'unica persona che ha realmente bisogno di conoscere la posizione Lassie, è Ruth. Per mantenere questa informazione segreta, Lassie deve criptare le proprie coordinate con una chiave pubblica Ruth.

Certo, sorge la domanda: come Lassie riceverà la chiave Ruth? Очевидное решение для Timmy — urlando la chiave pubblica Ruth in ogni sua trasmissione. Ma questo creerà un identificativo statico, che permetterà nuovamente di tracciarlo Timmy.

Per risolvere questo problema, è necessario che ci siano Ruth stato molti chiavi pubbliche non associate, affinché Timmy possa emettere diverse chiavi con ogni trasmissione. Una delle opzioni è costringere Ruth e Timmy a generare molte coppie di chiavi diverse (o generare molte di queste coppie da un seme comune). Ma questo è fastidioso, e Ruth bisognerà memorizzare molte chiavi segrete. E gli identificativi menzionati nella sezione precedente possono essere ottenuti tramite l'hashing di ciascuna chiave pubblica.

Un approccio leggermente migliore (che Apple potrebbe usare o meno) prevede la randomizzazione delle chiavi. Questa è una caratteristica di alcuni sistemi crittografici, come Elgamal: essa permette a qualsiasi parte di randomizzare la chiave pubblica, in modo che non sia in alcun modo collegata all'originale. La parte migliore di questa funzione è che Ruth può utilizzare una chiave segreta indipendentemente da quale versione randomizzata della sua chiave pubblica sia stata utilizzata per la crittografia.

Come farà Apple (in privato) a localizzare il tuo dispositivo perso offline?

Tutto ciò porta all'idea finale del protocollo. In ogni trasmissione Timmy trasmette un nuovo pseudonimo e una copia randomizzata della chiave pubblica Ruth. Quando Lassie riceve la trasmissione, crittografa le proprie coordinate GPS con la chiave pubblica e invia il messaggio crittografato ad Apple. Ruth può inviare pseudonimi Timmy ai server Apple, e se Apple trova una corrispondenza, può ottenere e decifrare le coordinate GPS.

Risolve tutti i problemi?

La cosa sgradevole è che non esiste una soluzione perfetta per molte strane situazioni ai confini. Ad esempio, cosa succede se Timmy ha cattive intenzioni e vuole costringere Lassie Apple a rivelare la sua posizione? Cosa succede se il Vecchio Smithers prova a rapire Lassie?

A un certo punto, la risposta a questa domanda si riduce al fatto che abbiamo fatto tutto il possibile: eventuali problemi rimasti devono essere portati al di fuori del modello di minaccia. A volte anche Lassie sa quando fermarsi.

Fonte: habr.com

Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster