Le compte à rebours est lancé pour Keyfactor Tech Days - réservez votre place dès aujourd'hui !

La clé de la sécurité des microprogrammes dans les appareils connectés IoT

Signature du code

IoT représentent 30 % de tous les terminaux connectés au réseau, introduisant de nouvelles attaques et des vulnérabilités dans la chaîne d'approvisionnement qui font de nombreuses entreprises des cibles privilégiées pour les cybercriminels. Pour faire face à cette surface de menace croissante, toute organisation déployant des appareils IoT doit se pencher sur la question des mises à jour du micrologiciel de ses appareils IoT .

Les mises à jour des microprogrammes sont essentielles pour corriger les bogues du site software , remédier aux vulnérabilités ou ajouter de nouvelles fonctions de sécurité, mais il est tout aussi important de s'assurer que ces mises à jour sont sûres et fiables.

Mises à jour du micrologiciel par voie hertzienne

Bien que le micrologiciel des appareils puisse être mis à jour manuellement, la vaste distribution d'appareils compatibles avec le site IoT, tels que les voitures connectées, les stimulateurs cardiaques et même les avions, rend les processus de mise à jour manuelle irréalisables et peu pratiques.

C'est là que les mises à jour OTA (over-the-air) jouent un rôle de plus en plus important. Les mises à jour OTA du micrologiciel impliquent la mise à jour à distance du code des appareils connectés et intégrés IoT . La mise à jour est déployée sans fil - par voie hertzienne - sur l'appareil, sans qu'il soit nécessaire d'interférer avec le système sous-jacent hardware. Les mises à jour OTA sont généralement diffusées par le biais de données cellulaires (4G ou 5G) ou de connexions internet.

Le plus grand avantage des mises à jour OTA du micrologiciel IoT est que les fabricants peuvent continuellement ajouter de nouvelles fonctionnalités, corriger les bogues de sécurité et améliorer le comportement du produit, même si l'appareil est déployé dans des environnements dispersés. En outre, les mises à jour OTA constituent une solution rentable, car vous pouvez gérer de manière transparente le micrologiciel de centaines d'appareils connectés à partir d'une interface centralisée.

Vulnérabilités du micrologiciel

Malgré l'importance d'avoir un micrologiciel à jour pour garantir le fonctionnement sûr et fiable de votre flotte d'appareils connectés à IoT , le micrologiciel est une surface d'attaque généralement non protégée que les adversaires exploitent pour s'introduire dans les réseaux, compromettre les données ou même prendre le contrôle des appareils pour les endommager ou les perturber. En définitive, un micrologiciel non sécurisé équivaut à un appareil non sécurisé IoT .

Les cybercriminels sont impatients d'exploiter les faiblesses et les lacunes de la sécurité du site IoT , non pas pour attaquer les appareils eux-mêmes, mais pour lancer d'autres actions malveillantes, telles que des attaques DDoS, la diffusion de logiciels malveillants ou la violation et la compromission de données.

Le Top 10 de l'OWASP IoT souligne que l'absence d'un mécanisme sécurisé de mise à jour du micrologiciel est l'une des principales vulnérabilités affectant la sécurité de IoT :

"Absence de capacité à mettre à jour l'appareil en toute sécurité. Cela inclut l'absence de validation du micrologiciel sur l'appareil, l'absence de livraison sécurisée (non cryptée en transit), l'absence de mécanismes anti-retour, et l'absence de notifications des changements de sécurité dus aux mises à jour".

Pour atténuer cette vulnérabilité, il est essentiel que les entreprises s'assurent que le micrologiciel IoT peut être mis à jour via des mises à jour OTA de manière fiable, sécurisée et régulière. Cependant, certains facteurs clés ont un impact sur la sécurité des mises à jour du micrologiciel IoT , notamment :

Compromis de signature: l'accès non autorisé aux clés de signature de code ou aux mécanismes de signature des microprogrammes peut permettre aux attaquants de se faire passer pour dignes de confiance et de diffuser des mises à jour malveillantes sur des appareils qui semblent fiables. Il est essentiel de renforcer les défenses autour de vos clés de signature de code et de veiller à ce que les signatures des microprogrammes soient vérifiées avant d'autoriser l'exécution du code sur l'appareil.

Codage non sécurisé: Les débordements de mémoire tampon peuvent se produire en raison d'une programmation non sécurisée de l'appareil. Les adversaires recherchent ces défauts de codage pour provoquer un comportement erratique de l'application ou des pannes qui peuvent conduire à une violation de la sécurité. Les débordements de mémoire tampon peuvent permettre aux criminels d'accéder à distance aux appareils et peuvent être utilisés pour créer des attaques par déni de service (DDoS) ou par injection de logiciels malveillants.

Chaîne d'approvisionnement non sécurisée software : Le développement des appareils IoT repose fortement sur les chaînes d'approvisionnement software et sur l'utilisation intensive de composants open-source . L'absence de procédures de sécurisation de la chaîne d'approvisionnement entraîne l'utilisation de composants open-source non sécurisés, avec des vulnérabilités intégrées, que les attaquants sont impatients d'exploiter. La dernière attaque de SolarWinds est un bon exemple de ce qui peut se passer avec des chaînes d'approvisionnement software non sécurisées.

Services de test oubliés dans les appareils de production: Au cours du développement et de l'essai des dispositifs IoT , les développeurs disposant de services de débogage et d'informations d'identification ne devraient pas migrer vers le dispositif de production final, car ils offrent un accès potentiellement facile aux adversaires.

Conséquences des mises à jour non sécurisées des microprogrammes

Un micrologiciel IoT non sécurisé peut avoir des conséquences désastreuses pour les utilisateurs de ces appareils connectés. Le fait que ces types d'attaques malveillantes ne nécessitent pas d'accès physique est encore plus problématique : elles peuvent être menées à distance par un attaquant sans avertissement.

Voici quelques exemples de mises à jour non sécurisées ayant entraîné une vulnérabilité ou une attaque du micrologiciel :

  • Serrures intelligentes : La mise à jour OTA programmée du micrologiciel d'une serrure intelligente contenait une version corrompue qui a mis hors ligne les serrures intelligentes mises à jour. Ces serrures étaient utilisées dans le secteur de l'hôtellerie et de la restauration et, par conséquent, de nombreux clients n'ont pas pu entrer dans leurs propriétés louées. Les serrures ayant été mises hors ligne par la mise à jour corrompue, elles ont dû être mises à jour manuellement par le fournisseur.
  • Stimulateurs cardiaques : Lorsque la Food and Drug Administration (FDA) des États-Unis a recommandé une mise à jour du micrologiciel pour pallier une vulnérabilité d'accès à distance dans certains stimulateurs cardiaques, elle a également noté dans son avis qu'il existait un risque mineur que la mise à jour du micrologiciel puisse entraîner une défaillance du dispositif. La décision de mettre à jour le micrologiciel a dû être mise en balance avec la possibilité d'une défaillance du dispositif qui aurait nécessité une intervention chirurgicale pour le remplacer.
  • Voitures connectées : Des chercheurs de la société chinoise Tencent ont révélé qu'ils pouvaient pirater une Tesla Model S par Wi-Fi et activer à distance le système de freinage. Tesla a réagi en mettant en place une fonction de sécurité fondamentale - la signature de code - qui exige que tout nouveau micrologiciel écrit sur les composants du bus CAN soit signé numériquement afin d'éliminer le risque.
  • Matériel de réseautage : Un développeur a accidentellement divulgué les clés privées utilisées pour signer D-Link software dans le micrologiciel open-source publié par l'entreprise. On ne sait pas si les clés ont été utilisées par un tiers malveillant, mais l'incident a donné lieu à des enquêtes menées par des tiers et à des amendes.

Comment sécuriser les mises à jour du micrologiciel de IoT

Il existe de nombreuses bonnes pratiques à suivre pour sécuriser le micrologiciel des appareils IoT et pour minimiser l'impact d'une mise à jour qui ne se déroule pas comme prévu. Les entreprises doivent prévoir les deux scénarios.

Pour minimiser l'impact d'une mise à jour corrompue du micrologiciel, vous devez éliminer le stockage d'informations sensibles telles que les informations d'identification et les jetons d'API sur les appareils IoT . Au lieu de cela, vous devriez télécharger ces informations sensibles dans le nuage, où elles peuvent être facilement gérées sans les contraintes des appareils IoT de faible puissance.

En outre, les appareils IoT ne doivent être connectés qu'à un seul vecteur d'attaque possible : soit par les données cellulaires, soit par l'internet. Vous devez limiter les possibilités d'attaque de l'appareil par les pirates.

En ce qui concerne le processus de mise à jour des microprogrammes, il convient de souligner que des mises à jour régulières réduisent le nombre de vecteurs d'attaque dans les systèmes d'exploitation, les microprogrammes et les applications. Il est essentiel de vérifier l'origine et l'intégrité de chaque mise à jour et de n'utiliser que les applications légitimes des fournisseurs.

Certains mécanismes de mise à jour disponibles ne garantissent pas l'intégrité, ce qui les rend vulnérables aux attaques MITM et aux attaques par modification. L'appareil IoT peut également utiliser des méthodes d'authentification de machine à machine pour authentifier un serveur de mise à jour avant de télécharger une nouvelle image de micrologiciel, ce qui ajoute une couche de protection. Cela garantit que les mises à jour de l'appareil proviennent uniquement de l'équipementier de l'appareil ou d'une autre source fiable.

La mise en œuvre de l'identité unique et de la signature de code sécurisée avec les mises à jour OTA garantit une mise à jour inchangée provenant de la source vérifiée. En utilisant le démarrage sécurisé, la validation par hachage cryptographique garantit l'intégrité en vérifiant le correctif avant de le stocker sur l'appareil.

Commencer avec la sécurité des microprogrammes

Découvrez comment Keyfactor Control permet une sécurité hautement évolutive, agile et rentable, depuis l'intégration d'identités uniques dans chaque appareil dès sa conception jusqu'à la sécurisation des mises à jour du micrologiciel et de l'identité tout au long du cycle de vie de l'appareil.