Cet article s’adresse principalement à un public averti, maitrisant l’utilisation de clés cryptographiques dans un SI et leur gestion au sein des organisations.
L’accroissement des exigences de sécurité concernant tant les environnements industriels que les objets connectés ont provoqué une profusion des clés cryptographiques, parfois difficile à gérer, dans les entreprises. Celles-ci servent à la fois à chiffrer et déchiffrer des documents ou échanges, mais aussi à la vérification de l’authenticité de messages ou fichiers, par exemple lors de la mise à jour du logiciel d’un composant, pour s’assurer de son intégrité.
Une solution au problème de la complexité de gérer de nombreuses clés cryptographiques dans une entreprise est de mettre en place un KMS, pour Key Management System. Cet outil aide à protéger les données, la sécurité des produits et des processus sous la forme d’un outil centralisé de gestion des clés cryptographiques.
Au-delà d’une simple standardisation des processus, ils peuvent aider à régler des problèmes tels que la génération de clés différentes en grand nombre, le stockage et accès aux clés ou encore la dépréciation des clés.
Pourquoi utiliser un KMS ?
Les KMS (Key Management Systems) sont des systèmes de gestion de clés cryptographiques qui permettent aux entreprises de gérer de manière centralisée et sécurisée leurs clés de chiffrement. Ils s’adressent aux organisations gérant de nombreuses clés cryptographiques, et améliorent ainsi la sécurité de leurs environnements, en standardisant les processus et en apportant des API pour la réalisation des fonctions crypto (signature, chiffrement, déchiffrement). Les organisations ayant de grands réseaux informatiques, mais aussi ceux industriels comprenant des objets connectés tels que des capteurs, des actionneurs ou des systèmes embarqués, ou vendant des produits connectés sont particulièrement concernées.
L’importance d’une bonne gestion des clés est cruciale pour la cybersécurité. Les processus de chiffrement, de signature ou de vérification sont essentiels pour beaucoup d’organisations, même s’ils paraissent parfois comme transparents aux opérationnels. Il est important que les clés de chiffrement soient gérées de manière optimale, afin d’éviter par exemple un stockage non sécurisé des clés ou l’utilisation de la même clé pour plusieurs appareils.
Nous allons examiner de plus près ce qu’est un KMS, comment il fonctionne et pourquoi il peut devenir essentiel. Plusieurs types de KMS seront présentés, ainsi que les avantages liés à leur utilisation et les difficultés à leur intégration. Enfin, quelques clés seront données pour cibler plus précisément les entreprises qui peuvent bénéficier de ce type d’outil.
Pour plus d’informations sur l’architecture KMS, vous pouvez également regarder la conférence de Paul Chopineau à l’occasion de la Miami S4x24 : https://youtu.be/J5aeAYxcc24?feature=shared.
Figure 1 : Architecture type d’un KMS
Les différentes manières de déployer un KMS
Il existe plusieurs manières d’implémenter un KMS, selon les options proposées par leur constructeur. Certains sont proposés en mode SaaS. D’autres peuvent être installés sur les serveurs de l’entreprise (on premise), et il existe aussi des KMS hybrides pour lesquels les clés sont stockées on premise mais l’applicatif est dans le cloud.
Les premiers sont des solutions cloud qui permettent de gérer les clés de chiffrement depuis un ordinateur ou un serveur. Ce sont des produits plus scalables et agiles, aussi plus faciles à déployer et à mettre à jour. En revanche, la sécurité des clés sera dépendante de celle du service cloud, même s’il est possible d’introduire des surchiffrements.
Les KMS on premise sont des solutions logicielles et matérielles qui permettent de gérer les clés cryptographiques en utilisant des serveurs et HSM internes à l’organisation. Ils sont généralement plus personnalisables et parfois plus adaptés à des besoins spécifiques que les KMS déployés en mode SaaS. En revanche, leur intégration sera plus longue et leur coût d’achat (CAPEX initial) sera plus élevé. Leur avantage est aussi qu’ils peuvent permettre à une entreprise de s’assurer de sa souveraineté sur ses clés cryptographiques. Ils conviennent donc mieux aux entreprises ayant des exigences très fortes de sécurité et une capacité plus importante d’investissement initial
Enfin, les KMS hybrides pourraient représenter un juste milieu entre sécurité optimale et facilité de déploiement. L’objectif est de garder le contrôle sur les clés, celle-ci étant dans ce cas sauvegardées sur site, mais de bénéficier d’une plus grande facilité de déploiement et de montée en charge grâce à un applicatif hébergé dans le cloud. Le déploiement de l’applicatif est ainsi facilité, mais il reste à installer les ressources matérielles de gestion des clés (HSMs). La sécurité des clés s’approche de celle d’une solution on premise, mais le logiciel rend celle-ci dépendante du service cloud. Attention néanmoins à se protéger d’une exploitation frauduleuse des clés depuis les infrastructures cloud qui pourrait être plus difficile à détecter que pour un KMS on premise.
Figure 2 : Les trois implémentations possibles pour un KMS
Il est aussi possible de classer les produits sur le marché selon le type de fournisseur.
On retrouve ainsi premièrement les produits des grands acteurs du cloud :
- Amazon avec AWS Key Management Service (AWS KMS),
- Microsoft qui propose Azure Key Vault,
- Google avec le Cloud KMS (Key Management Service),
- IBM qui propose un KMS (Key Management Service) intégré à IBM Cloud Private.
Leurs produits s’intègrent parfaitement aux services fournis par ces grands fournisseurs, y compris leurs outils de stockage sécurisé des clés, comme le KMS de Google, qui permet de créer des clés dans le cloud et les stocker dans des HSM.
Des entreprises spécialisées se positionnent également sur le marché :
- Cryptomathic avec son CKMS (Crypto Key Management System),
- Entrust, dont le produit se nomme KeyControl,
- HashiCorp, avec son produit Vault,
- Utimaco, dont le KMS se nomme KeyBridge,
- Thales, avec par exemple son Trusted Key Manager (TKM).
Ces entreprises proposent notamment de faire fonctionner leurs outils avec des ressources logicielles, telles que les KMS de Microsoft, Amazon et Google pour HashiCorp ou encore VMware pour Entrust. Mais aussi des ressources matérielles, tels que des HSM qui apportent un niveau supérieur de sécurité contre les attaques physiques.
Enfin, le marché a aussi été rejoint par des intégrateurs, comme Atos avec sa suite Trustway DataProtect KMS qui se destine à une installation on premises, sur le matériel de l’entreprise.
Thalès enfin, qui se positionne à la fois comme fournisseur hardware, comme éditeur et comme intégrateur, propose plusieurs produits de gestion des clés pour les entreprises. Ceux-ci fonctionnent de mise avec ceux proposés tant par les acteurs plus spécialisés qu’avec les services cloud préférés de leurs clients.
Figure 3 : Trois grands types de fournisseurs de KMS
Les avantages à utiliser un KMS
Les KMS (Key Management Systems) sont des outils dont le potentiel complet est encore à explorer, mais qui peuvent se révéler particulièrement utiles pour gérer de manière centralisée et sécurisée les clés de chiffrement d’une entreprise. Voici quelques avantages que l’on peut tirer de leur usage.
Tout d’abord, les clés seront plus faciles à déployer. Les KMS permettent de générer rapidement et de manière automatisée de nouvelles clés cryptographiques, ce qui est particulièrement utile lorsqu’il est nécessaire de générer de nombreuses clés différentes pour transmettre à des produits, objets connectés ou systèmes industriels.
Dans un contexte où les clés des objets connectés ne sont souvent pas renouvelées et sont gérées de manière non standardisée, les KMS permettront aux entreprises d’introduire le niveau de sécurité qui leur permettra de respecter les futures régulations des systèmes IoT. Même chose pour le chiffrement de données sensibles dans une base de données, qui est le cas d’usage à l’origine de la naissance des produits KMS.
Pour améliorer le stockage et l’accès aux clés, les KMS offrent des APIs et interfaces centralisées, intégrant une gestion des permissions en lien avec la gestion des accès et identités (IAM), ce qui peut être particulièrement utile pour les entreprises disposant de nombreux types de clés et utilisateurs des clés de chiffrement. La difficulté sera de convaincre les fournisseurs et partenaires extérieurs à l’entreprise de rentrer les clés par le biais du KMS. Ce sera un élément à négocier dans les contrats cadres futurs.
Les KMS permettent également de gérer la dépréciation des clés de chiffrement, en les remplaçant automatiquement par de nouvelles clés lorsqu’elles expirent, qu’elles sont compromises ou tout simplement obsolètes, par exemple à l’issue d’un changement dans la PSSI. Cela permet de maintenir la sécurité de vos données à tout moment.
En résumé, les KMS sont des outils précieux pour gérer efficacement et de manière sécurisée les clés de chiffrement d’une entreprise. Ils permettent ainsi d’améliorer sa conformité aux réglementations et aux normes de sécurité en s’assurant que les procédures de gestion de clés et les clés utilisées sont conformes aux standards établis.
Les pièges à éviter lors de l’implémentation d’un KMS
Mettre en place un KMS (Key Management System) est une démarche lourde, qui peut être freinée ou même stoppée par les aspects suivants :
- Coût du déploiement : les KMS peuvent être très coûteux à déployer. Il s’agit des frais de licence, mais aussi des ressources matérielles comme les HSM à mettre en place pour le stockage des clés et à dimensionner en fonction de l’usage qui en sera fait (fréquence d’accès, volumétrie).
- Complexité de la mise en place : la mise en place d’un KMS peut être complexe, en particulier pour les entreprises disposant de nombreux appareils ou systèmes chiffrés ; pour lesquelles il aura justement une forte valeur ajoutée. Il peut être nécessaire de mettre en place de nombreuses intégrations pour communiquer avec les APIs du KMS en fonctions des différents cas d’usages.
- Procédures de change management spécifiques : il sera parfois difficile de convaincre tous les utilisateurs de l’entreprise de l’importance de la mise en place d’un KMS, et de les inciter à utiliser cet outil de manière efficace. Pour résoudre ce problème, il faudra s’appuyer sur une stratégie de communication et de formation pour sensibiliser les utilisateurs à l’importance de la sécurité des clés de chiffrement et à l’utilité du système.
- Compétences rares sur le marché : des architectes informatiques, des spécialistes en cryptographie, ou encore des gestionnaires de projets capables de piloter des projets structurants en cybersécurité. Tout autant de profils durs à sourcer et qui seront d’autant plus nombreux à recruter qu’il existe de cas d’usages de clés cryptographiques au sein de l’organisation. L’appel à des expertises externes sera alors très profitable et difficile à éviter.
Les KMS, une solution essentielle pour la gestion sécurisée des clés de chiffrement
En conclusion, les KMS sont une solution essentielle pour gérer de manière sécurisée les clés de chiffrement de votre entreprise. Tant pour les grandes entreprises disposant de nombreux appareils ou systèmes chiffrés, ou une petite entreprise rencontrant le même type de problématiques, un KMS peut grandement aider à centraliser et à sécuriser la gestion des clés crypto.
A titre d’exemple, prenons le cas d’une entreprise de fret. Celle-ci doit gérer de nombreux composants dans les véhicules comme des capteurs pour s’assurer du respect de la chaîne du froid ou simplement des appareils pour le suivi les produits. Ces objets se connectent à des réseaux publics ou d’entreprise, transmettent des données chiffrées, mais sont aussi mis à jour régulièrement. Il faut donc signer les firmware lors du déploiement d’une mise à jour, et s’assurer que les clés de chiffrement des données que transmettent les capteurs, pour s’assurer de leur intégrité et de leur confidentialité, sont bien stockées de manière sécurisées, mais aussi sont à disposition des opérateurs en cas de modification d’un capteur. Pour tous ces processus, à la fois pour les automatiser mais aussi pour faciliter le travail des opérateurs et s’assurer que chaque intervenant ne dispose d’un accès qu’aux clés qu’il utilise, le KMS sera particulièrement utile. L’outil se chargera de la génération des clés, ou de leur récupération si elles ont été générées de manière externe, puis de tout le reste des étapes du cycle de vie de la clé.
Il reste à noter que l’évaluation de la pertinence de cette technologie est à prendre au sérieux. Des études en amont ainsi qu’une procédure d’appel d’offre seront nécessaires pour s’assurer de la mise en place du bon outil. En réalisant ces procédures avec une vision précise sur les usages métiers, l’entreprise s’assurera de ne pas avoir à en changer par la suite.