In che modo Apple (privatamente) ritroverà offline il tuo dispositivo smarrito?

Lunedì al WWDC, Apple ha introdotto una nuova interessante funzionalità chiamata "Trova il mio". A differenza dello standard "Trova il mio iPhone", che si basa sull'infrastruttura cellulare e sul GPS di un dispositivo smarrito, la funzione Trovami è in grado di ritrovare anche i dispositivi без Schede SIM e GPS. Ad esempio, laptop o anche Indicatori di posizione "stupidi"., allegato a qualsiasi oggetto (Apple lo ha solo accennato in senso lato).

L'idea è quella di trasformare l'intera rete esistente di iPhone in un sistema di crowdsourcing su larga scala per il tracciamento degli oggetti circostanti. Ogni iPhone attivo monitorerà continuamente i messaggi beacon BLE che provengono da altri dispositivi. Quando trova uno di questi segnali, etichetta il pacchetto con le sue coordinate GPS e lo invia ai server Apple. Questo è fantastico per i perdenti come me che perdono costantemente cose: se lascio lo zaino in ufficio su un autobus turistico in Cina, prima o poi qualcuno si imbatterà nel suo segnale - e saprò subito dove trovarlo.

(Vale la pena notare che l'idea non è stata di Apple. In effetti, alle aziende piace Piastrella lavorano da parecchio tempo. E sì, dovrebbero preoccuparsi dei loro affari).

Se non sei impressionato dalla descrizione sopra, lasciami porre la domanda che dovresti porre: In che modo questo sistema proteggerà da massicce violazioni della privacy?

Ecco un elenco di potenziali problemi:

  • Se un dispositivo emette costantemente un segnale BLE che lo identifica in modo univoco, ora tutti hanno (un altro) modo per tracciarti. Gli esperti di marketing utilizzano già indirizzi MAC WiFi e Bluetooth per questo e per la funzione Trova il mio crea un altro canale di tracciamento.
  • Declassifica anche coloro che coinvolto in corso. Ora queste persone invieranno la loro posizione attuale ad Apple (probabilmente lo fanno già). Ma ora dovranno condividere queste informazioni anche con sconosciuti che "perdono" i propri dispositivi. La cosa potrebbe finire male.
  • I truffatori possono anche lanciare attacchi attivi in ​​cui falsificano la posizione del tuo dispositivo. Anche se sembra improbabile, le persone rimangono sempre sorprese.

La buona notizia è che Apple afferma che il sistema garantisce una forte privacy attraverso un uso intelligente della crittografia. Ma, come al solito, si sono rifiutati di dirlo dettagli di implementazione. Andy Greenberg su Wired ha raccontato un parziale implementazione tecnica secondo Apple, il che ha molto senso. Purtroppo questa narrazione lascia ancora enormi lacune. Questi sono quelli che andrò a compilare, offrendo la descrizione più probabile di ciò che effettivamente fa Apple.

Grande avvertimento: molte cose potrebbero essere completamente sbagliate. Aggiornerò sicuramente questo articolo quando Apple rivelerà di più.

Alcuni problemi importanti

Per delineare lo scenario è necessario inserire diversi dispositivi nel quadro. Per ispirarti, prendi la serie televisiva degli anni '1950 Lassie.

Il primo dispositivo che chiameremo Timmy, "perduto". U Timmy C'è un trasmettitore radio BLE, ma nessuna connessione GPS o Internet. Fortunatamente era già accoppiato con un secondo dispositivo chiamato Rutchi vuole trovarlo. Il nostro personaggio principale è Lassie: Questo è l'iPhone di uno sconosciuto casuale (e inconsapevole) che (supponendo) abbia almeno una connessione Internet intermittente e un GPS affidabile. E Lassie è una brava ragazza. I dispositivi di rete comunicano tramite i server iCloud di Apple come mostrato di seguito:

In che modo Apple (privatamente) ritroverà offline il tuo dispositivo smarrito?

(Perché il Timmy и Rut devono essere stati accoppiati in precedenza, probabilmente appartengono entrambi alla stessa persona. Ho già detto che dovrai acquistare два Dispositivi Apple per far funzionare il sistema? Questo si adatta perfettamente ad Apple.)

Stiamo esaminando un sistema di sicurezza, quindi la prima domanda è: chi è il cattivo? In questa situazione la risposta è spiacevole: Chiunque può essere un potenziale aggressore. Ecco perché il problema è così interessante.

Mantenere l'anonimato di Timmy

L'aspetto più importante del sistema è che alle persone non autorizzate non dovrebbe essere consentito il monitoraggio Timmy, soprattutto quando non è perduto. Ciò elimina alcune decisioni abbastanza ovvie, come quando si utilizza il dispositivo Timmy grida semplicemente: "Ciao, mi chiamo Timmy, per favore chiama mia mamma Ruth e falle sapere che mi sono perso.". Ciò esclude praticamente qualsiasi identificatore statico immutabile, anche uno opaco e apparentemente casuale.

Quest'ultima esigenza deriva dalla sfortunata esperienza di servizi che abusano di identificatori statici (ad esempio, ваш Indirizzo MAC Wi-Fi) per tracciare il movimento dei dispositivi. Mela con alterne fortune combatte questa sorveglianza randomizzando identificatori come gli indirizzi MAC. Se Apple aggiunge un ID di tracciamento statico per “Trova il mio”, i problemi non potranno che peggiorare.

Questo requisito significa che tutti i messaggi trasmessi Timmy, deve essere opaco. Inoltre, il contenuto di questi messaggi deve cambiare con relativa frequenza in nuovi valori che non possono essere associati a quelli vecchi. Un modo ovvio in cui il dispositivo associato può riconoscere tali messaggi è forzare Timmy и Rut concordare un lungo elenco di "casuali"pseudonimi"Per Timmy, lasciarlo andare Timmy ne sceglie ogni volta uno diverso.

Questo aiuta davvero. Ogni volta quando Lassie vede un dispositivo (sconosciuto) che trasmette un ID, non saprà se appartiene Timmy: Ma può inviarlo ai server Apple insieme alla propria posizione GPS. Se Timmy si perderà Rut può chiedere ad Apple di trovare tutti gli alias possibili Timmy. In questa situazione, nessuno al di fuori di Apple conoscerà l'elenco e anche la stessa Apple lo saprà solo dopo che qualcuno si sarà perso, quindi questo approccio impedisce la maggior parte delle opzioni di tracciamento.

Un modo leggermente più efficiente per implementare questa idea è utilizzare una funzione crittografica (come un MAC o una funzione hash) per generare un elenco di alias da un seme breve, le cui copie vengono archiviate Timmy и Rut. Questo è positivo perché riduce la quantità di dati archiviati. Ma trovare Timmy, Rut deve ancora inviare tutti gli alias - o seed - ad Apple, che dovrà cercare ogni alias nel suo database.

Nascondere la posizione di Lassie

L'approccio descritto con gli alias dovrebbe nascondersi bene personalità Timmy от Lassie e anche da Apple (al punto in cui Rut inizia a cercarlo). C'è però un grosso inconveniente: non nasconde le coordinate GPS Lassie.

Ciò è negativo per almeno diversi motivi. Ogni volta quando Lassie rileva qualsiasi dispositivo con un segnale BLE, deve trasmettere la sua posizione corrente (insieme all'alias che vede) ai server Apple. Significa che Lassie dice costantemente ad Apple dove si trova. E in più, anche se Apple promette di non memorizzare la tua identità Lassie, il risultato di tutti questi messaggi è un enorme database centralizzato che mostra tutte le posizioni GPS rilevate qualsiasi Dispositivo Apple.

Tieni presente che una serie di tali dati fornisce di per sé molte informazioni. Sì, gli ID dei dispositivi possono essere alias, ma ciò non rende le informazioni inutili. Ad esempio, se qualche tipo Il dispositivo Apple trasmette di sera le stesse coordinate, ovvero il probabile indirizzo di residenza della persona.

Il modo più ovvio per impedire ad Apple di divulgare questi dati è crittografarli in modo che solo coloro che hanno realmente bisogno di vedere le informazioni possano vederli. necessario conoscere la posizione del dispositivo. Se Lassie riceve un messaggio da Timmy, quindi l'unica persona che ha davvero bisogno di conoscere la posizione LassieEssa Rut. Per mantenere riservate queste informazioni, Lassie deve crittografare le sue coordinate con una chiave pubblica Rut.

Naturalmente sorge la domanda: come Lassie riceverà la chiave Rut? La soluzione ovvia per Timmy - gridare la chiave pubblica Rut in ogni trasmissione. Ma questo creerà un identificatore statico, che ti consentirà nuovamente di tracciare Timmy.

Per risolvere questo problema è necessario Rut era molte chiavi pubbliche non collegateA Timmy potrebbe emettere chiavi diverse con ogni trasmissione. Una possibilità è forzare Rut и Timmy generare molte coppie di chiavi comuni diverse (o generare molte di queste coppie da un seme comune). Ma è fastidioso e Rut dovrai memorizzare molte chiavi segrete. E gli identificatori menzionati nella sezione precedente possono essere ottenuti eseguendo l'hashing di ciascuna chiave pubblica.

Un approccio leggermente migliore (che Apple può o meno utilizzare) prevede randomizzazione chiavi. Questa è una caratteristica di alcuni sistemi crittografici, come Elgamal: esso consente a qualsiasi parte di randomizzare la chiave pubblica, quindi non sarà in alcun modo correlato all'originale. La parte migliore di questa funzionalità è questa Rut poter usare una chiave segreta indipendentemente dalla versione randomizzata della sua chiave pubblica utilizzata per la crittografia.

In che modo Apple (privatamente) ritroverà offline il tuo dispositivo smarrito?

Tutto ciò porta all’idea finale del protocollo. In ogni trasmissione Timmy passa un nuovo alias e una copia casuale della chiave pubblica Rut. Quando Lassie riceve la trasmissione, crittografa le sue coordinate GPS con la chiave pubblica e invia un messaggio crittografato ad Apple. Rut può inviare alias Timmy ai server Apple e, se Apple trova una corrispondenza, può ottenere e decrittografare le coordinate GPS.

Questo risolve tutti i problemi?

La cosa sfortunata è che non esiste una soluzione perfetta per molte strane situazioni limite. Ad esempio, e se Timmy cattive intenzioni e vuole forzare Lassie rivelare la tua posizione Apple? E se il Vecchio Smithers tentasse di rapire? Lassie?

Ad un certo punto la risposta a questa domanda si riduce al fatto che abbiamo fatto tutto il possibile: eventuali problemi rimanenti dovrebbero essere spostati al di fuori dell’ambito del modello di minaccia. A volte anche Lassie sa quando fermarsi.

Fonte: habr.com

Aggiungi un commento