FR 3146742 A1 20240920 FR 2302518 A 20230317 L'invention concerne un procédé pour certifier à distance l'État (S) d'un Terminal (E), dont la confiance n'est pas établie, à partir d'un Serveur (B), impliquant un Orchestrateur de Terminaux (EO) et au moins un Validateur de Terminaux (EV) qui attestent de la Plausibilité (P) de l'État (S). Les Validateurs de Terminaux (EV) sont distincts de l'Orchestrateur de Terminaux (EO). L'État (S) est basé sur une série de Validations d'État (SVi) et une Fonction d'État (SF), de sorte que S = SF (SVi). L'État (S) est connu du Serveur (B) et du Terminal (E). La Fonction d'État (SF) est connue du Serveur (B) et du Terminal (E). Les séries de Validations d'État (SVi) sont inconnues du Serveur (B) mais connues du Terminal (E). Le procédé comprend une étape de vérification de la Plausibilité (P) de l'État (S) avec les conditions suivantes : la Plausibilité (P) représente une analyse d’informations du Terminal (E) permettant la vérification de l'exactitude de l'État (S) ; la Plausibilité (P) est connue du Serveur (B) via Orchestrateur de Terminaux (EO) ; la Plausibilité (P) est basée sur une série de Validations de Plausibilité (PVj) et une Fonction de Plausibilité (PF), telles que P = PF (PVj) ; la Fonction de Plausibilité (PF) et les Validations de Plausibilité (PVj) sont mises à jour de façon dynamique ; les Validations de Plausibilité individuelles (PVj) sont inconnues du Serveur (B), pour protéger la confidentialité du Terminal (E) ; la Fonction de Plausibilité (PF) et les Validations de Plausibilité (Pvj) sont inconnues du Terminal (E), pour rendre difficile la falsification de la Plausibilité (P) ; la Fonction de Plausibilité (PF) est calculée par l'Orchestrateur de Terminaux (EO) ; les Validations de Plausibilité (PVj) sont calculées par le Validateur de Terminaux (EV) sur la base d'une série de Données de Terminal (ED) inconnues de tout composant du système à l'exception du Terminal (E). PROCÉDÉ ET SYSTÈME DÉCENTRALISÉS PRÉSERVANT LA CONFIDENTIALITÉ POUR CERTIFIER À DISTANCE L'ÉTAT D'UN POINT DE TERMINAISON DONT LA CONFIANCE N’EST PAS ÉTABLIE DOMAINE TECHNIQUE DE L'INVENTION L'invention concerne un procédé et un système pour certifier à distance l'État (S) d'un Terminal (E) dont la confiance n’est pas établie. L'invention se situe dans le domaine du calcul décentralisé préservant la confidentialité et de la certification de l'état des terminaux (en particulier la posture de sécurité des terminaux). Le but est de certifier à distance l'État (S) d'un Terminal (E) dont la confiance n'est pas établie. En particulier, il s'agit de certifier que la Posture de Sécurité (SP) d'un tel Terminal (E) tentant d'accéder à une ou plusieurs Ressources (R) distantes est conforme aux différentes politiques de sécurité lorsqu'il accède à cette Ressource (R). Par exemple, les politiques de sécurité peuvent inclure des prérequis de logiciels installés ou des configurations système visant à améliorer la Posture de Sécurité (SP) du Terminal (E) lorsqu'il accède à la ressource (R). L'invention peut s'appliquer à d'autres propriétés décrivant l'État (S) du Terminal (E) et n'est pas limitée à la Posture de Sécurité (SP). Par certification de la Posture de Sécurité (SP), nous entendons calculer régulièrement la Posture de Sécurité (SP) mais aussi prouver son exactitude et exposer sa valeur au Propriétaire (OR) de la Ressource (R). Grâce à cette certification, une Posture de Sécurité (SP) correspondant aux attentes d'un Propriétaire de Ressources (OR) peut être utilisée en toute confiance pour autoriser ou refuser l'accès de manière dynamique à la ressource (R). Contrairement aux solutions existantes, nous souhaitons que cette certification soit possible pour tous les types de Terminaux (E), y compris les Terminaux (E) n'appartenant pas à et non contrôlés par le Propriétaire des Ressources (OR) et donc non approuvés par le Propriétaire de Ressources (OR). Nous voulons le faire d'une manière extrêmement difficile à altérer pour donner au Propriétaire des Ressources (OR) une forte confiance dans le calcul de la Posture de Sécurité (SP) du Terminal (E). Et nous voulons le faire tout en offrant une garantie totale du caractère privé ou confidentiel des Données du Terminal (ED) utilisées pour effectuer ladite certification. CONTEXTE DE L'INVENTION Selon l'état de l'art, une solution serait d'obtenir la certification d'un État (S) pour un Terminal (E) comme sa Posture de Sécurité (SP) en permettant un accès arbitraire et dynamique des Données du Terminal (ED) par le Propriétaire des Ressources (OR) via un Serveur (B) combiné à un Agent Logiciel (SA) s'exécutant sur le Terminal (E) à des fins d'attestation à distance et d'autres mécanismes d'analyse de la sécurité. Traditionnellement, le Terminal (E) exécuterait une solution de Gestion Unifiée des Terminaux (UEM) formée par un Agent Logiciel (SA) s'exécutant sur le Terminal (E) et un Serveur (B), où l'Agent Logiciel (SA) est totalement contrôlé par le Serveur (B). Cependant, l'accès arbitraire aux Données du Terminal (ED) par le Propriétaire des Ressources (OR) n'est possible que lorsque : ▪ le Terminal (E) appartient au Propriétaire des Ressources (OR) et est géré de manière centralisée par le Propriétaire des Ressources (OR) ; et ▪ le Terminal (E) n'est pas utilisé par l'Utilisateur du Terminal (EU) pour des raisons personnelles, car le contrôle du Terminal (E) impliqué par la Gestion Unifiée des Terminaux (UEM) violerait la vie privée de l'Utilisateur du Terminal (EU) et ▪ le Terminal (E) n'est pas utilisé par l'Utilisateur du Terminal (EU) pour accéder à plusieurs Ressources (R), puisque le contrôle du Terminal (E) impliqué par la Gestion Unifiée des Terminaux (UEM) violerait la confidentialité. Par exemple, une Ressource (R1) appartenant à un Propriétaire des Ressources (OR1) et une autre Ressource (R2) appartenant à un Propriétaire des Ressources (OR2) seraient toutes deux accessibles aux deux Propriétaires des Ressources (OR1) et (OR2). Une solution plus large à ce problème, couvrant les Terminaux (E) qui n'appartiennent pas au Propriétaire des Ressources (OR), consiste à mettre en œuvre un procédé où les Terminaux (E) sont sous le contrôle d'un Tiers de Confiance (TP), en utilisant potentiellement une Gestion Unifiée des Terminaux (UEM). Le Tiers de Confiance (TP) pourrait certifier la Posture de Sécurité (SP) au Propriétaire des Ressources (OR) en accédant aux Données du Terminal (ED) tout en garantissant à l'Utilisateur du Terminal (EU) que les Données du Terminal (ED) ne sont jamais exposées au Propriétaire des Ressources (OR). Cependant, lors de l'utilisation d'un tel Tiers de Confiance (TP), l'accès direct aux Données du Terminal (ED) par le Tiers de Confiance (TP) présente toujours un degré élevé de risque pour la vie privée ou la confidentialité de l'Utilisateur du Terminal (EU). Une solution pour atténuer les risques pour la confidentialité consisterait à effectuer la certification de la Posture de Sécurité (SP) au sein du Terminal (E) lui-même. Cependant, les garanties offertes par l'utilisation du Terminal (E) pour l'analyse de sa propre sécurité sont très faibles. En effet, un tel procédé serait extrêmement facile à falsifier, en particulier dans un scénario où le Terminal (E) n'appartient pas au Propriétaire des Ressources (OR). Certaines techniques de l'art antérieur sont décrites dans US20220329585A1, US20220321362A1 et US20190199530A1. L'invention a pour but de fournir un procédé et un système améliorés pour la certification à distance par un Propriétaire de Ressources (OR) de l'État (S) de tout Terminal (E), en particulier des Terminaux (E) qui sont sous le contrôle exclusif de l'Utilisateur du Terminal (EU) et non gérés par la Gestion Unifiée des Terminaux (UEM) et donc non approuvés par le Propriétaire des Ressources (OR). A cet effet, l'invention concerne un procédé pour certifier à distance l'État (S) d'un Terminal (E) à partir d'un Serveur (B), impliquant un Orchestrateur de Terminaux (EO) et un Validateur de Terminaux (EV) pour attester de la Plausibilité (P) de l'État (S), dans lequel : ▪ le Validateur de Terminaux (EV) est distinct de l'Orchestrateur de Terminaux (EO), ▪ l'État (S) est basé sur une série de Validations d'État (SVi) et une Fonction d'État (SF), telles que S = SF (SVi), ▪ l'État (S) est connu du Serveur (B) et du Terminal (E), ▪ la Fonction d'État (SF) est connue du Serveur (B) et du Terminal (E), ▪ la série de Validations d'État (SVi) sont inconnues du Serveur (B) mais connues du Terminal (E), et dans lequel le procédé comprend une étape de vérification de la Plausibilité (P) de l'État (S) avec les conditions suivantes : ▪ la Plausibilité (P) représente une analyse des informations au sein du Terminal (E) qui soutient l'exactitude de l'État (S), ▪ la Plausibilité (P) est connue du Serveur (B) via l’Orchestrateur de Terminaux (EO), ▪ la Plausibilité (P) est basée sur une série de Validations de Plausibilité (PVj) et une Fonction de Plausibilité (PF), telles que P = PF (PVj), ▪ la Fonction de Plausibilité (PF) et les Validations de Plausibilité (PVj) sont mises à jour de façon dynamique, ▪ Les Validations de Plausibilité (PVj) individuelles sont inconnues du Serveur (B), pour protéger la confidentialité du Terminal (E), ▪ la Fonction de Plausibilité (PF) est inconnue du Terminal (E), pour rendre difficile la falsification de la Plausibilité (P), ▪ la Fonction de Plausibilité (PF) est calculée par l'Orchestrateur de Terminaux (EO), ▪ les Validations de Plausibilité (PVj) sont calculées par le Validateur de Terminaux (EV) sur la base d'une série de Données de Terminal (ED) inconnues de tout composant du système à l'exception du Terminal (E). Grâce à l'invention, la certification de l'État (S) est possible pour n'importe quel Terminal (E), par exemple la Posture de Sécurité (SP) des Terminaux (E) définie par l'État (S), notamment les Terminaux (E) qui sont sous le contrôle exclusif de l'Utilisateur du Terminal (EU), sans Gestion Unifiée des Terminaux (UEM) ou tout autre contrôle par le Propriétaire des Ressources (OR). Pour ce faire, nous utilisons un Tiers de Confiance (TP) qui certifie l'État (S) sans accéder directement aux données du Terminal (ED). La certification dynamique de la Posture de Sécurité (SP) est basée sur le calcul dynamique d'une Plausibilité (P) basée sur des Validations de Plausibilité (PV) effectuées sur des Données de Terminal (ED). Les Validations de Plausibilité (PV) sont effectuées sur des Validateurs de Terminaux (EV), s'exécutant sur des Hôtes (H) sécurisés, incluant éventuellement d'autres Terminaux (E) dont la Posture de Sécurité (SP) a été préalablement certifiée comme satisfaisante et que nous définissons comme Terminaux Participants (PE). Les Validateurs de Terminaux (EV) n'ont accès qu'à une version chiffrée des Données du Terminal (ED) pour garantir la confidentialité du Terminal (E). Les terminaux (E) n'ont aucune connaissance des informations extraites et des Validations de Plausibilité (PV) effectuées pour garantir la sécurité. Le Tiers de confiance (TP) qui orchestre les Validations de Plausibilité (PV) n'a pas accès aux Données du Terminal (ED) mais a accès aux résultats des Validations de Plausibilité (PV). Le Tiers de Confiance (TP) peut être audité pour s'assurer qu'aucune information privée et non autorisée puisse être déduite des Validations de Plausibilité (PV). Selon d'autres avantages non obligatoires de l'invention, un tel procédé peut incorporer une ou plusieurs des caractéristiques suivantes : - Le Validateur de Terminaux (EV) est composé d'un ou plusieurs Terminaux Participants (PE) orchestrés par l'Orchestrateur de Terminaux (EO), dont l'État (S) a été préalablement certifié selon la méthode décrite ci-dessus. - La Fonction de Plausibilité (PF) et les Validations de Plausibilité (PVj) sont gardées secrètes par l'Orchestrateur de Terminaux (EO) mais peuvent être auditées pour leur conformité à la confidentialité du Terminal (E). - La Fonction de Plausibilité (PF) et les Validations de Plausibilité (PVj) sont définies dynamiquement par des opérateurs humains et/ou des composants logiciels. - Les Validations de Plausibilité (PVj) sont calculées à l'aide, d'une part, d'une série de Données de Terminal (EDj) capturées selon une série de Spécifications de Données de Terminal (EDSj) sur le Terminal (E) et, d'autre part, d'une série de Paramètres (PAk) connus uniquement de l'Orchestrateur de Terminaux (EO) pour rendre difficile la falsification de la Plausibilité (P), dans lesquelles : ▪ PVj = PFj (EDj, PAk), ▪ la série de Spécifications de Données de Terminal (EDSj) et la série de Paramètres (PAk) peuvent être auditées pour leur conformité à la confidentialité du Terminal (E). - Le Validateur de Terminaux (EV) n'a accès qu'à une version chiffrée des Données du Terminal (EDj) et à une version chiffrée de la série de Paramètres (PAk). La Fonction de Plausibilité PFj (EDj, PAk) est une fonction prenant en charge les opérations sur des paramètres chiffrés tels que ceux basés sur le chiffrement totalement homomorphe ou le calcul multipartite. - Les Validations de Plausibilité PVj = PF (EDj, PAk) et la Fonction de Plausibilité (PF) est une fonction renvoyant un Résultat (RE) et un historique de calcul de validation (VCH) qui peut être utilisé pour le calcul avec état de la Fonction de Plausibilité (PF) où l'historique de calcul de validation (VCH) est envoyé à l'Orchestrateur de Terminaux (EO) et agrégé à la série de paramètres (PAk) sous une forme chiffrée et lisible uniquement par le(s) Validateur(s) de Terminal (EV). - Les Validations de Plausibilité PVj = PF (EDj, PAk) et la Fonction de Plausibilité (PF) est une fonction permettant le filtrage par motif préservant la confidentialité des Données de Terminal (EDj) et la série de paramètres (PAk) sont des motifs à faire correspondre, où le(s) Validateur(s) de Terminaux (EV) n'ont accès qu'à la version chiffrée des Données de Terminal (EDj) et à une version chiffrée de la série de paramètres (PAk). L'invention concerne également un système pour certifier à distance l'État (S) d'un Terminal (E) à partir d'un Serveur (B), le système comprenant un Orchestrateur de Terminaux (EO) et au moins un Validateur de Terminaux (EV) pour attester de la plausibilité (P) de l'État (S), dans lequel : ▪ le Validateur de Terminaux (EV) est distinct de l'Orchestrateur de Terminaux (EO), ▪ l'État (S) est basé sur une série de Validations d'État (SVi) et une Fonction d'État (SF), telles que S = SF (SVi), ▪ l'État (S) est connu du Serveur (B) et du Terminal (E), ▪ la Fonction d'État (SF) est connue du Serveur (B) et du Terminal (E), ▪ les séries de Validations d'État (SVi) sont inconnues du Serveur (B) mais connues du Terminal (E), et dans lequel le système est configuré pour vérifier la Plausibilité (P) de l'État (S) avec les conditions suivantes : ▪ la Plausibilité (P) représente une analyse des informations au sein du Terminal (E) qui soutient l'exactitude de l'État (S), ▪ la Plausibilité (P) est connue du Serveur (B) via l’Orchestrateur de Terminaux (EO), ▪ la Plausibilité (P) est basée sur une série de Validations de Plausibilité (PVj) et une Fonction de Plausibilité (PF), telles que P = PF (PVj), ▪ la Fonction de Plausibilité (PF) et les Validations de Plausibilité (PVj) sont mises à jour de façon dynamique, ▪ Les Validations de Plausibilité (PVj) individuelles sont inconnues du Serveur (B), pour protéger la confidentialité du Terminal (E), ▪ la Fonction de Plausibilité (PF) est inconnue du Terminal (E), pour rendre difficile la falsification de la Plausibilité (P), ▪ la Fonction de Plausibilité (PF) est calculée par l'Orchestrateur de Terminaux (EO), ▪ les Validations de Plausibilité (PVj) sont calculées par le Validateur de Terminaux (EV) sur la base d'une série de Données de Terminal (ED) inconnues de tout composant du système à l'exception du Terminal (E). L'invention va maintenant être expliquée en correspondance avec les figures annexées, à titre d'exemples illustratifs, sans restreindre l'objet de l'invention. Dans les figures annexées : est un schéma montrant l'architecture d'une solution complète utilisant l'invention pour certifier une Posture de Sécurité (SP) et l’exposer à des solutions de Contrôle d'Accès Conditionnel (CAC). est un schéma montrant les relations de confiance entre les composants du système. est un schéma montrant l'architecture du système et la mise en œuvre du procédé. est un schéma montrant la connaissance propre à chacun des composants. est un schéma montrant un exemple de mise en œuvre de la méthode pour calculer une Posture de Sécurité (SP) où une Plate-forme de Protection des Terminaux (EPP) fait partie des politiques de sécurité et où la Plausibilité (P) de (SP) comprend une vérification des artefacts générés par une activité normale de la Plate-forme de Protection des Terminaux (EPP). DESCRIPTION DÉTAILLÉE DE QUELQUES MODES DE RÉALISATION La illustre une solution complète utilisant l'invention pour certifier une Posture de Sécurité (SP) et l'exporter vers une solution de Contrôle d'Accès Conditionnel (CAC) associée aux Ressources (R). La solution utilise un Agent Logiciel (SA) exécuté sur le Terminal (E) composé d'une application et d'un assistant système associé. L'invention rend possible la certification d'un État (S) de n'importe quel Terminal (E), par exemple une Posture de Sécurité (SP) du Terminal (E), en particulier des Terminaux (E) qui sont sous le contrôle exclusif de l'Utilisateur du Terminal (EU), et donc non gérés par une Gestion Unifiée des Terminaux (UEM). Nous définissons les exigences clés de la solution comme suit : Une garantie de sécurité du point de vue d'un Propriétaire de Ressource (OR), une solution qui offre au moins le même degré de sécurité pour la certification de l'État (S) qu'une solution permettant l'accès dynamique et arbitraire aux Données du Terminal (ED) comme avec l'utilisation d'une Gestion Unifiée des Terminaux (UEM) ; Une garantie de confidentialité du point de vue de l'Utilisateur du Terminal (EU) une solution qui limite l'extraction d'informations du Terminal (E) par n’importe quel tiers à une information très simple comme un booléen ou un entier permettant de définir que la sécurité du Terminal (E) attendue par le Propriétaire des Ressources (OR) a ou n'a pas été atteinte, et une solution qui garantit qu'aucun de ses composants ne peut accéder directement aux Données du Terminal (ED) et qui limite les informations collectées en interne à des éléments bien définis et ne pouvant contenir d'Informations Personnelles Identifiables (PII) ; L'architecture permettant de combiner ces deux ensembles d’exigences est définie comme l’Arbitre Numérique de Terminaux (EDA). L'Arbitre Numérique de Terminaux (EDA) certifie dynamiquement l'État (S) au Propriétaire des Ressources (OR) via un Serveur (B) sans qu'aucun composant de son architecture ne puisse accéder directement aux Données du Terminal (ED) à l'exception du Terminal (E) et avec un contrôle et une auditabilité stricts des informations extraites des Données du Terminal (ED). Par conséquent: - l'Arbitre Numérique de Terminaux (EDA) est approuvé par le Serveur (B) pour la sécurité ; - l'Arbitre Numérique de Terminaux (EDA) est approuvé par le Terminal (E) pour la confidentialité. En outre, l'Arbitre Numérique de Terminaux (EDA) prend en charge un modèle décentralisé dans lequel d'autres Terminaux Participants (PE) peuvent contribuer au processus de certification de l'État (S) pour un Terminal (E) donné. Les avantages de l'invention sont : - Elle fonctionne sur tous les terminaux (E), possédés ou non par le Propriétaire des Ressources (OR) et respecte pleinement la confidentialité et la vie privée, permettant une utilisation hybride personnelle/professionnelle ou multi-employeurs du Terminal (E). - Elle permet la plus grande fiabilité de la certification de l'État(S). En particulier, elle peut aller plus loin que toute autre solution existante en termes d'utilisation des Données de Terminal (ED) pour effectuer la certification de l'État (S) sans aucun risque pour la vie privée de l'Utilisateur du Terminal (EU). Par exemple, l'invention peut calculer une Posture de Sécurité (SP) qui s'appuie sur des Données de Terminal (ED) qui couvrent des informations provenant d'un environnement personnel dans lequel le Terminal (E) serait utilisé, telles que l'état lié à la sécurité d'autres éléments dans le Réseau Local (LAN) du Terminal (E). Il est impossible d'y parvenir avec les solutions de Gestion Unifiée des Terminaux (UEM) sans que le Propriétaire de la Ressource (OR) ne s'expose à des responsabilités en matière de confidentialité et de vie privée. Lors de l'utilisation des Terminaux Participants (PE), l'invention minimise les exigences de calcul et de stockage sur les composants centraux du système en utilisant la puissance de calcul et le stockage des Terminaux Participants (PE) et augmente la capacité de scalabilité de la solution. Architecture de la solution L'Arbitre Numérique de Terminaux (EDA) comprend un composant Orchestrateur de Terminaux (EO) chargé de coordonner un ou plusieurs composants Validateur de Terminaux (EV) où : - L'Orchestrateur de Terminaux (EO) maintient une liste de Terminaux (E) et de Validateurs de Terminaux (EV). - L'Orchestrateur de Terminaux (EO) supervise la définition des Spécifications de Données de Terminal (EDS) décrivant les Données de Terminal (ED) à extraire du Terminal (E) et les Validations de Plausibilité (PV) à effectuer sur celles-ci. - L'Orchestrateur de Terminaux (EO) et les Validateur de Terminaux (EV) ne sont jamais en mesure d'accéder directement aux Données du Terminal (ED). - Seul le Terminal (E) est en mesure d'accéder directement aux Données du Terminal (ED). - L'Orchestrateur de Terminaux (EO) est le seul composant capable de déduire des informations à partir des Données du Terminal (ED) sur la base du résultat des Validations de Plausibilité (PV). - Les informations déduites par l'Orchestrateur de Terminaux (EO) à partir du résultat des Validations de Plausibilité (PV) sont limitées et strictement contrôlables et auditables. Les figures 2 à 5 montrent le système, comprenant l'Arbitre Numérique de Terminaux (EDA), le Serveur (B) et le Terminal (E). L'Arbitre Numérique de Terminaux (EDA) comprend un Orchestrateur de Terminaux (EO) et des Validateurs de Terminaux (EV), y compris un Validateur Initial de Terminal (EVB) et un Terminal Participant (PE). En particulier, la illustre les relations de confiance entre les composants du système ; la illustre l'architecture du système et la mise en œuvre du procédé ; la illustre la connaissance des composants ; et la illustre un exemple de mise en oeuvre du procédé, avec une Plateforme de Protection des Terminaux (EPP). Les Validateur de Terminaux (EV) peuvent être implémentés dans n'importe quel Hôte (H), c'est-à-dire un Terminal Participant (PE) ou un Validateur Initial de Terminal (EVB), dont la sécurité a été analysée et peut être garantie. Nous définissons un Validateur Initial de Terminal (EVB) comme une ou plusieurs instances d'un Validateur de Terminaux (EV) satisfaisant à ces exigences en utilisant des composants sécurisés et contrôlés exploités dans le cadre de l'Arbitre Numérique de Terminaux (EDA). Nous utilisons des Terminaux Participants (PE) dont la Posture de Sécurité (SP) a été précédemment certifiée comme d'autres types d'instances de Validateurs de Terminaux (EV) répondant à ces exigences. Nous interdisons le Terminal (E) comme Validateur de Terminaux (EV) pour la certification de sa propre Posture de Sécurité (SP). Innovations détaillées de notre solution Premièrement, nous innovons dans la manière dont nous certifions l'État (S), par exemple la Posture de Sécurité (SP), du Terminal (E). L'invention pourrait s'appliquer à d'autres propriétés décrivant l'État (S) du Terminal (E) et ne se limite pas à la Posture de Sécurité (SP). Nous appliquons certains des principes de certification de données d’appareils de l'Internet des Objets (IoT) à la notion d'évaluation et de certification d'État (S) du Terminal (E). Tout comme avec les données d’appareils de l'Internet des objets (IoT), nous supposons que quel que soit le processus de capture et d'exportation des données, c'est-à-dire l'État (S) dans notre cas, il y aura toujours des possibilités de falsifier ledit processus. Nous adoptons donc le principe des Validations de Plausibilité (PV) pour confirmer la validité des données mesurées. En d'autres termes, au lieu de faire confiance à l'État (S) tel que fourni par le Terminal (E), nous effectuons des Validations de Plausibilité (PV) supplémentaires, prenant la forme d'une valeur de Plausibilité (P) résultant de la capture d'informations du Terminal (E) dans le but de confirmer ou d'infirmer que l'État (S) est valide et n'a pas été falsifié. Deuxièmement, nous innovons en supprimant les risques associés à un Tiers de Confiance (TP) accédant directement aux Données du Terminal (ED) dans le cadre de la Validation d'État (SV). Pour ce faire, nous utilisons un Orchestrateur de Terminaux (EO) qui : - N'accède jamais directement aux Données de Terminal (ED) en utilisant des Validateurs de Terminaux (EV) externes. - Ne peut pas non plus dériver d'informations privées ou confidentielles non autorisées telles que des Informations Personnelles Identifiables (PII) du Terminal (E) par un contrôle strict et une auditabilité de son comportement, en particulier dans la définition et l'orchestration des Spécifications de Données du Terminal (EDS) et des Validations de Plausibilité (PV). Troisièmement, nous innovons en utilisant des techniques telles que le chiffrement totalement homomorphe ou le calcul multipartite ou le filtrage par motif préservant la confidentialité pour effectuer des Validations de Plausibilité (PV) dans les Validateurs de Terminaux (EV) sans que les Données de Terminal (ED) ne soient directement accessibles par les Validateurs de Terminaux (EV). Nous résolvons le problème suivant du point de vue mathématique. Nous définissons l'État (S) du Terminal (E) comme une série de Validations d'État (SVi). Nous définissons la Plausibilité (P) comme une autre série de Validations de Plausibilité (PVj) donnant des indications sur la validité de l'État (S), pour sa consommation par le Propriétaire de la Ressource (OR) pour décider des droits du Terminal (E) à l’accès aux Ressources (R). Calcul de l'État (S) : le Propriétaire de la Ressource (OR) a besoin de connaître l'État (S) du Terminal (E). Dans sa forme la plus simple, l'État (S) est un booléen. Par exemple, une Posture de Sécurité (sécurisé / non-sécurisé), résultant de l'évaluation d'une Fonction d'État (SF) à l'aide d'une série de Validations d'État (SVi) booléennes exprimant la mise en œuvre de politiques de sécurité spécifiques sur le Terminal (E). Dans cet exemple, ce booléen serait utilisé pour autoriser ou refuser l'accès à la Ressource (R). Mais l'État (S) peut également être un nombre entier pour permettre, par exemple, d'accorder un contrôle d'accès non binaire (nivelé) à la Ressource (R). Calcul de la Plausibilité (P) : le Propriétaire de la Ressource (OR) a besoin de connaître la Plausibilité (P) de l'État (S). Dans sa forme la plus simple, la Plausibilité (P) est un booléen (plausible / non plausible). Mais la Plausibilité (P) peut aussi être un entier. La Plausibilité (P) est calculée en extrayant plusieurs Données de Terminal (EDj) du Terminal (E) et en appliquant des Validations de Plausibilité (PVj) aux Données de Terminal (EDj). Par exemple, la Plausibilité (P) peut être une Fonction de Plausibilité (FP) avec des Validations de Plausibilité (PVj), comme suit : P = PF (PVj) et PVj = PF2 (EDj), où PF2 est une fonction effectuant une Validation de Plausibilité (PVj) sur les Données de Terminal (Edj). Sécurité : le Propriétaire de la Ressource (OR) ne fait pas confiance au Terminal (E), pour la sécurité de la Ressource (R). Nous avons besoin que l'État (S) soit calculé par le Terminal (E) et exposé à l'Utilisateur du Terminal (EU) en même temps pour des raisons de correction éventuelle (par exemple en demandant à l'Utilisateur du Terminal (EU) de changer une configuration spécifique du Terminal (E) afin de répondre à une politique de sécurité requise), tout en étant vérifiable par le Propriétaire de la Ressource (OR) au travers d'une Plausibilité (P). Nous voulons assurer la protection contre la falsification de la Plausibilité (P) par le Terminal (E) en rendant la Fonction de Plausibilité (PF) et les Validations de Plausibilité (PVj) inconnues du Terminal (E). Confidentialité : l'Utilisateur du Terminal (EU) ne fait confiance à aucun tiers pour la confidentialité des Données du Terminal (ED), et nous voulons interdire l'extraction d'informations non autorisés du Terminal (E) ni par le Propriétaire de la Ressource (OR), ni par l'Arbitre Numérique de Terminaux (EDA), ni par le Serveur (B). Dans le calcul de l'État (S), nous utilisons le Serveur (B) : - Nous exposons explicitement à l'Utilisateur du Terminal (EU) la série de Validations d'État (SVi) composant un État (S) donné. - Nous interdisons les modifications dynamiques de la liste des Validations d'État (SVi) qui permettraient de déduire des informations non désirées du Terminal (E) en utilisant un contrôle strict des changements. - Nous rendons les validations d'état (SVi) inconnues du Propriétaire de la Ressource (OR) et du Serveur (B), tandis que la Fonction d'État (SF) est connue à la fois du Propriétaire de la Ressource (OR) et du Terminal (E). Dans le calcul de la Plausibilité (P), nous utilisons l'Arbitre Numérique de Terminaux (EDA) : ◦ Nous voulons que la Plausibilité (P) soit calculée par l'Arbitre Numérique des Terminaux (EDA) d'une manière qui utilise mais n'expose jamais les Données du Terminal (ED) à un quelconque tiers, y compris le Propriétaire de la Ressource (OR), tous les composants de l'Arbitre Numérique de Terminaux (EDA) ou le Serveur (B). ◦ Nous voulons que les Validations de Plausibilité (PVj) ne puissent jamais permettre de déduire des informations non autorisées du Terminal (E), en particulier, mais sans s'y limiter, des Informations Personnelles Identifiables (PII) en empêchant les Validations de Plausibilité (PV) de porter sur des informations non autorisées grâce à un contrôle strict de leur définition. Description détaillée de la technologie Nous introduisons un nouveau concept de Serveur (B) dans le cloud permettant de définir, d'évaluer dynamiquement et de certifier l'État (S) d'un Terminal (E). Le service utilise une approche décentralisée qui respecte à la fois la confidentialité en évitant toute divulgation de Données de Terminal (ED) ou en déduisant des informations non autorisées telles que des Informations Personnelles Identifiables (PII) au Serveur (B) ou à tout autre tiers et offre une sécurité renforcée basée sur des Validations de Plausibilité (PV) dynamiques effectués par les Terminaux Participants (PE), dont l'État (S) a été préalablement validé. Lors de la représentation d'une Posture de Sécurité (SP), l'état certifié (S) peut être utilisé par exemple pour accorder ou refuser dynamiquement en toute sécurité l'accès à des Ressources (R) particulières. Définition et calcul d'un État (S) A titre d'exemple, pour évaluer la Posture de Sécurité d'un Terminal (E) nous définissons un État (S) du Terminal (E) en considérant une combinaison de différentes Validations d'État (SVi) vérifiant l'existence ou l'absence de logiciels ou de configurations spécifiques : - Selon des « modèles de menaces » standardisés couvrant par exemple : ▪ État opérationnel des éléments de la pile de sécurité (Plateforme de Protection des Terminaux (EPP), pare-feux du Terminal (E)…) ▪ État spécifique fortifié de la configuration et des services du Système d'Exploitation des Terminaux (EOS) ▪ Présence de configurations/services du Système d'Exploitation des Terminaux (EOS) qui mettraient en danger la sécurité et/ou la confidentialité ▪ Attestation à distance du Système d'Exploitation des Terminaux (EOS) et du chargeur d'amorçage du Terminal (E), comme avec l'attestation à distance du système d'exploitation Apple - Prise en compte de plusieurs dimensions, par exemple : ▪ Applications : comprend les autorisations d'application, la signature correcte des applications, l'existence d'une Plate-forme de Protection des Terminaux (EPP) installée couvrant les menaces applicatives… ▪ Réseau : inclut l'état des pare-feux des Terminaux (E), la visibilité du Terminal (E) sur le Réseau Local (LAN) comme avec l'activation de la réponse au ping… ▪ Identifiants : activation de la connexion automatique sans mot de passe, existence du verrouillage de l'écran sans mot de passe… ▪ Intégrité du système : Gestion Unifiée des Terminaux (UEM) installée et d'autres outils d'administration tiers, menaces facilitant la falsification comme les trousse administrateur pirate… ▪ Services système : menaces liées aux services système (accès à distance activé…) - Tirant parti des normes telles que définies par exemple : ▪ Par le Center for Internet Security (CIS) des États-Unis d'Amérique (USA) ▪ Et d'autres instances gouvernementales (NIST aux USA, ANSSI en France…) - Qui peut être personnalisé pour correspondre à des profils spécifiques ou à des exigences imposées par les différents Propriétaires de Ressources (OR). - Qui se fait de manière normalisée (où le même État (S) a la même signification sur différents Systèmes d'Exploitation des Terminaux (EOS)) L'État (S) est calculé localement sur le Terminal (E) et est défini comme un score et ses composants, c'est-à-dire une série de Validations d'État (SV) binaires de divers criticités/poids. Le score peut être représenté sous la forme d'un entier et les validations (SV) peuvent être représentées sous la forme d'un vecteur de booléens avec des poids. Sécurité grâce aux Validations de Plausibilité (PV) dynamiques Les Données de Terminal (ED) sont rassemblées localement sur le Terminal (E) sous la forme d'une liste de séquences d'octets (chaînes, binaires, hachages...) extraites d'emplacements spécifiques définis comme Spécifications de Données de Terminal (EDS) décrivant des portions de mémoire, de disque ou d'autres ressources du Terminal (E) Des fonctions mettant en œuvre diverses vérifications sur les Données de Terminal (ED) sont utilisées pour calculer la Plausibilité (P). Les vérifications comprennent entre autres : - La vérification de l'intégrité des dépendances utilisées dans le calcul du score. Par exemple, en considérant cette vérification sous macOS : "defaults read /Library/Preferences/com.apple.alf globalstate | grep 0" ◦ Obtention du hachage, du chemin et des droits d'accès de /bin/defaults (pour les tester par rapport aux propriétés "normales") ◦ Obtention des droits d'accès de /Library/Preferences/com.apple.alf (pour les tester par rapport aux propriétés "normales") ◦ Obtention du hachage, du chemin et des droits d'accès du binaire de grep (pour les tester par rapport aux propriétés "normales") ◦ Obtention du binaire complet de /Library/Preferences/com.apple.alf (pour le tester par rapport au contenu « normal ») - Analyse de l'état de fonctionnement des éléments de la pile de sécurité. Par exemple: ◦ Le binaire Plateforme de Protection des Terminaux (EPP) est présent ◦ Un journal donné affiche le contenu qui démontre qu'il est actif ◦ Une injection d'une menace test montre une réponse valide - Détection explicite de falsification. Par exemple: ◦ SSH est désactivé, mais des artefacts récents d'accès SSH à distance sont présents dans les journaux ◦ La protection de l'intégrité du système a été désactivée et est maintenant activée, mais aucune action de correction par l’utilisateur n'a eu lieu - Un modèle de menace définissant la manière de calculer l'État (S) et la Plausibilité (P) est stocké dans le Serveur (B) avec deux structures : ◦ Les Validations d'État (SV) et la logique définissant l'État (S) (le modèle « public »). Le modèle public est présent sur le Terminal (E) (et le Serveur (B)) sous une forme lisible par l'utilisateur pour son information et la correction éventuelle de problèmes. Ce modèle n'est pas censé changer fréquemment et est basé sur des profils standards. ◦ La logique définissant la Plausibilité (P) et les Validations de Plausibilité (PV) à appliquer aux Données du Terminal (ED) (le modèle « privé »). Nous l'appelons le Modèle de Plausibilité Dynamique (DPM), qui est : ▪ présent sur un élément de confiance de l’Orchestrateur de Terminaux (EO) de l'Arbitre Numérique de Terminaux (EDA) et est gardé secret pour assurer la sécurité des Ressources (R) du Propriétaire de la Ressource (OR) ; ▪ constamment modifié par un processus opérationnel comprenant des humains et/ou des logiciels assistants afin de garder un avantage sur les attaquants potentiels. Des Validations de Plausibilité (PV) supplémentaires peuvent être effectuées par l'Arbitre Numérique de Terminaux (EDA) dans d’autres domaines (comme on le voit dans les plateformes Identity as a Service (IaaS) comme Azure AD). Par exemple, ces Validations de Plausibilité (PV) supplémentaires pourraient utiliser la réputation de l'adresse IP (comme calculée avec https://talosintelligence.com/reputation_center/ ). Propagation de groupe de l'État (S) L'État (S) et la Plausibilité (P) du Terminal (E) peuvent : - prendre en compte l'État (S) ou la Plausibilité (P) d'autres Terminaux (E) avec lequel il serait en communication; - être calculé sur la base de l'État (S) ou de la Plausibilité (P) d'autres terminaux (E) dans le même Réseau Local (LAN) ; - être calculé sur la base de l'État (S) ou de la Plausibilité (P) des autres Terminaux (E) participant à la même application ou au même projet/groupe. Confidentialité en utilisant la décentralisation et le chiffrement. La confidentialité est obtenue en contrôlant strictement les informations qui peuvent être extraites des Données de Terminal (ED) pour calculer l'État (S) et la Plausibilité (P). Chaque Terminal (E) inscrit dans le système a reçu un certificat d'appareil unique (avec sa clé privée) par le Serveur (B). L'inscription se fait de manière sécurisée. - En utilisant un certificat de confiance pour l'authentification initiale, par exemple, sur la base d'un mécanisme tel que l’"Allocation par revendications" d'AWS, ou en utilisant le protocole d'inscription de certificat simple (SCEP) pour communiquer les détails des certificats avec une infrastructure à clé publique (PKI). - En exigeant des garanties initiales suffisantes de sécurité du Terminal (E), par exemple en exigeant une Posture de Sécurité (SP) initiale suffisante représentée par un État (S). Chaque Terminal (E) peut distribuer les Données de Terminal (ED) aux Validateurs de Terminaux (EV) via l'Orchestrateur de Terminaux (EO), sous une forme préservant la confidentialité. Les Données de Terminal (ED) sont chiffrées à l'aide d'un chiffrement homomorphe ou de tout autre type de forme chiffrée prenant en charge le calcul des Validations de Plausibilité (PV) sans qu'il ne soit nécessaire d'accéder aux versions en clair des Données de Terminal (ED). L'adresse IP d'origine et l'identité du Terminal (E) peuvent être masquées à l'aide de relais intermédiaires, tels que l'Orchestrateur de Terminaux (EO). Pour calculer l'État (S), nous utilisons une communication sécurisée avec le Serveur (B) où : - le Terminal (E) reçoit d'un Serveur (B) une requête correspondante à un modèle de menace donné et un Nonce Cryptographique de Posture (SPN) - l'État (S) est calculé localement sur le Terminal (E) selon le modèle de menace - pour valider l'État (S), on s'appuie directement sur le Serveur (B). Optionnellement, la communication de l'État (S) au Serveur (B) peut être sécurisée avec un modèle de plateforme sécurisée (TPM) si disponible. Optionnellement, une certaine protection contre une éventuelle falsification de la transmission de l'État (S) par le Terminal (E) peut être assurée en vérifiant sa cohérence par rapport à une version anonymisée de ses composants. Par exemple, en tirant parti du fait que l'État (S) soit un entier et que les Validations d'État (SV) associées soient une série de booléens de différents poids et utilisant un chiffrement homomorphe : - Utilisation du chiffrement totalement homomorphe (FHE) d'une matrice binaire ; - Où l'État (S) et ses propriétés sont transmis comme une seule propriété signée par la clé privée d'un certificat d'appareil et chiffrée de manière homomorphe - L'État (S) est recalculé à partir de ses propriétés dans le Serveur (B) sur les propriétés chiffrées et comparé avec le score reçu. - Si le score recalculé est différent du score transmis, l'État (S) est invalidé Pour calculer la Plausibilité (P), nous utilisons une approche décentralisée impliquant l'Arbitre Numérique de Terminaux (EDA) où : - À la demande de l'Orchestrateur de Terminaux (EO) et conformément aux Spécifications de Données de Terminal (EDS), le Terminal (E) collecte localement les Données du Terminal (ED), sous la forme d'une liste de chaînes, de binaires ou de hachages à vérifier, qui représentent l’ensemble de paramètres à appliquer à une Validation de Plausibilité (PV) donnée. Il associe un Nonce Cryptographique de Données (EDN) à chaque Données du Terminal (ED). Le Terminal (E) distribue les Données de Terminal (ED) et le Nonce Cryptographique de Données (EDN) ainsi que le Nonce Cryptographique de Posture (SPN) à un ou plusieurs Validateurs de Terminaux (EV) via l'Orchestrateur de Terminaux (EO). En option, une donnée de Terminal (ED) donnée peut être envoyée à plusieurs Validateurs de Terminaux (EV) afin de réaliser une validation supplémentaire redondante. La communication entre pairs se fait comme suit : - L’Orchestrateur de Terminaux (EO) agit comme un point de rendez-vous pour les communications pair-à-pair. - Lors de la communication avec un Validateur de Terminaux (EV) donné, le Terminal (E) chiffre sa communication à l'aide de la clé publique du Validateur de Terminaux (EV) qui rendra tout message compréhensible uniquement par le Validateur de Terminaux (EV). L’Orchestrateur de Terminaux (EO) ne peut pas lire ou stocker les Données de Terminal (ED) car il ne fait que les transmettre dans un flux chiffré qu'il ne peut pas décoder. Les Données de Terminal (ED) sont également chiffrées au sein du flux chiffré entre le Terminal (E) et les Validateurs de Terminaux (EV) sous une forme qui prend en charge des mécanismes tels que le chiffrement totalement homomorphe, le calcul multipartite ou le filtrage par motif préservant la confidentialité où : - Les Validateurs de Terminaux (EV) obtiennent de l’Orchestrateur de Terminaux (EO) les Validations de Plausibilité (PV) chiffrées associées à appliquer aux Données de Terminal chiffrées (ED). - Et sans aucune possibilité pour les Validateur de Terminaux (EV) de déchiffrer les Données du Terminal (ED). - Et sans aucune possibilité pour les Validateur de Terminaux (EV) de déchiffrer les Validations de Plausibilité (PV). - Et où le résultat des Validations de Plausibilité (PV) n'est connu que des Validateurs de Terminaux (EV). Par exemple, les Données de Terminal (ED) et les Validations de Plausibilité (PV) sont chiffrées à l'aide de clés générées par Orchestrateur de Terminaux (EO) et communiquées de manière sécurisée au Terminal (E). Selon un autre exemple, les Données du Terminal (ED) sont chiffrés à l'aide d'une clé primaire générée par le Terminal (E) et d'une clé secondaire associée générée par le Terminal (E) et communiquée par le Terminal (E) à Orchestrateur de Terminaux (EO) pour le chiffrement des Validations de Plausibilité (PV) et où les Validations de Plausibilité (PV) chiffrées peuvent être appliquées aux Données de Terminal (ED) chiffrées. Les Validations de Plausibilité (PV) prennent les Données de Terminal (ED) comme l'un de leurs paramètres et peuvent être par exemple : - une fonction arbitraire de calcul multipartite ; - un ensemble d'opérations arithmétiques chiffrées utilisant une forme de chiffrement totalement homomorphe; - une forme chiffrée ou une expression régulière chiffrée à faire correspondre au travers d’un filtrage par motif préservant la confidentialité ; - un ensemble de paramètres chiffrés associés à une fonction et à son code. - toute combinaison de ce qui précède ; Les Validations de Plausibilité (PV) peuvent être : - Sans état : l'Historique de Calcul de Validation de Plausibilité (PVCH) n'a aucune influence sur le résultat d'une Validation de Plausibilité (PV) donnée - Avec état : l'Historique de Calcul de Validation de Plausibilité (PVCH) fait partie des paramètres d'une Validation de Plausibilité (PV) donnée. L'Historique de Calcul de Validation de Plausibilité (PVCH) peut être stocké localement sur des Validateurs de Terminaux (EV). Ou pour plus de sécurité et de flexibilité, l'Historique de Calcul de Validation de Plausibilité (PVCH) peut être envoyé avec les résultats des Validations de Plausibilité (PV) à l'Orchestrateur de Terminaux (EO) sous une forme chiffrée avec une clé connue uniquement des Validateurs de Terminaux (EV), et fera partie des paramètres d'une Validation de Plausibilité (PV) ultérieure. Les Validateurs de Terminaux (EV) effectuent une Validation de Plausibilité (PV) donnée sur des Données de Terminal (ED) données. Les résultats booléens individuels ainsi que le Nonce Cryptographique de Posture (SPN) et l'identité unique du pair sont chiffrés avec la clé privée du pair et renvoyés à l'Orchestrateur de Terminaux (EO). Une Plausibilité (P) est calculée par Orchestrateur de Terminaux (EO) en agrégeant les résultats de toutes les Validations de Plausibilité (PV) d'un Nonce Cryptographique de Posture (SPN) donné : si l'un des résultats est FAUX ou si l'un des pairs impliqués dans le calcul présente un score ou une plausibilité anormaux, la plausibilité est définie sur FAUX. Les Nonce Cryptographique de Données (EDN) sont utilisés pour vérifier que toutes les vérifications ont été effectuées au moins une fois. Fonctionnement et auditabilité des composants logiciels L'Orchestrateur de Terminaux (EO) est exploité indépendamment du Serveur (B) et assurera une capacité à maintenir la qualité de la certification de L’État (S) en utilisant la Plausibilité (P) via le Modèle de Plausibilité Dynamique (DPM) par la définition dynamique des Spécifications de Données de Terminal (EDS) et des Validations de Plausibilité (PV) dans le but de rendre difficile pour un attaquant/adversaire la falsification du calcul de l'État (S). L’Orchestrateur de Terminaux (EO) peut être utilisé par des opérateurs humains. Les opérateurs peuvent être assistés ou remplacés par des composants logiciels d'assistance, y compris - Un logiciel calculant de manière statistique les Données de Terminal (ED) et les Validations de Plausibilité (PV). - Un logiciel calculant par apprentissage automatique les Données de Terminal (ED) et les Validations de Plausibilité (PV). Le Modèle de Plausibilité Dynamique (DPM) est dynamique mais doit suivre un ensemble strict de règles définissant ce qui est possible et impossible pour les spécifications de Données de Terminal (EDS) et les Validations de Plausibilité (PV). En particulier, le Modèle de Plausibilité Dynamique (DPM) ne doit reposer sur aucune Information Personnelle Identifiable (PII). Orchestrateur de Terminaux (EO) est exploité dans un environnement dont la conformité peut être auditée, notamment : - Le code source de Orchestrateur de Terminaux (EO) peut être rendu public sans impact négatif sur la valeur de la solution. - Le Modèle de Plausibilité Dynamique (DPM) est gardé secret par Orchestrateur de Terminaux (EO) mais est strictement enregistré et peut être audité pour la conformité à ses règles. Par exemple, un audit pourrait vérifier que les Validations de Plausibilité (PV) appliquées ne reposent sur aucune Information Personnelle Identifiable (PII). L'Agent Logiciel (SA) s'exécutant sur le Terminal (E) peut faire l'objet d'un audit de conformité, en particulier le code source de l'Agent Logiciel (SA) peut être rendu public sans impact négatif sur la valeur de la solution. Amorçage de la confiance et intégration des Terminaux Participants La chaîne d'approvisionnement des composants logiciels formant l’Agent Logiciel (SA), l’Orchestrateur de Terminaux (EO) et le Validateur de Terminaux (EV) est de confiance (voir menaces et atténuation des « attaques de la chaîne d'approvisionnement de l’Arbitre Numérique de Terminaux (EDA) ») et le fonctionnement de Orchestrateur de Terminaux (EO) est de confiance (voir « fonctionnement et auditabilité des composants logiciels ») L’Orchestrateur de Terminaux (EO) est hébergé dans un emplacement sécurisé et contrôlé, comme par exemple dans une Plate-forme de Cloud Computing de Confiance (TCCP) où non seulement l'environnement d'exécution est de confiance, mais également ses dépendances d'exécution. Les Validateurs de Terminaux (EV) sont une combinaison de Validateur Initial de Terminal (EVB) et Terminaux Participants (PE), par exemple uniquement des Validateurs Initiaux de Terminal (EVB) et aucun Terminal Participant (PE), ou un ou plusieurs Validateurs Initiaux de Terminals (EVB) et plusieurs Terminaux Participants (PE). Les Terminaux Participants (PE) peuvent faire partie d'un groupe homogène basé sur une variété de critères tels que l'appartenance à la même région, organisation, les Ressources (R) auxquelles ils cherchent à accéder… Les composants Validateurs Initiaux de Terminal (EVB) sont la racine d'une chaîne de confiance pour la certification de l'État (S). Un Validateur Initial de Terminal (EVB) est hébergé dans un emplacement sécurisé et contrôlé, tel que dans une Plate-forme de Cloud Computing de Confiance (TCCP). Les Terminaux Participants (PE) éligibles sont des Terminaux Participants (PE) dont la sécurité est satisfaisante, comme par exemple un État (S) initial représentant la Posture de Sécurité (SP) du Terminal (E) a été calculée, jugée suffisant et certifié, pour garantir une intégration sécurisée en tant que Terminal Participant (PE). L'éligibilité nécessite éventuellement des éléments supplémentaires en plus d’un État (S) satisfaisant, tels qu'un Système d'Exploitation du Terminal (EOS) spécifique ou un environnement d'exécution spécifique… Lorsque les Validateurs de Terminaux (EV) incluent les Terminaux Participants (PE), la solution offre un moyen pour tout Terminal Participant (PE) d'activer et de désactiver les mécanismes d'exportation d'État (S) et de Validation de Plausibilité (PV). L'Agent Logiciel (SA) peut être installé avant l’inclusion du Terminal Participant (PE) dans le système et dans cet état passif, il calcule un État (S) standard du Terminal (E) mais sans aucune certification et donc sans communication avec d'autres éléments de l'Arbitre Numérique de Terminaux (EDA). Au cours de la phase d’intégration, si d'autres Terminaux Participants (PE) ne sont pas disponibles pour effectuer le processus de certification, la solution utilise un Validateur Initial de Terminal (EVB). Lorsqu'un Terminal Participant (PE) est intégré, il entre dans un état actif et il communique avec d'autres composants de l'Arbitre Numérique de Terminaux (EDA). À tout moment, un terminal participant (PE) peut se retirer du système et, dans ce cas, revenir à un état passif. Certification dynamique de l'État (S) et lien avec le Contrôle d'Accès Conditionnel (CAC) L'État (S) et la Plausibilité (P) sont calculés dynamiquement selon : - Les changements dans la définition de la Fonction d'État (SF) : le Propriétaire de la Ressource (OR) est censé standardiser sa Fonction d'État (SF) et un tel changement se produira essentiellement dans le cas où le Terminal (E) essaie d'accéder à une Ressource (R) différente. - Les changements dans la définition de la Plausibilité (P) : les processus d’opération de l’Orchestrateur de Terminaux (EO) sont chargés de toujours maintenir un avantage contre d'éventuels attaquants et sont donc censés mettre à jour les Validations de Plausibilité (PV) et les Spécifications de Données de Terminal (EDS) de manière fréquente. Possiblement en utilisant une approche qui réaliserait de manière aléatoire au moins une partie de ces changements pour une protection supplémentaire contre la falsification. - Une fréquence prédéfinie compatible avec les exigences de sécurité et de dynamicité de l'architecture, par exemple, toutes les 5 minutes. - L’indication d'une éventuelle falsification du Validateur de Terminaux (EV) qui a participé au calcul de la Plausibilité (P) d'un État (S) donné d’un Terminal (E). Par exemple, lorsque la Plausibilité (P) de l'État (S) du Terminal Participant (PE) en tant que Validateur de Terminaux (EV) pour le Terminal (E) devient FAUX. Lorsque l'État (S) représente la posture de sécurité du Terminal (E), l'État (S) et la Plausibilité (P) peuvent être utilisés pour accorder ou refuser l'accès aux ressources de l'entreprise à l'aide d'un mécanisme externe de Contrôle d'Accès Conditionnel (CAC). contrôlé par le Propriétaire de la Ressource (OR). - Tels que le Contrôle d'Accès Conditionnel de Microsoft Azure AD ou Microsoft Defender for Cloud Apps, Google Context Aware Access ou l'utilisation d’un certificat client d’appareil en plus de l'authentification de l'utilisateur. - La Plausibilité (P) a une valeur par défaut « non plausible » : l'État (S) sera invalidé, déclenchant par exemple un refus d'accès au contenu de l'entreprise en cas de doute avec l'État (S) via la Plausibilité (P). - En utilisant l'algorithme suivant : ▪ Lors de l'intégration dans la solution, un certificat client d’appareil est généré et associé avec l'identité unique de l'appareil. LAutorité de Certification Racine (CA) du certificat est configurée dans le Contrôle d'Accès Conditionnel (CAC). ▪ Lorsque l'utilisateur veut accéder à la Ressource (R), il présente explicitement son certificat. ▪ L'accès conditionnel est configuré comme suit : Si pris en charge par le Contrôle d'Accès Conditionnel (CAC), l’État (S) est exporté par le Serveur (B) vers le Contrôle d'Accès Conditionnel (CAC) en tant que paramètre personnalisé à utiliser avec les règles du Contrôle d'Accès Conditionnel (CAC) (comme par exemple l'attribut d'intégrité de l'appareil tel que défini dans Microsoft Endpoint Manager) . Par défaut, le Serveur (B) utilise une révocation dynamique et une nouvelle émission du certificat pour contrôler l'accès. Modèle de menace de la solution et atténuations associées Menaces et atténuation des « attaques de terminaux » Nous définissons les « attaques de terminaux » comme l’exploitation possible de failles de sécurité du Terminal (E) par un attaquant à des fins de compromission du Terminal (E) sans être remarqué par l'Arbitre Numérique de Terminaux (EDA), c'est-à-dire sans un impact négatif sur le calcul de l'État (S). Une attaque possible consiste à altérer tout Élément du Système (SE) participant au calcul de l'État (S) pour rendre (S) inexact et permettre un accès non autorisé du Terminal (E) à la Ressource (R). Nous procédons à l'atténuation : - en vérifiant l'intégrité du Système d'Exploitation du Terminal (EOS), à l'aide du service d'attestation Apple pour macOS par exemple. - en vérifiant l'intégrité des binaires logiciels associés aux Éléments du Système (SE), à l'aide d'une attestation binaire à distance par exemple. Une autre attaque possible consiste à altérer les Éléments du Système (SE) sans affecter l'intégrité des binaires logiciels associés aux Éléments du Système (SE) ni le Système d'Exploitation du Terminal (EOS), par exemple en tuant le processus d'un Élément du Système (SE) donné ou en configurant l'Élément du Système (SE) de manière malveillante. Nous procédons à l'atténuation en vérifiant la capacité des Éléments du Système (SE) à fonctionner normalement, par exemple, en vérifiant les journaux des Éléments du Système (SE) pour déterminer une activité normale, ou en injectant des charges de test contrôlées en entrée des Éléments du Système (SE) et en vérifiant les sorties attendues. Menaces et atténuation des « attaques de sécurité de l’Arbitre Numérique de Terminaux (EDA) » Nous définissons les « attaques de sécurité de l'Arbitre Numérique de Terminaux (EDA) » comme l’exploitation possible de failles de sécurité de l'Arbitre Numérique de Terminaux (EDA) par un attaquant à des fins d'accès non autorisé à une Ressource (R) en utilisant la falsification des composants de l'Arbitre Numérique de Terminaux (EDA). Une attaque possible consiste à compromettre le Terminal (E) avant l'installation de l'Agent Logiciel (SA) associé à l'Arbitre Numérique de Terminaux (EDA). Nous procédons à l'atténuation en intégrant le Terminal (E) de manière protégée, par exemple, en exigeant une Posture de Sécurité (SP) suffisante définie par un État (S) pour terminer l'intégration, ou en exigeant une attestation à distance du Système d'Exploitation du Terminal (EOS) avant installation de l'Agent Logiciel (SA). Une attaque possible consiste à altérer l'Agent Logiciel (SA) pour toujours exposer un certain État (S) au Serveur (B). Nous procédons à l'atténuation en vérifiant l'intégrité des binaires de l'Agent Logiciel (SA) à l'aide de signatures, en utilisant l'obscurcissement du code en charge du calcul de l'État (S), en utilisant la validation de l'intégrité du calcul de l'État (S) à l'aide de techniques comme l'attestation de contrôle de flux, en mettant en œuvre d'autres protections/détections de falsification dans l'application comme: - La prévention de la falsification du score en mémoire ("Immuabilité") : le score en mémoire est obscurci / chiffré (représenté en mémoire non pas comme une valeur numérique mais comme une structure complexe) - L’Utilisation d'enclaves sécurisées du système (basées sur le matériel si possible) telles que ARM TrustZone lorsque disponible - Utilisation d’appel au noyau du Système d'Exploitation du Terminal (EOS) ou de modules noyau du Système d'Exploitation du Terminal (EOS) si nécessaire Une autre attaque possible consiste à désactiver l'Agent Logiciel (SA) et à falsifier l'exportation de l'Agent Logiciel (SA) de l'État (S) vers le Serveur (B). Nous procédons à l'atténuation en utilisant des techniques connues empêchant toute attaque de rejeu et permettant la résistance à l'usurpation d'identité de Terminal (E), par exemple, en utilisant un Nonce Cryptographique de Données (EDN) comme proposé ci-dessus. Une autre attaque possible consiste à compromettre le Validateur Initial de Terminal (EVB) pour contourner les Validations de Plausibilité (PV) et falsifier la Plausibilité (P). Nous procédons à l'atténuation en ayant le Validateur Initial de Terminal (EVB) sous une opération strictement sécurisée et auditable. Une autre attaque possible consiste à compromettre un Validateur de Terminaux (EV) donné pour contourner les Validations de Plausibilité (PV) et falsifier la plausibilité (PV). Nous procédons à l'atténuation en utilisant plusieurs Validateurs de Terminaux (EV) redondants pour effectuer une Validation de Plausibilité (PV) donnée et en vérifiant la cohérence des différents résultats. De plus, lorsque le Validateur de Terminaux (EV) est un Terminal Participant (PE) dont la Posture de Sécurité (SP) a été précédemment validée via un État (S), et qu’il montre des signes de compromission par la suite (la Plausibilité (P) est FAUX), nous le marquons comme dangereux et forçons la revalidation de la Posture de Sécurité (SP) associée. Menaces et atténuation des « attaques de données de l’Arbitre Numérique de Terminaux (EDA) » Nous définissons les « attaques de données de l’Arbitre Numérique de Terminaux (EDA) » comme l’exploitation possible de failles de sécurité de l'Arbitre Numérique de Terminaux (EDA) par un attaquant à des fins d'accès non autorisé aux Données du Terminal (ED). Une attaque possible consiste à lire les Données du Terminal (ED) envoyées aux Terminaux Participants (PE). Nous procédons à l'atténuation en exportant uniquement les Données de Terminal (ED) de manière chiffrée. Nous procédons à une atténuation supplémentaire en divisant les Données de Terminal (ED) en plusieurs éléments répartis sur plusieurs Terminaux participants (PE). Une autre attaque possible consiste à prendre le contrôle de l’Orchestrateur de Terminaux (EO) pour détourner les Validations de Plausibilité (PV) par l’utilisation de paramètres permettant l'extraction d'informations non autorisées telles que des Informations Personnelles Identifiables (PII). Nous procédons à l'atténuation en mettant en œuvre un mécanisme qui enregistre tous les paramètres ou artefacts associés aux Validations de Plausibilité (PV). Menaces et atténuation des « attaques de la chaîne d'approvisionnement de l’Arbitre Numérique de Terminaux (EDA) » Nous définissons les « attaques de la chaîne d'approvisionnement de l'Arbitre Numérique de Terminaux (EDA) » comme une brèche dans le processus de création et de publication de l'un des composants critiques de l'Arbitre Numérique de Terminaux (EDA), en particulier l'Agent Logiciel (SA) exécuté sur le Terminal (E), le Validateur Initial de Terminal (EVB) et l'Orchestrateur de Terminaux (EO). Une attaque possible consiste à compromettre le code source de l'Agent Logiciel (SA), de l’Orchestrateur de Terminaux (EO) ou du Validateur Initial de Terminal (EVB) ou de leurs dépendances. Nous procédons à l'atténuation en utilisant un contrôle strict des contributions au code et en utilisant un système moderne de surveillance des menaces associées aux dépendances, comme celui fourni par la solution GitHub Enterprise. Une autre attaque possible consiste à compromettre la livraison de l'Agent Logiciel (SA) sur les terminaux (E). Nous procédons à l'atténuation en tirant parti de la distribution sécurisée comme avec Appstore d’Apple et/ou des techniques de prévention de l'usurpation de téléchargement, et/ou en tirant parti de l'attestation à distance des applications lorsqu'elle est disponible, comme par exemple, avec le service Apple App Attest. Une autre attaque possible consiste à compromettre les mises à jour du binaire de l’Orchestrateur de Terminaux (EO) ou du Validateur Initial de Terminal (EVB). Nous procédons à l'atténuation en ayant l'Orchestrateur de Terminaux (EO) et le Validateur Initial de Terminal (EVB) sous un processus d’opération strictement sécurisé et auditable. D'autres modes de réalisation non décrits ou représentés peuvent être mis en œuvre dans le cadre de l'invention, qui est définie par le jeu de revendications. Par ailleurs, les caractéristiques techniques des différents modes de réalisation peuvent être, en tout ou partie, combinées entre elles. Ainsi, le procédé et les systèmes peuvent être adaptés aux exigences spécifiques de l'application. GLOSSAIRE DES TERMES (B) Serveur (CAC) Contrôle d'Accès Conditionnel (DPM) Modèle de Plausibilité Dynamique (E) Terminal (ED) Données de Terminal (EDN) Nonce Cryptographique de Données (EDS) Spécifications des Données de Terminal (EDA) Arbitre Numérique de Terminaux (EO) Orchestrateur de Terminaux (EOS) Système d'Exploitation des Terminaux (EU) Utilisateur du Terminal (EV) Validateur de Terminaux (EVB) Validateur Initial de Terminal (H) Hôte (OR) Propriétaire des Ressources (PE) Terminal Participant (PII) Informations Personnelles Identifiables (P) Plausibilité (PF) Fonction de Plausibilité (PVj) Validations de Plausibilité (R) Ressource (SA) Agent Logiciel (S) État (SE) Éléments du Système (SF) Fonction d'État (SP) Posture de Sécurité (SPN) Nonce Cryptographique de Posture (SVi) Validations d'État (TCCP) Plate-forme de Cloud Computing de Confiance (TP) Tiers de Confiance (UEM) Gestion Unifiée des Terminaux (VCH) Historique de Calcul de Validation Une méthode pour certifier à distance l'État (S) d'un Terminal (E) à partir d'un Serveur (B), impliquant un Orchestrateur de Terminaux (EO) et au moins un Validateur de Terminaux (EV) pour attester de la Plausibilité (P) de l'État (S), où : le Validateur de Terminaux (EV) est distinct de l'Orchestrateur de Terminaux (EO), l'État (S) est basé sur une série de Validations d'État (SVi) et une Fonction d'État (SF), telles que S = SF (SVi), l'État (S) est connu du Serveur (B) et du Terminal (E), la Fonction d'État (SF) est connue du Serveur (B) et du Terminal (E), les séries de Validations d'État (SVi) sont inconnues du Serveur (B) mais connues du Terminal (E), et dans lequel le procédé comprend une étape de vérification de la Plausibilité (P) de l'État (S) avec les conditions suivantes : la Plausibilité (P) représente une analyse d’informations du Terminal (E) permettant la vérification de l'exactitude de l'État (S), la Plausibilité (P) est connue du Serveur (B) via l’Orchestrateur de Terminaux (EO), la Plausibilité (P) est basée sur une série de Validations de Plausibilité (PVj) et une Fonction de Plausibilité (PF), telles que P = PF(PVj), la Fonction de Plausibilité (PF) et les Validations de Plausibilité (PVj) sont mises à jour de façon dynamique, la Fonction de Plausibilité (PF) et les Validations de Plausibilité (PVj) sont inconnues du Serveur (B), pour protéger la confidentialité du Terminal (E), la Fonction de Plausibilité (PF) est inconnue du Terminal (E), pour rendre difficile la falsification de la Plausibilité (P), la Fonction de Plausibilité (PF) est calculée par l'Orchestrateur de Terminaux (EO), les Validations de Plausibilité (PVj) sont calculées par le Validateur de Terminaux (EV) sur la base d'une série de Données de Terminal (ED) inconnues de tout composant du système à l'exception du Terminal (E). Procédé selon la revendication 1, dans lequel le Validateur de Terminaux (EV) est composé d'un ou plusieurs Terminaux Participants (PE) orchestrés par l'Orchestrateur de Terminaux (EO), dont l'État (S) a été préalablement certifié par le procédé de la revendication 1. Procédé selon l'une quelconque des revendications 1 ou 2, dans lequel la Fonction de Plausibilité (PF) et les Validations de Plausibilité (PVj) sont gardées secrètes par l'Orchestrateur de Terminaux (EO) mais peuvent être auditées pour leur conformité à la confidentialité du Terminal (E). . Procédé selon l'une quelconque des revendications 1 à 3, dans lequel la Fonction de Plausibilité (PF) et les Validations de Plausibilité (PVj) sont définies dynamiquement par des opérateurs humains et/ou des composants logiciels. Procédé selon l'une quelconque des revendications 1 à 4, dans lequel les Validations de Plausibilité (PVj) sont calculées en utilisant, d'une part, une série de Données de Terminal (EDj) capturées selon une série de Spécifications de Données de Terminal (EDSj) sur le Terminal (E) et, d'autre part, une série de paramètres (PAk) uniquement connus de l'Orchestrateur de Terminaux (EO) pour rendre difficile la falsification de la Plausibilité (P), dans laquelle : PVj = PFj (EDj, PAk), la série de Spécifications de Données de Terminal (EDSj) et la série de Paramètres (PAk) sont disponibles pour un audit de conformité à la confidentialité du Terminal (E). Procédé selon la revendication 5, dans lequel : le Validateur de Terminaux (EV) n'a accès qu'à une version chiffrée des Données du Terminal (EDj) et à une version chiffrée de la série de Paramètres (PAk) et la Fonction de Plausibilité PFj (EDj, PAk) est une fonction prenant en charge les opérations sur des paramètres chiffrés tels que basés sur le chiffrement totalement homomorphe ou le calcul multipartite. Procédé selon la revendication 6, dans lequel les Validations de Plausibilité PVj = PF (EDj, PAk) et la Fonction de Plausibilité (PF) est une fonction renvoyant un Résultat (RE) et un Historique de Calcul de Validation (VCH) qui peut être utilisé pour un calcul avec état de la Fonction de Plausibilité (PF) où l'historique de calcul de validation (VCH) est envoyé à l'Orchestrateur de Terminaux (EO) et agrégé à la série de paramètres (PAk) sous une forme chiffrée et lisible uniquement par le(s) Validateur(s) de Terminaux (EV). Procédé selon la revendication 7, dans lequel les Validations de Plausibilité PVj = PF (EDj, PAk) et la Fonction de Plausibilité (PF) est une fonction permettant le filtrage par motif préservant la confidentialité des Données de Terminal (EDj), et ou la série de paramètres (PAk) sont des motifs à faire correspondre, où le ou les Validateurs de Terminaux (EV) n'ont accès qu'à une version chiffrée des Données de Terminal (EDj) et à une version chiffrée de la série de paramètres (PAk). Un système pour certifier à distance l'État (S) d'un Terminal (E) à partir d'un Serveur (B), le système comprenant un Orchestrateur de Terminaux (EO) et au moins un Validateur de Terminaux (EV) pour attester de la Plausibilité (P) de l’État (S), dans lequel : le Validateur de Terminaux (EV) est distinct de l'Orchestrateur de Terminaux (EO), l'État (S) est basé sur une série de Validations d'État (SVi) et une Fonction d'État (SF), telles que S = SF (SVi), l'État (S) est connu du Serveur (B) et du Terminal (E), la Fonction d'État (SF) est connue du Serveur (B) et du Terminal (E), les séries de Validations d'État (SVi) sont inconnues du Serveur (B) mais connues du Terminal (E), et dans lequel le système est configuré pour vérifier la Plausibilité (P) de l'État (S) avec les conditions suivantes : la Plausibilité (P) représente une analyse des informations dans le Terminal (E) qui prend en charge l'exactitude de l'État (S), la Plausibilité (P) est connue du Serveur (B) via l'Orchestrateur de Terminaux (EO), la Plausibilité (P) est basée sur une série de Validations de Plausibilité (PVj) et une Fonction de Plausibilité (PF), telles que P = PF (PVj), la Fonction de Plausibilité (PF) et les Validations de Plausibilité (PVj) sont mises à jour de façon dynamique, la Fonction de Plausibilité (PF) et les Validations de Plausibilité (PVj) sont inconnues du Serveur (B), pour protéger la confidentialité du Terminal (E), la Fonction de Plausibilité (PF) est inconnue du Terminal (E), pour rendre difficile la falsification de la Plausibilité (P), la Fonction de Plausibilité (PF) est calculée par l'Orchestrateur de Terminaux (EO), les Validations de Plausibilité (PVj) sont calculées par les Validateurs de Terminaux (EV) sur la base d'une série de Données de Terminal (ED) inconnues de tout composant du système à l'exception du Terminal (E).