Comment fonctionne le chiffrement des données sur iPhone

Comment fonctionne le chiffrement des données sur iPhone

Loin de satisfaire les gouvernements, le chiffrement des smartphones est attaqué de tous côtés. En effet, celui-ci empêche les enquêteurs d’accéder aux données des téléphones qui pourraient faire avancer certaines affaires. Le refus récent de Tim Cook d’accéder à l’ordre des magistrats afin de venir en aide au FBI est l’occasion de nous intéresser au fonctionnement du chiffrement de l’iPhone.

Le chiffrement utilisé sur les iPhone a fait beaucoup de bruit ces derniers jours. En cause, un ordre de la justice américaine qui astreint Apple à venir en aide au FBI pour accéder à l’iPhone 5C d’un des auteurs de la tuerie de San Bernadino aux États-Unis. Dans une lettre ouverte, Tim Cook, le CEO d’Apple, a déclaré ne pas pouvoir se soumettre à la décision du tribunal, tant pour des raisons de protection de la vie privée de ses utilisateurs que de sécurité du système.

Si les enquêteurs sont remontés contre le chiffrement des téléphones portables de la marque à la pomme, c’est parce que celui-ci s’avère terriblement efficace pour empêcher l’accès aux données. Avant toute chose, les smartphones d’Apple bénéficient d’une séquence de démarrage sécurisée qui prévient toute altération du code sur l’appareil.

Entre autres, la firme a mis en place une série de protection à la fois matérielle et logicielle qui complique la tâche des personnes qui souhaiteraient récupérer des informations sur un appareil. En l’occurrence, la protection qui irrite le plus les enquêteurs est l’effacement automatique de l’appareil au bout de dix codes erronés.

En chiffrant un document, on souhaite rendre sa compréhension impossible à toute personne qui ne possède pas la clé de déchiffrement. (Lettre chiffrée de Gabriel de Luetz d’Aramon).

Une sécurité hardware

Depuis iOS 8.0, Apple clame qu’il ne peut tout simplement plus extraire de données d’un iPhone. Tous les fichiers du téléphone sont chiffrés, en utilisant des clés de 256-bit appelées UID (un identifiant unique et aléatoire spécifique à chaque appareil) et GID (un identifiant commun à toute une classe de processeur utilisé pour des tâches qui ne présentent pas un risque majeur pour la sécurité du système).

Apple, iOS Security Guide

Comment fonctionne le chiffrement des données sur iPhone

La firme utilise un système qu’elle appelle Secure Enclave, — un coprocesseur cryptographique intégré au SoC (System on Chip, soit la racine matérielle d’un appareil) — qui protège les clés au niveau matériel. Pour citer Comex, un hacker célèbre dans la scène du jailbreak, « la clé UID vit dans le matériel, vous pouvez demander aux moteur de chiffrement de chiffrer ou de déchiffrer la clé, mais vous ne pouvez pas demander la clé elle-même ».

L’algorithme utilisé par le moteur de chiffrement d’Apple est l’AES 256 (pour Advanced Encryption Standard ou Standard de Chiffrement Avancé en français). À ce jour, celui-ci n’a jamais été cassé et la recherche exhaustive (bruteforce) constitue la seule solution pour les attaquants. L’attaque par « force brute » consiste à tester une à une toutes les combinaisons possibles de mots de passe. Bien sûr, quand on a que dix essais, essayer chaque combinaison s’avère absolument inefficace — à moins bien sûr d’être l’homme le plus chanceux au monde.

Le principal obstacle qui s’opposait à la mise en place d’une sécurité matérielle sur les téléphones était jusqu’à maintenant l’impact du chiffrement et du déchiffrement sur les performances générales du système et sur la batterie. Mais sur iOS, pour préserver la fluidité du système, Apple nous dit dans son guide de sécurité que le moteur de chiffrement « se situe dans le chemin DMA entre le stockage Flash et la mémoire du système ».

Concrètement, l’identifiant unique de la machine fait que les données sont liées à un appareil précis. Par exemple, si les puces de mémoire de l’appareil venaient à être transférées dans un autre appareil, les données resteraient inaccessibles.

