Comment Apple (en privé) trouvera-t-il hors ligne votre appareil perdu?

Lundi, lors de la WWDC d'Apple, Apple a présenté une nouvelle fonctionnalité intéressante appelée «Find My» . Contrairement à la norme «Find My iPhone», qui repose sur l'infrastructure cellulaire et GPS d'un appareil perdu, la fonction Find Me peut même trouver des appareils sans carte SIM. -cartes et GPS: par exemple, des ordinateurs portables, ou même des balises de localisation «stupides» attachées à n'importe quel élément (Apple n'y a fait allusion que dans un sens large).

L'idée est de transformer l'ensemble du réseau existant d'iPhones en un système de crowdsourcing à grande échelle pour suivre les objets environnants. Chaque iPhone actif surveillera en permanence les messages de balise BLE provenant d'autres appareils. Lorsqu'il trouve l'un de ces signaux, il marque le paquet avec ses coordonnées GPS et l'envoie aux serveurs Apple. C'est formidable pour les égarés comme moi, qui perdent constamment des choses: si je laisse mon sac à dos dans un bus touristique en Chine dans le bureau, quelqu'un tombera tôt ou tard sur son signal - et je saurai instantanément où le trouver.

(Il convient de noter que ce n'est pas Apple qui a eu l'idée. En fait, des entreprises comme Tile existent depuis un certain temps. Et oui, elles devraient s'inquiéter pour leur entreprise).

Si vous n'êtes pas impressionné par la description ci-dessus, permettez-moi de poser une question que vous devriez poser: comment ce système protégera-t-il contre les violations massives de la vie privée?

Nous listons les problèmes potentiels:

  • Si l'appareil émet constamment un signal BLE qui l'identifie de manière unique, tout le monde a (une) autre façon de vous suivre. Les spécialistes du marketing utilisent déjà les adresses MAC WiFi et Bluetooth pour cela, et la fonction Find My crée un autre canal de suivi.
  • Elle déclasse également les personnes impliquées dans le processus. Maintenant, ces personnes enverront leur position actuelle à Apple (peut-être qu'elles le font déjà). Mais maintenant, ils devront également partager ces informations avec des étrangers qui "perdent" leurs appareils. Cela peut mal finir.
  • Les fraudeurs peuvent également lancer des attaques actives dans lesquelles ils truquent l'emplacement de votre appareil. Bien que cela semble peu probable, les gens sont toujours surpris.

La bonne nouvelle est qu'Apple affirme que le système offre une forte confidentialité grâce à l'utilisation appropriée de la cryptographie. Mais, comme d'habitude, ils ont refusé de fournir des détails sur la mise en œuvre . Andy Greenberg chez Wired a décrit une implémentation technique partielle d'Apple, qui permet de comprendre beaucoup de choses. Malheureusement, cette histoire laisse encore d'énormes lacunes. C'est moi que je vais remplir, en offrant la description la plus probable de ce que fait Apple.

Une grosse mise en garde: beaucoup peuvent être complètement faux. Je mettrai définitivement l'article à jour quand Apple en dira plus.

Quelques problèmes majeurs


Pour décrire le scénario, vous devez introduire plusieurs appareils dans l'image. Pour vous inspirer, prenez la série télévisée des années 1950 Lassie.

Le premier appareil que nous appellerons Timmy est «perdu». Timmy a un émetteur radio BLE, mais pas de connexion GPS ou Internet. Heureusement, il était déjà associé à un deuxième appareil appelé Ruth , qui voulait le retrouver. Notre personnage principal est Lassie : il s'agit d'un iPhone d'un inconnu aléatoire (et inconscient) qui (supposons) a au moins une connexion Internet périodique et un GPS fiable. Et Lassie est une très bonne fille. Les périphériques réseau communiquent via les serveurs iCloud d'Apple, comme indiqué ci-dessous:



(Étant donné que Timmy et Ruth doivent être jumelés à l'avance, ils appartiennent probablement à la même personne. J'ai mentionné que vous auriez besoin d'acheter deux appareils Apple pour que le système fonctionne? C'est bien avec Apple.)

Nous envisageons un système de sécurité, donc la première question est: qui est le méchant ? Dans cette situation, la réponse est désagréable: n'importe qui pourrait être un attaquant potentiel . C'est pourquoi le problème est si intéressant.

Timmy Anonymity


L'aspect le plus important du système est que vous ne devez pas permettre aux étrangers de garder une trace de Timmy , surtout lorsqu'il n'est pas perdu. Cela élimine certaines décisions assez évidentes, par exemple, lorsque l' appareil de Timmy crie simplement: "Bonjour, je m'appelle Timmy, veuillez appeler ma mère Ruth et faites-moi savoir que je suis perdu . " Il élimine également pratiquement tout identifiant statique immuable, même opaque et aléatoire.

La dernière exigence est constituée par la triste expérience des services qui abusent des identifiants statiques (par exemple, votre adresse MAC WiFi ) pour suivre le mouvement des appareils. Apple a connu des succès mitigés en randomisant des identifiants tels que les adresses MAC. Si Apple ajoute un identifiant de suivi statique pour «Find My», tous les problèmes ne feront qu'empirer.

Cette exigence signifie que tous les messages envoyés par Timmy doivent être opaques. De plus, le contenu de ces messages devrait changer relativement souvent en de nouvelles valeurs qui ne peuvent pas être associées aux anciennes. Un moyen évident pour un appareil couplé de reconnaître de tels messages est de faire en sorte que Timmy et Ruth se mettent d' accord sur une longue liste d '« alias » aléatoires pour Timmy , et de laisser Timmy en choisir un différent à chaque fois.

Ça aide vraiment. Chaque fois que Lassie voit un appareil (inconnu) transmettre l'identifiant, elle ne saura pas s'il appartient à Timmy : mais elle peut l'envoyer aux serveurs Apple avec sa propre position GPS. En cas de perte de Timmy , Ruth peut demander à Apple de trouver tous les alias de Timmy possibles. Dans cette situation, personne en dehors d'Apple ne reconnaîtra cette liste, et même Apple lui-même ne le reconnaîtra qu'après la perte de quelqu'un, de sorte que cette approche empêche la plupart des options de suivi.

Une façon un peu plus efficace de mettre en œuvre cette idée consiste à utiliser une fonction cryptographique (par exemple, un MAC ou une fonction de hachage) pour générer une liste d'alias à partir d'un "Sid" court, dont des copies sont stockées par Timmy et Ruth . C'est bien car cela réduit la quantité de données stockées. Mais pour trouver Timmy , Ruth doit encore envoyer tous les surnoms - ou graines - à Apple, qui devra rechercher chaque surnom dans sa base de données.

Cacher l'emplacement de Lassie


L'approche décrite avec des pseudonymes devrait bien cacher l' identité de Timmy à Lassie et même à Apple (jusqu'au moment où Ruth commence à le chercher). Cependant, il y a un gros inconvénient: il ne cache pas les coordonnées GPS de Lassie .

C'est mauvais pour au moins quelques raisons. Chaque fois que Lassie découvre un appareil avec un signal BLE, elle doit envoyer son emplacement actuel aux serveurs Apple (avec l'alias qu'elle voit). Cela signifie que Lassie dit constamment à Apple où elle se trouve. Et de plus, même si Apple promet de ne pas stocker l' identité de Lassie , le résultat de tous ces messages est une énorme base de données centralisée qui affiche tous les emplacements GPS où se trouve tout appareil Apple.

Veuillez noter que le tableau de ces données produit à lui seul beaucoup d'informations. Oui, les identifiants d'appareil peuvent être des alias - mais cela ne rend pas les informations inutiles. Par exemple, si certains appareils Apple diffusent les mêmes coordonnées le soir, cela donne l'adresse probable de la personne.

Une manière évidente d'empêcher Apple de divulguer ces données est de les crypter afin que seuls ceux qui ont vraiment besoin de connaître l'emplacement de l'appareil voient les informations. Si Lassie reçoit un message de Timmy , alors la seule personne qui a vraiment besoin de connaître l' emplacement de Lassie est Ruth . Pour garder cette information secrète, Lassie doit crypter ses coordonnées avec la clé publique de Ruth .

Bien sûr, la question se pose: comment Lassie obtiendra-t-elle la clé de Ruth ? La solution évidente pour Timmy est de crier la clé publique de Ruth dans chacune de ses émissions. Mais cela créera un identifiant statique qui permettra à nouveau de suivre Timmy .

Pour résoudre ce problème, Ruth doit disposer de nombreuses clés publiques non liées , afin que Timmy puisse émettre des clés différentes à chaque diffusion. Une option consiste à demander à Ruth et Timmy de générer de nombreuses paires de clés communes différentes (ou de générer plusieurs de ces paires à partir d'un Sid commun). Mais c'est ennuyeux, et Ruth devra garder de nombreuses clés secrètes. Et les identifiants mentionnés dans la section précédente peuvent être obtenus en hachant chaque clé publique.

Une approche légèrement meilleure (qu'Apple peut utiliser ou non) implique la randomisation des clés. C'est une caractéristique de certains cryptosystèmes, comme Elgamal : elle permet à chaque côté de randomiser la clé publique , afin qu'elle ne soit pas associée à l'original. La meilleure partie de cette fonctionnalité est que Root peut utiliser une clé secrète, quelle que soit la version aléatoire de sa clé publique utilisée pour le chiffrement .



Tout cela conduit à l'idée finale du protocole. Dans chaque émission, Timmy transmet un nouvel alias et une copie aléatoire de la clé publique de Ruth . Lorsque Lassie reçoit l'émission, elle chiffre ses coordonnées GPS avec la clé publique et envoie un message chiffré à Apple. Ruth peut envoyer des alias Timmy aux serveurs Apple, et si Apple trouve une correspondance, elle peut recevoir et décrypter les coordonnées GPS.

Résout-il tous les problèmes?


Ce qui est désagréable, c'est qu'il n'y a pas de solution idéale pour de nombreuses situations frontalières étranges. Par exemple, que se passe-t-il si Timmy a de mauvaises intentions et veut que Lassie révèle son emplacement Apple? Et si Old Smithers essayait d'enlever Lassie ?

À un moment donné, la réponse à cette question se résume au fait que nous avons fait tout notre possible: tout problème restant devrait être déplacé au-delà du modèle de menace. Parfois même Lassie sait quand s'arrêter.

Source: https://habr.com/ru/post/fr455054/


All Articles