Si vous avez un téléphone Samsung, vous avez peut-être remarqué la phrase «Secured by Knox» sur l'écran de démarrage. Qu'est-ce que cela veut dire? Under the cut - une description de la plate-forme de sécurité mobile préchargée sur la plupart des smartphones et tablettes Samsung. Il s'agit du premier examen en langue russe des mécanismes qui existent généralement dans la solution Knox.

Présentation
En 2019, Samsung Electronics a fêté ses 50 ans, et cette année a également été marquée par une autre date ronde - 10 ans depuis la sortie du premier appareil Galaxy - le GT-I7500. Voici à quoi ressemblait ce modèle:

Selon les normes actuelles, le téléphone avait des caractéristiques très modestes: un écran de 3,2 pouces et un processeur avec une fréquence d'horloge de seulement 528 MHz, exécutaient l'une des premières versions du système d'exploitation Android. En fait, en 2009, le modèle n'était pas unique: il y avait des appareils sur le système d'exploitation Android ouvert avec des caractéristiques matérielles similaires sur la plate-forme ARM sur le marché. Il était clair que le succès nécessite un «point culminant» qui distingue l'entreprise du reste.
Sans aucun doute, l'ouverture du système d'exploitation a influencé le succès de l'OS Android: selon les
estimations d' IDC
, en octobre 2019, il était installé sur 87% des smartphones vendus, et ce nombre continue d'augmenter. Mais alors, et maintenant, le problème de sécurité Android est l'un des sujets qui sont souvent abordés.
Samsung a présenté la plateforme Knox en réponse aux défis dans le domaine de la sécurité des informations des appareils mobiles. La première édition de Knox (l'ancien nom est «SAFE» ou «Samsung for Enterprise») est sortie en 2012 avec le Galaxy S3.

La dernière version majoritaire de la plateforme (3.0) est sortie avec le Galaxy S9 en 2018. La version actuelle au moment de la rédaction est la 3.4. Le nom Knox vient de Fort Knox, l'un des gisements d'or les plus sûrs au monde.

Qu'est-ce que Knox? Maintenant, sous ce nom (ou plus exactement une marque), on comprend tout ce qui est connecté à Samsung avec la sécurité mobile. Cela inclut le gestionnaire de mots de
passe Samsung Pass , le
dossier sécurisé , le service de paiement
Samsung Pay et toute une famille de
solutions d'entreprise , mais cela est basé sur la plate-forme Knox.

Une caractéristique importante de la plate-forme Samsung Knox est qu'elle est basée sur des mécanismes matériels. Samsung, en tant que fabricant de composants matériels, peut contrôler l'ensemble du processus de production, d'assemblage et de configuration de l'appareil et, par conséquent, concevoir des mécanismes de sécurité basés sur les capacités matérielles.
Cela comprend les principes suivants:
- La sécurité du système repose sur la racine matérielle de confiance (HW Root of Trust).
- La surveillance de la sécurité de l'appareil doit commencer au démarrage.
- La surveillance de la sécurité est obligatoire et régulière pendant le fonctionnement de l'appareil.
- Le système doit disposer d'un mécanisme permettant aux systèmes tiers de prouver leur intégrité.
- La valeur principale de l'appareil est les données utilisateur. Leur protection est une priorité du système.
Une attention particulière dans le développement de la plate-forme Knox est accordée aux exigences spécifiques de l'entreprise en matière de sécurité des appareils. Les téléphones portables sont devenus un outil de travail: ce n'est pas seulement le travail de bureau habituel pour tout le monde (courrier, messagers, suite bureautique), mais aussi des options plus exotiques: un téléphone comme caisse enregistreuse, un scanner dans l'entrepôt ou même un guide dans le musée. Pour les entreprises, la capacité de gérer ces emplois mobiles est importante.
La plateforme Knox résout également ce problème:
- Les données d'entreprise sur l'appareil doivent être gérées de manière pratique.
- Le dispositif d'entreprise doit disposer de mécanismes de surveillance et de contrôle centralisés.
- Les éléments ci-dessus ne doivent pas être mis en œuvre au détriment de la confidentialité de l'utilisateur final.
Plus de détails sur la plate-forme d'appareil Samsung Knox.
Construire un environnement de confiance
Avant de plonger dans la discussion des mécanismes individuels, il convient de dire quelques mots sur la base de tous les mécanismes matériels de protection de la plate-forme Knox - Architecture de mesure de l'intégrité basée sur TrustZone (TIMA). Il est basé sur ARM TrustZone Framework.
Il y a 2 «mondes» (zones) dans le paradigme TrustZone:
- Sécurisé
- Normal ou non sécurisé (monde «normal» ou «non sécurisé»)
Leur séparation est effectuée au niveau matériel et est contrôlée par un composant distinct appelé Monitor. Cela ressemble à ceci:
Source: www.arm.comLa fonctionnalité du téléphone est répartie entre ces deux zones comme suit:
Monde sécurisé:
- Informatique sensible (par exemple, chiffrement).
- Protection des informations critiques.
- Surveillance de l'état du noyau du système d'exploitation exécuté dans Normal World.
- Accès à la mémoire et aux appareils marqués comme sécurisés (accessibles uniquement depuis Secure World).
Monde normal:
- Exécution du système d'exploitation principal et de toutes les applications utilisateur.
- Les applications exécutées sur Secure World sont les plus privilégiées et peuvent accéder aux ressources des deux environnements (Secure World et Normal World). Dans des conditions normales, les applications de Normal World ne peuvent pas accéder directement aux ressources Secure World.
Des bases, passons aux mécanismes de protection eux-mêmes dans la plate-forme Knox.
Racine matérielle de confiance
Déjà au moment de la production en usine, lors de l'installation du logiciel (logiciel), des clés cryptographiques sont créées sur l'appareil mobile. Considérez 2 clés principales:
- Clé matérielle unique de périphérique (DUHK) ou Clé matérielle unique de périphérique. Une clé symétrique unique à chaque appareil, qui est créée directement sur l'appareil à l'aide d'un générateur de nombres aléatoires matériel. Les informations chiffrées avec cette clé ne peuvent être déchiffrées que sur le même appareil. DUHK est disponible uniquement pour le module de chiffrement matériel et n'est disponible pour aucun logiciel sur l'appareil. À l'aide de DUHK, les clés cryptographiques restantes sur l'appareil sont cryptées. Lorsque nous disons qu'un composant est lié à un appareil, c'est le plus souvent l'utilisation de cette clé.
- Clé racine du périphérique (DRK) ou Clé racine du périphérique. Unique pour chaque appareil une paire de clés asymétriques (RSA), signée par le certificat racine (X.509) Samsung. DRK est protégé par DUHK et n'est disponible que sur Secure World. Il identifie de manière unique l'appareil et confirme qu'il est fabriqué par Samsung.
Avec l'approche ci-dessus, les clés sont difficiles à compromettre ou à falsifier, les données cryptées sont fermement liées au matériel, elles ne peuvent pas être transférées et lues sur un autre appareil.
Fabrication d'appareils chez Samsung Electronics, Gumi, Corée du SudTélécharger l'appareil
Démarrage sécurisé
Le processus de démarrage du périphérique se compose d'une chaîne de chargeurs de démarrage, chacun vérifiant la signature du composant suivant, puis le démarre. Si la vérification échoue, le processus de téléchargement est interrompu. Ce mécanisme est appelé Secure Boot. Dans son travail, il utilise la clé Samsung Secure Boot Key (SSBK), une paire de clés asymétriques dans le stockage matériel.
Le démarrage sécurisé garantit que l'appareil démarre uniquement à l'aide de chargeurs de démarrage Samsung fiables. Si l'un des chargeurs de démarrage est compromis, le périphérique commence à s'arrêter, empêchant ainsi tout compromis potentiel du périphérique.
Démarrage sécurisé
Le démarrage sécurisé en vérifiant la signature résout le problème des chargeurs de démarrage tiers, mais ne résout pas le problème des anciennes versions non pertinentes qui comportent potentiellement un certain nombre de vulnérabilités connues. Par conséquent, le mécanisme Trusted Boot a été développé et fonctionne au-dessus de Secure Boot. Il vérifie la pertinence de la version du chargeur de démarrage. Les résultats des tests sont écrits dans la mémoire protégée dans TrustZone Secure World et peuvent être utilisés pour de futures vérifications.
Démarrage vérifié Knox (KVB)
Lorsque le système d'exploitation commence à se charger, un autre mécanisme appelé Knox Verified Boot est activé. KVB est une extension du moteur
Android Verified Boot (AVB) . En plus des mesures standard contrôlées par AVB, KVB prend également en compte les résultats obtenus par Trusted Boot et Secure Boot (c'est-à -dire l'intégrité et la pertinence du chargeur de démarrage). En raison de l'exécution de toutes les opérations KVB dans le chargeur de démarrage, cette vérification est fiable et sûre (la procédure est effectuée en dehors de l'objet vérifié).
Le composant Knox Verified Boot est assez nouveau et est pris en charge par les appareils commençant par le Samsung S10 exécutant Android P ou une version ultérieure.
Graphiquement, le processus de démarrage d'un périphérique protégé par des mécanismes Knox peut être représenté comme suit:

Drapeau de quincaillerie de garantie Knox
Knox Warranty Bit est une fonction de sécurité qui vous permet d'enregistrer le fait d'installer une version non officielle du logiciel système sur un appareil. Les appareils avec un bit de garantie activé ne peuvent pas utiliser certaines fonctionnalités, par exemple, Knox Workspace. Le drapeau ne peut pas être remis dans son état d'origine. Il garantit que l'appareil Samsung n'a été précédemment lancé qu'avec un système d'exploitation de confiance.
Fig. Firmware personnalisé à gauche, KNOX WARRANTY VOID 0x1Verrouillage matériel sur les anciennes versions du logiciel (Rollback Prevention)
Les versions plus anciennes des composants de démarrage peuvent contenir des vulnérabilités. Prévention de la restauration - une fonction qui bloque le retour à une ancienne version du système d'exploitation. La version minimale du chargeur de démarrage possible pour le firmware est stockée dans une zone protégée. La plus petite version possible du noyau du système d'exploitation est stockée dans le chargeur de démarrage lui-même. Avec une mise à jour régulière du système, les versions minimales autorisées du chargeur de démarrage et du système d'exploitation sont augmentées. Il n'est pas possible de revenir à une version précédente ou antérieure.
Il est impossible de revenir d'Android P à Android O.Intégrité de l'environnement de confiance
Après le démarrage, l'intégrité du système doit être vérifiée régulièrement. Il existe plusieurs mécanismes pour cela dans Knox.
Composant de mesure périodique du noyau (PKM)
PKM surveille périodiquement le système d'exploitation pour les modifications de ses composants dès le démarrage. Dans le cadre de la vérification, les sommes de contrôle du noyau et l'état du sous-système SE pour Android sont suivis (nous en parlerons un peu plus tard). PKM fonctionne pour Secure World. Ainsi, toute modification anormale du noyau OS sera détectée.