Une protection logicielle

En plus de la protection matérielle, iOS intègre une batterie de mesure de protection pour les fichiers stockés sur l’appareil. Les applications importantes comme Messages, Mail, Calendrier, Contacts, Photos et Santé, ainsi que toutes les applications tierces sont, — sur un appareil tournant sur une version supérieure à iOS 7.0 –, protégées par une API appelée Data Protection.

Tous les fichiers créés sur l’appareil reçoivent une clé 256-bit. Une classe est attribuée à chaque clé selon la nature du fichier, afin de savoir quand celui-ci doit être accessible. Quand l’appareil est verrouillé, les clés de fichiers sont vidées de la mémoire et il n’est plus possible de lire les fichiers chiffrés — et cela jusqu’à ce que l’appareil soit débloqué à nouveau.

Si cela vous semble abstrait, il est possible d’illustrer cette explication par une petite expérience. Pour la réaliser, il vous faudra prendre un deuxième téléphone et, si cela n’est pas déjà fait, enregistrer son numéro dans votre répertoire. Éteignez ensuite votre iPhone et rallumez-le, mais surtout ne le débloquez pas. Puis appelez votre iPhone en utilisant l’autre téléphone. Vous aurez remarqué que seul le numéro de téléphone apparait, et non le nom attribué au contact.

Schématiquement, chaque fois qu’un utilisateur crée un fichier, le système le chiffre et lui donne une clé spécifique. La clé du fichier est elle-même chiffrée avec une des quatre classes de clés proposées par l’API. La clé chiffrée est stockée dans les meta-données du fichier, elles-mêmes chiffrées par la clé du système de fichier, elle-même chiffrée par la protection matérielle.

Apple, iOS Security Guide

Résumons

La protection proposée par Apple sur les iPhone récents est coriace : sans le mot de passe, il est virtuellement impossible pour un attaquant d’accéder aux fichiers sur l’appareil. Il faut entendre « impossible » dans l’état actuel de la technique. En effet, selon le guide de sécurité iOS d’Apple, craquer le mot de passe avec un bruteforce prendrait, à l’heure actuelle, un peu plus de cinq ans pour un code alphanumérique de six caractères.

Qui plus est, des délais sont mis en place au niveau logiciel (jusqu’à 1h) et matériel (de 80 ms à 5 secondes sur les modèles les plus récents) pour espacer le temps entre les essais de mots de passe. C’est-à-dire que même si un utilisateur n’active pas l’option d’effacement au bout de 10 essais, il serait toujours nécessaire de rentrer manuellement chaque code sur l’écran pendant un temps extrêmement long.

Apple, iOS Security Guide

Pour protéger efficacement ses données, la première nécessité est donc d’utiliser un bon mot de passe — mais cela s’applique d’une manière générale à l’ensemble des lieux où sont stockés des fichiers sensibles. Un mot de passe complexe peut certes être contraignant dans la mesure où l’on débloque son téléphone plusieurs fois par jour ; mais les modèles les plus récents s’affranchissent de cette contrainte grâce au capteur d’empreintes digitales (Touch ID).

Dans l’éventualité où le vol d’un iPhone pourrait vous mettre en danger, il faut avoir le bon réflexe de l’éteindre. En effet, certains fichiers sont déchiffrés après le premier déblocage : si l’on reprend l’exemple du contact, passé le premier déblocage, le nom de celui-ci apparait, et cela même lorsque le téléphone est bloqué. De plus, éteindre le téléphone empêche l’attaquant d’utiliser l’empreinte digitale du propriétaire à son insu pour débloquer l’appareil car le premier démarrage demande obligatoirement la saisie d’un code.

Enfin, mettre en place un mot de passe fort sur iCloud et activer la double authentification sera également utile pour empêcher à un attaquant d’accéder aux fichiers sauvegardés sur le cloud. Dans le cas spécifique de l’iPhone 5C du tueur de San Bernadino, il se pourrait que l’appareil puisse tout de même être débloqué par Apple puisque celui-ci n’a pas de Secure Enclave.

Plus d'actu apple

Mots clés: