Brevet FR3108997A1 — publié le 20211008

Infrastructure décentralisée basée sur le brouillard pour une vérification d’intégrité de sécurité de micrologiciel afin d’améliorer la sécurité physique, opérationnelle et fonctionnelle de systèmes de l’Internet des objets (IdO) Des modes de réalisation de la présente invention concernent un procédé, un système et un produit programme informatique nouveaux et non évidents pour la sécurisation du micrologiciel d’un dispositif instrumenté de l’Internet des objets (IdO). Selon un mode de réalisation de l’invention, un procédé pour sécuriser un dispositif instrumenté de l’IdO consiste à détecter un changement dans le micrologiciel installé représentatif d’un remplacement du micrologiciel installé avec un micrologiciel de remplacement. Le procédé consiste en outre à comparer des différences dans des directives programmatiques entre deux versions de micrologiciel différentes : une publication précédente d’un micrologiciel actuellement en cours d’exécution et une nouvelle publication de micrologiciel différente. Enfin, le procédé consiste à transmettre un message d’alerte à un opérateur lors de la détection d’une différence de seuil dans au moins l’une des directives programmatiques. Fig. 1 Infrastructure décentralisée basée sur le brouillard pour une vérification d’intégrité de sécurité de micrologiciel afin d’améliorer la sécurité physique, opérationnelle et fonctionnelle de systèmes de l’Internet des objets (IdO) ÉTAT ANTÉRIEUR Domaine de l’invention La présente invention se rapporte au domaine de l’Internet des objets (IdO) et plus particulièrement à la sécurisation de dispositifs de l’IdO. Description de l’art connexe L’IdO fait référence à une vaste toile de dispositifs connectés sur l’Internet mondial au moyen de l’instrumentation de machines ordinaires allant des grille-pains aux automobiles. Littéralement tout ce qui peut être allumé ou éteint, une fois instrumenté pour l’IdO, autorise des interactions unilatérales ou bilatérales sur l’Internet. Ces interactions peuvent aller de simplement rapporter un état d’un capteur, par exemple une valeur ordinaire, à recevoir des directives faisant effectivement fonctionner à distance un appareil compatible avec l’IdO. Bien que les avantages de rendre une machine compatible avec l’IdO sont substantiels, ces avantages ont un prix - la création d’une vulnérabilité de sécurité dans la machine. À cet égard, en tant qu’unité autonome, un dispositif ou une machine autonome comprenant un capteur est de façon générale insensible aux menaces à distance. Mais, comme tout autre ordinateur personnel connecté, un dispositif configuré ou une machine configurée pour l’IdO devient vulnérable aux menaces à distance dont les intrusions sur le réseau. À cet égard, comme d’autres dispositifs, un dispositif de l’IdO est apte à détecter et à dissuader d’une atteinte à son intégrité par la surveillance de l’introduction de code dans la mémoire du dispositif de l’IdO afin de détecter un code malveillant. Mais la logique de programme apte à effectuer cela est généralement incluse en tant que partie du système d’exploitation sous-jacent, ou en tant que partie d’un programme informatique exécuté sous la gestion par le système d’exploitation. Par conséquent, un code malveillant inséré subrepticement dans le dispositif de l’IdO au niveau du pré-système d’exploitation - à savoir le micrologiciel - peut éviter une détection par des contre-mesures au niveau du système d’exploitation ou du post-système d’exploitation. BREF RÉSUMÉ DE L’INVENTION Les modes de réalisation de la présente invention abordent des lacunes dans l’état de l’art en ce qui concerne la sécurisation de dispositifs de l’IdO et fournissent un procédé, un système et un produit programme informatique nouveaux et non évidents pour la sécurisation du micrologiciel d’un dispositif instrumenté de l’IdO. Selon un mode de réalisation de l’invention, un procédé pour sécuriser un dispositif instrumenté de l’IdO consiste à détecter un changement dans le micrologiciel installé représentatif d’un remplacement du micrologiciel installé avec un micrologiciel de remplacement. Le procédé consiste en outre à comparer des différences dans des directives programmatiques entre deux versions de micrologiciel différentes : une publication précédente d’un micrologiciel actuellement en cours d’exécution et une nouvelle publication de micrologiciel différente. Enfin, le procédé consiste à transmettre un message d’alerte à un opérateur lors de la détection d’une différence de seuil dans au moins l’une des directives programmatiques. Selon un aspect du mode de réalisation, les directives programmatiques comprennent un décompte d’une fonction prédéfinie dans deux versions de micrologiciel différentes. Selon un autre aspect du mode de réalisation, les directives programmatiques comprennent une adresse de saut dans le micrologiciel actuel et une adresse de saut correspondante dans le micrologiciel de remplacement. Selon encore un autre aspect du mode de réalisation, les directives programmatiques comprennent un nombre de demandes d’entrée/sortie dans le micrologiciel actuel et dans le micrologiciel de remplacement. Enfin, on notera que le micrologiciel actuel peut comprendre une multiplicité de fichiers définissant le micrologiciel installé de sorte que la comparaison est une comparaison des directives programmatiques dans un ensemble des fichiers définissant le micrologiciel installé et dans un ensemble de fichiers définissant le micrologiciel de remplacement. Selon un autre mode de réalisation de l’invention, un dispositif instrumenté de l’IdO peut être configuré à des fins de garantie de sécurité de micrologiciel. Le dispositif comprend un ordinateur hôte ayant de la mémoire et au moins un processeur, et facultativement inclus en tant que partie du dispositif instrumenté de l’IdO. Le dispositif comprend également un module de sécurité de micrologiciel exécuté par l’au moins un processeur et couplé de manière communicative au micrologiciel au sein d’un dispositif instrumenté de l’IdO. À cet égard, le module comprend des instructions de programme informatique aptes à détecter un changement dans le micrologiciel installé représentatif d’un remplacement du micrologiciel installé avec un micrologiciel de remplacement, comparer des différences dans des directives programmatiques entre deux versions de micrologiciel différentes et transmettre un message d’alerte à un opérateur lors de la détection d’une différence de seuil dans au moins l’une des directives programmatiques. Des aspects supplémentaires de l’invention seront présentés en partie dans la description qui suit, et ressortiront en partie clairement de la description, ou peuvent être appris par la pratique de l’invention. Les aspects de l’invention seront réalisés et obtenus au moyen des éléments et combinaisons indiqués en particulier dans les revendications annexées. Il convient de comprendre qu’à la fois la description générale qui précède et la description détaillée qui suit ne sont données qu’à titre d’exemple et d’explication et ne limitent pas l’invention, telle que revendiquée. BRÈVE DESCRIPTION DES DIFFÉRENTES VUES DES DESSINS Les dessins annexés, qui sont incorporés et constituent une partie du mémoire descriptif, illustrent des modes de réalisation de l’invention et conjointement avec la description, servent à expliquer les principes de l’invention. Les modes de réalisation illustrés ici sont présentement préférés, étant entendu toutefois que l’invention n’est pas limitée aux agencements et instrumentalités précis présentés, dans lesquels : la est une illustration imagée d’un processus pour la sécurisation d’un dispositif instrumenté de l’IdO ; la est une illustration schématique d’un système de traitement de données configuré pour la sécurisation d’un dispositif instrumenté de l’IdO ; et, la est un organigramme illustrant un processus pour la sécurisation d’un dispositif instrumenté de l’IdO. DESCRIPTION DÉTAILLÉE DE L’INVENTION Les modes de réalisation de l’invention concernent la sécurisation d’un dispositif instrumenté de l’IdO. Conformément à un mode de réalisation de l’invention, des changements apportés à un micrologiciel disposé au sein du dispositif instrumenté de l’IdO sont surveillés. Lors de la détermination que le micrologiciel existant du dispositif a été remplacé avec un micrologiciel de remplacement, le code de programme du micrologiciel de remplacement est comparé au code de programme du micrologiciel existant. Dans la mesure où une caractéristique d’une ou de plusieurs des directives programmatiques du micrologiciel a changé entre le micrologiciel existant et le micrologiciel de remplacement, telle qu’un décompte d’une fonction prédéfinie présente dans le micrologiciel, une adresse de saut incluse en tant que partie d’une opération de saut présente dans le micrologiciel, ou un nombre de demandes d’entrée/sortie au sein du micrologiciel, une alerte est transmise à un opérateur indiquant une menace potentielle posée par le micrologiciel de remplacement. À titre d’illustration supplémentaire, la Figure 1 illustre de façon imagée un processus pour la sécurisation d’un dispositif instrumenté de l’IdO. Comme le montre la Figure 1, une logique de sécurité de micrologiciel 140 surveille un dispositif de l’IdO 150 pour une mise à niveau d’un micrologiciel existant 110A avec un micrologiciel mis à niveau 110B. Le micrologiciel existant 110A comprend un ensemble de directives programmatiques 120A, incluant des instructions de programme appelant des opérations de processeur et référençant des adresses mémoire dans la mémoire du dispositif de l’IdO 150. La logique de sécurité de micrologiciel 140 caractérise les directives 120A en données d’introspection 130A, par exemple selon une distribution d’un nombre d’instances de différents types des directives 120A, une adresse mémoire particulière référencée par une ou plusieurs directives correspondantes parmi les directives 120A, ou une adresse d’entrée/sortie référencée par une ou plusieurs directives correspondantes parmi les directives 120A. Par la suite, la logique de sécurité de micrologiciel 140 traite le micrologiciel mis à niveau 110 afin d’identifier les directives 120B incluses en tant que partie du micrologiciel mis à niveau 110. En tant que partie du traitement du micrologiciel mis à niveau 110, la logique de sécurité de micrologiciel 140 caractérise les directives 120B en données d’introspection 130B, par exemple selon une distribution d’un nombre d’instances de différents types des directives 120B, une adresse mémoire particulière référencée par une ou plusieurs directives correspondantes parmi les directives 120B, ou une adresse d’entrée/sortie référencée par une ou plusieurs directives correspondantes parmi les directives 120B. Une fois que la caractérisation des directives 120B a été accomplie de façon à produire les données d’introspection 130B, la logique de sécurité de micrologiciel 140 compare les données d’introspection 120B aux données d’introspection 130A afin de déterminer de quelconques différences de seuil. À cet égard, les différences de seuil entre les données d’introspection 130A et les données d’introspection 130B peuvent comprendre une adresse de saut différente, référencée par une directive correspondante parmi les directives 120A dans le micrologiciel existant 110A, d’une adresse de saut d’une directive correspondante parmi les directives 120B dans le micrologiciel mis à niveau 110B. Comme autre possibilité, les différences de seuil entre les données d’introspection 130A et les données d’introspection 130B peuvent comprendre un nombre différent d’un type particulier des directives 120A dans le micrologiciel existant 110A comparativement au même type des directives 120B dans le micrologiciel mis à niveau 110B. Comme encore une autre possibilité, les différences de seuil entre les données d’introspection 130A et les données d’introspection 130B peuvent comprendre un changement dans une adresse d’entrée/sortie, I/O, référencée par l’une des directives 120B dans le micrologiciel mis à niveau 110B par rapport à une directive correspondante parmi les directives 120A dans le micrologiciel existant 110A. Lors de la détection d’une différence de seuil entre les données d’introspection 130A et les données d’introspection 130B, la logique de sécurité de micrologiciel 140 bloque le remplacement du micrologiciel existant 110A avec le micrologiciel mis à niveau 110B et transmet un message à un opérateur. Par exemple, le message peut être une alerte fournie sous la forme d’un message textuel à un courrier de dispositif mobile enregistré avec la logique de sécurité de micrologiciel 140, ou un message de courrier électronique à une adresse de courrier électronique enregistrée avec la logique de sécurité de micrologiciel 140. Facultativement, un signal peut être reçu dans la logique de sécurité de micrologiciel 140 à partir de l’opérateur outrepassant le blocage du remplacement du micrologiciel existant 110A avec le micrologiciel mis à niveau 110B, de sorte qu’à la suite du remplacement du micrologiciel existant 110 avec le micrologiciel mis à niveau 110B, le micrologiciel mis à niveau 110B devient le micrologiciel existant 110A et les données d’introspection 130B deviennent les données d’introspection 130A. Le processus décrit en relation avec la Figure 1 peut être mis en œuvre au sein d’un système de traitement de données. À titre d’illustration supplémentaire, la Figure 2 représente de façon schématique un système de traitement de données configuré pour la sécurisation d’un dispositif instrumenté de l’IdO. Le système comprend un dispositif compatible avec l’IdO 200 qui comprend au moins un processeur 220, de la mémoire 230, un stockage fixe tel que de la mémoire non volatile et un circuit de communication sans fil 250 permettant des communications de données sans fil avec un serveur distant 210 sur un réseau de communication informatique 260. Le stockage fixe 240 comprend un micrologiciel 270 ayant une ou plusieurs instructions programmatiques 280, chacune ayant un zéro correspondant de plus de paramètres, qui s’exécutent avant le chargement d’un système d’exploitation pour le dispositif compatible avec l’IdO 200. Le système comprend également un module d’intégrité de mise à niveau de micrologiciel 300. Comme on peut le voir, le module 300 peut persister dans la mémoire 230 du dispositif compatible avec l’IdO, ou le module 300 peut persister dans la mémoire (non représentée) du serveur distant 210. Le module 300 comprend des instructions de programme informatique qui, au cours de l’exécution, caractérisent les instructions 280 et des paramètres correspondants du micrologiciel 270 et comparent la caractérisation avec une caractérisation d’instructions de programme d’une mise à jour de micrologiciel prévue pour remplacer le micrologiciel 270. Les instructions de programme transmettent en outre un message au travers du réseau de communication informatique 260 à l’interface de sécurité 290 du serveur distant 210 indiquant une différence de seuil entre les caractérisations lorsqu’une telle différence de seuil existe et bloquent le remplacement du micrologiciel 270 avec la mise à jour de micrologiciel en l’absence d’un signal d’outrepassement reçu à partir de l’interface de sécurité 290 sur le réseau de communication informatique 260 dans le dispositif compatible avec l’IdO 200. À titre d’une autre illustration supplémentaire du fonctionnement du module d’intégrité de mise à niveau de micrologiciel 300, la Figure 3 est un organigramme illustrant un processus pour la sécurisation d’un dispositif instrumenté de l’IdO. En commençant au bloc 310, une mise à jour de micrologiciel est reçue pour une installation dans le dispositif de l’IdO en remplacement d’un micrologiciel existant. Au bloc 320, les directives programmatiques du micrologiciel existant sont chargées dans la mémoire et traitées de façon à calculer une caractérisation du micrologiciel existant au bloc 330. La caractérisation comprend, par exemple, une distribution d’un nombre d’instances de différents types des directives, une adresse mémoire particulière référencée par une ou plusieurs directives correspondantes parmi les directives, ou une adresse d’entrée/sortie référencée par une ou plusieurs directives correspondantes parmi les directives. Simultanément, au bloc 340, les directives programmatiques de la mise à niveau de micrologiciel sont chargées dans la mémoire et traitées de façon à calculer une caractérisation de la mise à niveau de micrologiciel. Comme précédemment, la caractérisation comprend, par exemple, une distribution d’un nombre d’instances de différents types des directives, une adresse mémoire particulière référencée par une ou plusieurs directives correspondantes parmi les directives, ou une adresse d’entrée/sortie référencée par une ou plusieurs directives correspondantes parmi les directives. Ensuite, au bloc de décision 350, il est déterminé si une incohérence de seuil existe entre la caractérisation du micrologiciel existant et la caractérisation de la mise à niveau de micrologiciel. Si l’incohérence de seuil existe, au bloc 360, la mise à jour de micrologiciel est empêchée de remplacer le micrologiciel existant. Mais si aucune incohérence de seuil n’existe, au bloc 370, le micrologiciel existant est remplacé par la mise à jour de micrologiciel. La présente invention peut être incorporée dans un système, un procédé, un produit programme informatique ou toute combinaison de ceux-ci. Le produit programme informatique peut comprendre un support ou des supports de stockage lisibles par ordinateur ayant des instructions de programme lisibles par ordinateur en son sein ou en leur sein pour amener un processeur à mettre en œuvre des aspects de la présente invention. Le support de stockage lisible par ordinateur peut être un dispositif tangible qui peut retenir et stocker des instructions destinées à être utilisées par un dispositif d’exécution d’instructions. Le support de stockage lisible par ordinateur peut être, par exemple, mais n’est pas limité à, un dispositif de stockage électronique, un dispositif de stockage magnétique, un dispositif de stockage optique, un dispositif de stockage électromagnétique, un dispositif de stockage à semi-conducteurs, ou toute combinaison appropriée de ceux-ci. Les instructions de programme lisibles par ordinateur décrites ici peuvent être téléchargées vers des dispositifs informatiques/de traitement respectifs à partir d’un support de stockage lisible par ordinateur ou vers un ordinateur externe ou un dispositif de stockage externe par l’intermédiaire d’un réseau. Les instructions de programme lisibles par ordinateur peuvent s’exécuter entièrement sur l’ordinateur de l’utilisateur, partiellement sur l’ordinateur de l’utilisateur, en tant que progiciel autonome, partiellement sur l’ordinateur de l’utilisateur et partiellement sur un ordinateur distant ou entièrement sur l’ordinateur ou le serveur distant. Des aspects de la présente invention sont décrits ici en référence aux illustrations d’organigramme et/ou aux schémas fonctionnels de procédés, d’appareils (systèmes), et de produits programmes informatiques selon les modes de réalisation de l’invention. On comprendra que chaque bloc des illustrations d’organigramme et/ou des schémas fonctionnels, et des combinaisons de blocs dans les illustrations d’organigramme et/ou les schémas fonctionnels, peuvent être mis en œuvre par des instructions de programme lisibles par ordinateur. Ces instructions de programme lisibles par ordinateur peuvent être fournies à un processeur d’un ordinateur universel, d’un ordinateur à usage spécial, ou d’un autre appareil de traitement de données programmable pour produire une machine, de telle sorte que les instructions, qui s’exécutent par l’intermédiaire du processeur de l’ordinateur ou de l’autre appareil de traitement de données programmable, créent des moyens pour la mise en œuvre des fonctions/actes spécifiés dans le bloc ou les blocs d’organigramme et/ou de schéma fonctionnel. Ces instructions de programme lisibles par ordinateur peuvent également être stockées dans un support de stockage lisible par ordinateur qui peut ordonner à un ordinateur, un appareil de traitement de données programmable, et/ou d’autres dispositifs de fonctionner d’une manière particulière, de telle sorte que le support de stockage lisible par ordinateur ayant des instructions stockées en son sein comprend un article manufacturé comprenant des instructions qui mettent en œuvre des aspects de la fonction/de l’acte spécifié dans le bloc ou les blocs d’organigramme et/ou de schéma fonctionnel. Les instructions de programme lisibles par ordinateur peuvent également être chargées sur un ordinateur, un autre appareil de traitement de données programmable, ou un autre dispositif pour amener une série d’étapes fonctionnelles à être effectuées sur l’ordinateur, l’autre appareil programmable ou l’autre dispositif afin de produire un processus mis en œuvre par ordinateur, de telle sorte que les instructions qui s’exécutent sur l’ordinateur, l’autre appareil programmable, ou l’autre dispositif mettent en œuvre les fonctions/actes spécifiés dans le bloc ou les blocs d’organigramme et/ou de schéma fonctionnel. L’organigramme et les schémas fonctionnels sur les Figures illustrent l’architecture, la fonctionnalité, et le fonctionnement de possibles mises en œuvre de systèmes, procédés, et produits programmes informatiques selon divers modes de réalisation de la présente invention. À cet égard, chaque bloc dans l’organigramme ou les schémas fonctionnels peut représenter un module, un segment, ou une partie d’instructions, qui comprend une ou plusieurs instructions exécutables pour la mise en œuvre de la ou des fonction(s) logique(s) spécifiée(s). Dans certaines variantes de mise en œuvre, les fonctions notées dans le bloc peuvent se produire dans un autre ordre que celui noté sur les Figures. Par exemple, deux blocs représentés en succession peuvent, en fait, être exécutés sensiblement simultanément, ou les blocs peuvent parfois être exécutés dans l’ordre inverse, en fonction de la fonctionnalité impliquée. On notera également que chaque bloc des schémas fonctionnels et/ou de l’illustration d’organigramme, et des combinaisons de blocs dans les schémas fonctionnels et/ou l’illustration d’organigramme, peuvent être mis en œuvre par des systèmes à base de matériel à usage spécial qui effectuent les fonctions ou actes spécifiés ou mettent en œuvre des combinaisons d’instructions informatiques et de matériel à usage spécial. Enfin, la terminologie utilisée ici est destinée à décrire uniquement des modes de réalisation particuliers et n’est pas destinée à limiter l’invention. On comprendra également que les termes « comprend » et/ou « comprenant », lorsqu’ils sont utilisés dans ce mémoire descriptif, spécifient la présence de caractéristiques, de nombres entiers, d’étapes, d’opérations, d’éléments, et/ou de composants mentionnés, mais n’excluent pas la présence ou l’ajout d’un(e) ou plusieurs autres caractéristiques, nombres entiers, étapes, opérations, éléments, composants et/ou des groupes de ceux-ci. Les structures, matériaux, actes, et équivalents correspondants de tous moyens ou les éléments étape plus fonction dans les revendications ci-dessous sont destinés à comprendre toute structure, matériau, ou acte pour réaliser la fonction en combinaison avec d’autres éléments revendiqués comme spécifiquement revendiqué. La description de la présente invention a été présentée à des fins d’illustration et de description, mais n’est pas destinée à être exhaustive ou limitée à l’invention sous la forme divulguée. De nombreuses modifications et variations apparaîtront à l’homme du métier sans s’écarter de la portée et de l’esprit de l’invention. Le mode de réalisation a été choisi et décrit afin d’expliquer au mieux les principes de l’invention et l’application pratique, et pour permettre à d’autres hommes du métier de comprendre l’invention pour divers modes de réalisation avec diverses modifications telles qu’appropriées pour l’utilisation particulière envisagée. En ayant ainsi décrit l’invention de la présente demande en détail et en référence aux modes de réalisation de celle-ci, il apparaîtra que des modifications et des variations sont possibles sans s’écarter de la portée de l’invention définie dans les revendications annexées comme suit. Procédé pour sécuriser un dispositif instrumenté de l’Internet des objets (IdO) comprenant les étapes consistant à : détecter un changement dans le micrologiciel installé représentatif d’un remplacement du micrologiciel installé avec un micrologiciel de remplacement (110B) ; comparer des différences dans des directives programmatiques (120A, 120B) entre le micrologiciel actuel (110A) et dans le micrologiciel de remplacement (110B) ; et, transmettre un message d’alerte à un opérateur lors de la détection d’une différence de seuil dans au moins l’une des directives programmatiques (120A, 120B). Procédé selon la revendication 1, dans lequel les directives programmatiques (120A, 120B) comprennent un décompte d’une fonction prédéfinie dans le micrologiciel actuel (110A) et dans le micrologiciel de remplacement (110B). Procédé selon la revendication 1, dans lequel les directives programmatiques (120A, 120B) comprennent une adresse de saut dans le micrologiciel actuel (110A) et une adresse de saut correspondante dans le micrologiciel de remplacement (110B). Procédé selon la revendication 1, dans lequel les directives programmatiques (120A, 120B) comprennent un nombre de demandes d’entrée/sortie dans le micrologiciel actuel (110A) et dans le micrologiciel de remplacement (110B). Procédé selon la revendication 1, dans lequel le micrologiciel actuel (110A) comprend une multiplicité de fichiers définissant le micrologiciel installé et la comparaison est une comparaison des directives programmatiques (120A, 120B) dans un ensemble des fichiers définissant le micrologiciel installé et dans un ensemble de fichiers définissant le micrologiciel de remplacement (110B). Dispositif instrumenté de l’Internet des objets (IdO) configuré à des fins de garantie de sécurité de micrologiciel, le dispositif comprenant : un ordinateur hôte ayant de la mémoire et au moins un processeur ; un module de sécurité de micrologiciel exécuté par l’au moins un processeur et couplé de manière communicative à un micrologiciel au sein d’un dispositif instrumenté de l’IdO, le module comprenant des instructions de programme informatique permettant, au cours de l’exécution, de réaliser les étapes consistant à : détecter un changement dans le micrologiciel installé représentatif d’un remplacement du micrologiciel installé avec un micrologiciel de remplacement (110B); comparer des différences dans des directives programmatiques (120A, 120B) entre le micrologiciel actuel (110A) et dans le micrologiciel de remplacement (110B) ; et, transmettre un message d’alerte à un opérateur lors de la détection d’une différence de seuil dans au moins l’une des directives programmatiques (120A, 120B). Dispositif selon la revendication 6, dans lequel les directives programmatiques (120A, 120B) comprennent un décompte d’une fonction prédéfinie dans le micrologiciel actuel (110A) et dans le micrologiciel de remplacement (110B). Dispositif selon la revendication 6, dans lequel les directives programmatiques (120A, 120B) comprennent une adresse de saut dans le micrologiciel actuel (110A) et une adresse de saut correspondante dans le micrologiciel de remplacement (110B). Dispositif selon la revendication 6, dans lequel les directives programmatiques (120A, 120B) comprennent un nombre de demandes d’entrée/sortie dans le micrologiciel actuel (110A) et dans le micrologiciel de remplacement (110B). Dispositif selon la revendication 6, dans lequel le micrologiciel actuel (110A)comprend une multiplicité de fichiers définissant le micrologiciel installé et la comparaison est une comparaison des directives programmatiques (120A, 120B) dans un ensemble des fichiers définissant le micrologiciel installé et dans un ensemble de fichiers définissant le micrologiciel de remplacement (110B). Dispositif selon la revendication 6, dans lequel la plate-forme informatique hôte est incluse en tant que partie du dispositif instrumenté de l’IdO. Produit programme informatique pour la sécurisation d’un dispositif instrumenté de l’Internet des objets (IdO), le produit programme informatique comprenant un support de stockage lisible par ordinateur ayant des instructions de programme incorporées dans celui-ci, les instructions de programme pouvant être exécutées par un dispositif pour amener le dispositif à réaliser un procédé comprenant les étapes consistant à : détecter un changement dans le micrologiciel installé représentatif d’un remplacement du micrologiciel installé avec un micrologiciel de remplacement (110B) ; comparer des différences dans des directives programmatiques entre le micrologiciel actuel (110A) et dans le micrologiciel de remplacement (110B) ; et, transmettre un message d’alerte à un opérateur lors de la détection d’une différence de seuil dans au moins l’une des directives programmatiques (120A, 120B). Produit programme informatique selon la revendication 12, dans lequel les directives programmatiques (120A, 120B) comprennent un décompte d’une fonction prédéfinie dans le micrologiciel actuel (110A) et dans le micrologiciel de remplacement (110B). Produit programme informatique selon la revendication 12, dans lequel les directives programmatiques (120A, 120B) comprennent une adresse de saut dans le micrologiciel actuel (110A) et une adresse de saut correspondante dans le micrologiciel de remplacement (110B). Produit programme informatique selon la revendication 12, dans lequel les directives programmatiques (120A, 120B) comprennent un nombre de demandes d’entrée/sortie dans le micrologiciel actuel (110A) et dans le micrologiciel de remplacement (110B). Produit programme informatique selon la revendication 12, dans lequel le micrologiciel actuel (110A) comprend une multiplicité de fichiers définissant le micrologiciel installé et la comparaison est une comparaison des directives programmatiques (120A, 120B) dans un ensemble des fichiers définissant le micrologiciel installé et dans un ensemble de fichiers définissant le micrologiciel de remplacement (110B).