Composant de protection du noyau en temps réel (RKP)
Trusted Boot protège contre le chargement du noyau modifié, mais le noyau peut être attaqué pendant le fonctionnement de l'appareil. Une surveillance constante de l'intégrité du code et des données critiques est requise. RKP est une surveillance de sécurité située dans un environnement isolé - soit dans ARM TrustZone Secure World, soit dans un hyperviseur «léger» protégé par des extensions matérielles de virtualisation.
RKP utilise des méthodes spéciales pour surveiller la gestion de la mémoire dans Normal World, intercepter les requêtes critiques et évaluer leur impact avant leur exécution. Le mécanisme de protection du noyau en temps réel complète les vérifications périodiques d'intégrité du noyau (PKM).

Ainsi, la protection du noyau en temps réel est une garantie de protection contre l'exécution de code malveillant au niveau du noyau du système d'exploitation.
Vérification d'intégrité de l'environnement de confiance
Les appareils mobiles ne fonctionnent pas isolément, ils font généralement partie d'un système plus vaste, par exemple, ils sont des clients serveurs, des nœuds de calcul, etc. Et pour que le système fonctionne de manière stable et sûre, il doit être sûr que tous ses composants sont «sains» et ils sont ce qu'ils disent être. C'est une tâche assez difficile; dans le cadre de la plateforme Knox, elle est résolue à l'aide du mécanisme de certification à distance.
Certification d'appareil Ă distance (Knox Attestation)
La certification à distance permet à un système tiers de tirer une conclusion sur l'état de l'appareil final. Les paramètres suivants sont vérifiés notamment:
- les mesures collectées pendant le processus d'amorçage Trusted Boot;
- journaux des violations de sécurité des mécanismes PKM et RKP depuis le dernier redémarrage;
- État du bit de garantie Knox
- Divers identifiants de périphérique, tels que IMEI.

