Sécurité de l’autorité de séquestre pour le trousseau iCloud
iCloud offre une infrastructure sécurisée pour le stockage sous séquestre du trousseau afin de contribuer à garantir que seuls les utilisateurs et les appareils autorisés puissent effectuer une récupération. Sur le plan topologique, des grappes de modules de sécurité matériels (HSM, Hardware Security Modules) sont placées derrière iCloud pour protéger les enregistrements stockés sous séquestre. Comme décrit précédemment, chacun d’eux possède une clé utilisée pour chiffrer les enregistrements stockés sous séquestre placés sous sa garde.
Pour récupérer un trousseau, les utilisateurs doivent s’authentifier avec leur nom d’utilisateur et leur mot de passe iCloud et répondre à un message texte envoyé à leur numéro de téléphone enregistré. Ils doivent ensuite également saisir leur code de sécurité iCloud. La grappe de HSM vérifie que l’utilisateur connaît son code de sécurité iCloud grâce au protocole SRP (Secure Remote Password); le code lui‑même n’est pas envoyé à Apple. Chaque membre de la grappe vérifie indépendamment que l’utilisateur n’a pas dépassé le nombre maximal de tentatives autorisées de récupération de son enregistrement (voir ci‑dessous). Si cela est confirmé par une majorité de membres, l’enregistrement stocké sous séquestre est débloqué et envoyé à l’appareil de l’utilisateur.
L’appareil utilise ensuite les données confiées pour débloquer les clés aléatoires utilisées pour chiffrer le trousseau de l’utilisateur. Avec cette clé, le trousseau récupéré à partir de CloudKit et de la zone de stockage clé-valeur d’iCloud est déchiffré, puis restauré sur l’appareil. Le service d’autorité de séquestre autorise uniquement 10 tentatives pour authentifier et récupérer un enregistrement sous séquestre. Après plusieurs tentatives manquées, l’enregistrement est verrouillé, et l’utilisateur doit appeler l’assistance Apple pour pouvoir effectuer des tentatives supplémentaires. Après la 10e tentative manquée, la grappe de HSM détruit l’enregistrement stocké sous séquestre, et le trousseau est perdu définitivement. Cette règle constitue une protection efficace contre les tentatives de récupération de l’enregistrement en force, mais les données du trousseau sont sacrifiées.
Ces politiques sont codées dans le programme interne de la grappe de HSM. Les cartes d’accès administratif permettant de modifier le programme interne ont été détruites. Toute tentative de modifier le programme interne ou d’accéder à la clé privée entraîne la suppression de celle-ci par la grappe de HSM. Dans ce cas, le propriétaire de chaque trousseau protégé par la grappe reçoit un message lui annonçant la perte de son enregistrement stocké sous séquestre. Il a alors la possibilité de se réinscrire au service.