Comment bien maitriser chiffrement et protection de données dans iOS
Le chiffrement et la protection d'iOS renforcent la sécurité des données. Mais assurez-vous d'abord que les utilisateurs activent les bons paramètres.
La protection des données d'Apple et le chiffrement intégré à iOS constituent un système puissant de sécurisation des informations, à condition que ces technologies soient correctement mises en œuvre.
Si les collaborateurs n'activent pas la protection des données sur leurs appareils, ou s'ils utilisent des applications qui ne s'en servent pas, il ne reste plus que le chiffrement iOS de base pour protéger les données sensibles. Il est alors plus facile d'effacer le contenu de ces appareils. Pour tirer parti des puissantes fonctions de chiffrement fournies par le système d'Apple, il faut donc s'assurer que les utilisateurs ont activé la protection des données et les paramètres associés.
Lors du lancement d'iOS 4, Apple a ajouté une nouvelle fonction importante : la protection des données ; une amélioration de l'architecture qui renforce le chiffrement iOS sur les appareils.
Elle se conjugue aux mécanismes de chiffrement intégrés au matériel et au microprogramme des appareils pour mieux protéger les données.
Apple a amélioré la protection des données au fil des évolutions d’iOS dans le sens d'une plus grande flexibilité d'accès aux fichiers, même sur un appareil verrouillé, sans pour autant mettre ces données en danger.
Chiffrement iOS intégré
Depuis la sortie de l'iPhone 3GS, Apple a intégré le chiffrement au matériel et au microprogramme de ses iPad et iPhone. Ainsi, tout appareil iOS dispose depuis lors d'un moteur cryptographique 256 bits AES (Advanced Encryption Standard) intercalé entre la mémoire Flash et la mémoire système principale. Allié à la fonction de hachage cryptographique SHA-1 (également mise en oeuvre sur le matériel), ce moteur permet de réduire le surcoût associé aux opérations de chiffrement.
Le matériel de l'appareil comporte également un identifiant unique (UDID) intégré, une clé AES 256 bits incorporée au processeur d'applications. L'UDID est propre à l'appareil et n'est enregistré nulle part ailleurs. Aucun logiciel ni microprogramme ne peut le lire directement. Seuls les résultats des opérations de chiffrement et de déchiffrement sont visibles. De plus, comme la clé est gravée dans le silicium, elle ne peut être ni falsifiée, ni contournée. Seul le moteur cryptographique y a accès. Résultat : les données sont cryptographiquement liées à un appareil spécifique et ne peuvent être associées à aucun autre identifiant ou appareil.
L'intégration du chiffrement à l'architecture facilite le chiffrement de toutes les données stockées sur un appareil iOS. En fait, Apple active ce niveau de chiffrement par défaut et n'autorise pas sa désactivation. Cependant, en termes de réelle protection, ce chiffrement iOS apporte peu de choses, si ce n'est qu'il permet un effacement rapide et sûr du système. Il s'agit d'une fonction importante, notamment en cas de perte ou de vol d'un appareil et à condition que l'effacement à distance ait été configuré au préalable. Dans de telles circonstances, il est en théorie possible d'effacer les données d'un appareil avant que quelqu'un puisse le pirater ou le débloquer. Mais si l'appareil n'est pas nettoyé assez vite, un pirate peut « craquer » la sécurité et s'approprier des données sensibles.
Activer la protection des données d'iOS
C'est là qu'intervient la protection des données d'iOS. Cette fonction est mise en oeuvre au niveau logiciel et se combine au chiffrement du matériel et du microprogramme pour assurer un degré plus élevé de sécurité.
Lorsque la protection des données est activée, chaque fichier de données est associé à une classe particulière qui prend en charge un niveau différent d'accessibilité et protège les données selon les modalités de leur accès. Les opérations de chiffrement et de déchiffrement associées à chaque classe dépendent d'une hiérarchie de clés complexe qui utilise l'UDID et le code secret de l'appareil, plus une clé de classe, une clé du système de fichiers et une clé par fichier. La clé par fichier sert à crypter le contenu du fichier. La clé de classe enveloppe la clé par fichier. Elle est stockée dans les métadonnées du fichier. La clé du système de fichiers sert à crypter les métadonnées. L'UDID et le code secret protègent la clé de classe.
Heureusement, cette opération est transparente pour l'utilisateur. Ce dernier accède à ses applications normalement. Le fonctionnement détaillé des mécanismes de chiffrement n'est pas le plus important à retenir (sauf pour les développeurs). Retenons que pour qu'un appareil utilise la protection des données, un code secret doit être entré lors de l'accès à cet appareil. Le code ne sert pas uniquement à déverrouiller l'appareil ; il devient également indissociable de l'UDID pour créer des clés de chiffrement iOS plus résistantes aux piratages et aux attaques en force. En fait, les utilisateurs doivent activer des codes secrets sur leurs appareils pour activer la protection des données.
Protéger les données dans iOS
Si vous autorisez les appareils iOS dans votre entreprise, vos politiques doivent inciter les utilisateurs à employer des codes secrets qui contribueront à protéger des données sensibles. Mais n'oubliez pas que tous les codes secrets ne se valent pas. Sur un appareil iOS, il en existe deux sortes : le code numérique simple à quatre chiffres et le code alphanumérique complexe, qui en principe est beaucoup plus long. Evidemment, plus le code alphanumérique est complexe, plus il est efficace.
Par exemple, selon la documentation Apple, une attaque en force dirigée contre un appareil qui utilise un code secret alphanumérique à neuf chiffres nécessitera 2 ans et demi d'efforts pour essayer toutes les combinaisons possibles, en partie parce qu'iOS applique des délais croissants pour décourager ce genre d'attaque. En revanche, un code secret à six caractères combinant des chiffres et des lettres minuscules résistera 5 ans et demi. Et, vous vous en doutez, un code numérique à quatre chiffres serait craqué en un rien de temps. Bien sûr, si les utilisateurs paramètrent leurs appareils pour que leur contenu soit automatiquement effacé au bout de 10 tentatives échouées, le nombre de tentatives n'est pas un problème (sauf si le code secret peut être deviné en moins de 10 essais). Même si un pirate réussissait à débloquer un appareil et à contourner le code secret, les données resteraient inaccessibles car ce code secret n'aurait pas été entré.
Toutefois, les codes secrets ne sont pas le seul facteur à prendre en compte pour tirer le meilleur parti de la protection des données d'iOS. En effet, une application doit être conçue pour utiliser les interfaces de programmation d'application (API) de protection des données, afin de garantir cette protection lorsque l'application accède aux données. Elle doit également garantir de ne pas transférer des données à des applications qui n'utilisent pas la protection des données. En d'autres termes, aucune application non sécurisée ne devrait pouvoir accéder aux données d'une application sécurisée. N'oubliez pas que, même si une application est conçue pour protéger toutes ses données, elle peut être confrontée à des limitations qu'elle ne contrôle pas. Ainsi, la protection des données n'est pas applicable aux fichiers qui font partie du stockage iCloud.
Et aussi
- La révolution Apple et l'entreprise : comment gérer les Macs ?
- iOS : configurer des certificats d'autorité de certification sur les iPads et iPhones
- iOS plus sûr qu’Android, mais pas moins risqué
- Avec iOS 8, Apple continue d’avancer pour les entreprises
- Pourquoi opter pour une stratégie combinant iOS et Android
- Comment effacer à distance des terminaux iOS et Android
Depuis iOS 6, les utilisateurs peuvent mieux contrôler les applications capables d'accéder à des données sécurisées dans d'autres applications. Bien que les mécanismes de chiffrement eux-mêmes n'aient pas changé dans iOS 6, le système d'exploitation exige depuis une autorisation de l'utilisateur pour qu'une nouvelle application puisse accéder aux données personnelles, telles que les calendriers, les rappels et les contacts. De même, les utilisateurs peuvent désormais modifier l'accès aux données de certaines applications dans les réglages de l'appareil (sous Privacy - Confidentialité).
Mais ce n’est pas tout. Dans la foulée d’iOS 8, Apple a rendu publique une nouvelle version de son livre blanc de description des dispositions de sécurité embarquées par son système d’exploitation mobile. Et l’on y apprend ainsi que « certaines applications système telles que Messages, Mail, Calendriers, Contacts, et Photos utilisent Data Protection par défaut » quand des applications tierces peuvent optionnellement en profiter. Ce dispositif de protection des données vise au chiffrement AES 256 bits des fichiers de données stockées sur la mémoire flash interne. Il est activé automatiquement dès que l’utilisateur définit un mot de passe pour verrouiller son terminal. Avec un processeur A7 – iPhone 5S notamment –, toutes les tâches liées aux clés de chiffrement sont assurées par Secure Enclave, un coprocesseur dédié à la cryptographie et qui est notamment utilisé pour vérifier la signature des applications. Selon Apple, Secure Enclave « maintient l’intégrité de Data Protection y compris lorsque le noyau a été compromis. » Ce coprocesseur utilise notamment un espace mémoire chiffré.
Pour tirer pleinement parti du chiffrement iOS, il s'agit non seulement d'appliquer des règles en matière de code secret, mais également de conserver un contrôle total des applications mises en oeuvre sur les appareils iOS, ou au moins de celles qui utilisent les données stratégiques de l'entreprise. Sans ces méthodes, point de salut, car le degré de protection serait alors pratiquement nul.