Le message de certification est généré dans ARM TrustZone Secure World. C'est correct même si le système d'exploitation dans Normal World est compromis.
En plus de vérifier les paramètres individuels, la certification évalue également l'état du système dans son ensemble. Ce n'est que lorsque les mesures collectées par le Trusted Boot correspondent aux valeurs de référence et que la valeur Knox Warranty Bit n'est pas modifiée, que la certification est considérée comme réussie.
Le message de certification ne peut pas être falsifié car il est signé à l'aide de la clé d'attestation Samsung (SAK), dérivée de la clé racine Samsung. Le serveur distant peut vérifier l'intégrité du message à l'aide de la clé racine Samsung. La signature contient un «additif» cryptographique généré côté serveur (un nombre aléatoire qui n'est utilisé qu'une seule fois) pour empêcher l'attaquant d'utiliser l'ancien message de validation sur un appareil déjà compromis.
Le système tiers peut décider d'autres actions en fonction des résultats de la certification, en fonction des politiques de sécurité. Par exemple, vous pouvez vous déconnecter de l'appareil, effacer du contenu dans un espace de travail sécurisé, demander l'emplacement de l'appareil et effectuer de nombreuses autres actions.
Protection des données
Les données sont la valeur fondamentale d'un appareil mobile et nécessitent des mécanismes de protection distincts.
Cryptage du stockage interne
Le cryptage complet de la mémoire interne est une condition préalable pour tous les appareils basés sur Android OS à partir de la version 7. Knox développe ce concept en stockant la clé dans un stockage de clé matérielle sécurisé.

Améliorations de la sécurité (SE) pour Android
Samsung Knox utilise l'amélioration de la sécurité pour Android (amélioration de la sécurité pour Android, SE pour Android), qui ajoute le contrôle d'accès obligatoire (MAC) au système d'exploitation.
SE pour Android offre deux niveaux de protection MAC:
- Protection du noyau
- Protection du middleware Android
Les objectifs de SE pour Android incluent l'isolement des données et des applications, la restriction des droits des processus système, y compris ceux exécutés au nom d'un superutilisateur.

Conteneurisation Knox
Un cas d'utilisation particulier pour le moteur SE pour Android est le conteneur Knox.
Un conteneur divise les applications et les données en deux espaces indépendants: une zone régulière et une zone protégée. Les données de la zone protégée sont stockées sous forme cryptée dans la mémoire interne. Les clés de chiffrement, à leur tour, sont chiffrées à l'aide d'une clé DUHK, c'est-à -dire ils sont liés à un appareil spécifique. Si l'appareil est compromis (Knox Warranty Bit, Trusted Boot, etc.), l'accès au conteneur est bloqué.
Il est important de noter que les applications installées dans le conteneur fonctionnent, en fait, dans un environnement normal. Par conséquent, une application écrite pour Android s'exécute dans un conteneur sans aucune adaptation ni modification du code source.
La technologie de conteneurisation est utilisée dans plusieurs produits Samsung, tels que Secure Folder et Knox Workspace.

Opportunités d'affaires
Tous les mécanismes ci-dessus sont particulièrement importants lors de l'utilisation d'appareils mobiles dans un environnement d'entreprise. Cette question mérite un examen séparé, nous nous limitons donc ici à l'image:

Sources supplémentaires sur le sujet:

Publié par: Vladimir Karacharov,
Gestionnaire, avant / après-vente B2B
Équipe de développement commercial
Samsung R&D Institute Russia