La protection de Secret Zero ne nécessite plus de ceinture noire en sécurité

La protection de Secret Zero ne nécessite plus de ceinture noire en sécurité


Alors que les pressions sur les développeurs continuent de s’intensifier, l’intégration de la sécurité du code et des données directement dans la base de code ne doit plus être une préoccupation en raison des progrès de la technologie informatique confidentielle dans le cloud public. Le défi du cryptage est de savoir comment distribuer les clés plutôt que des problèmes avec les algorithmes. Auparavant, pour la plupart des systèmes, il fallait encore un secret pour obtenir les clés d’un gestionnaire de clés, et ce secret est la racine de la confiance. Le problème de la protection du code et des secrets des opérations a été résolu en construisant le secret zéro – un secret principal protégeant tous les autres secrets – directement dans le code. Outre le travail impliqué dans la construction d’un tel système de secrets en cascade et les longueurs nécessaires pour protéger le secret zéro, l’effort global a laissé un seul point de vulnérabilité ou d’échec considérable. Si quelqu’un accède au zéro secret, le reste est comme un château de cartes. Un tel scénario n’est pas purement hypothétique. C’est exactement ce qui s’est passé dans le cas de la brèche dévastatrice des vents solaires.

Protéger le zéro secret

Une façon de protéger le zéro secret consiste à rendre le code d’application illisible. C’est maintenant plus important que jamais. Cela est encore plus compliqué, car les applications doivent être conçues pour un déploiement mobile et cloud, une évolutivité complète et une flexibilité multi-cloud. Cela a été principalement réalisé grâce à l’obscurcissement. Mais même lorsque le code est obscurci, un pirate informatique dédié peut toujours lire le code et trouver le zéro secret. Les technologues de la blockchain ont reconnu cette vulnérabilité et se sont tournés vers le calcul multipartite (MPC) pour réduire l’écart en distribuant la clé privée sur plusieurs ordinateurs, obligeant un attaquant à compromettre chacun simultanément pour y accéder. Même cette approche a été considérée comme vulnérable, et les organisations déplacent MPC vers les enclaves sécurisées de l’informatique confidentielle dans les clouds publics pour combler l’écart.

L’informatique confidentielle ajoute de nouvelles fonctionnalités de sécurité matérielle pour aider à résoudre ces problèmes. Chaque processeur a maintenant une clé intégrée. Plutôt que d’intégrer le zéro secret dans le code, les développeurs peuvent demander au processeur de générer un hachage de leur code et de le signer numériquement. Lorsque la signature est validée, elle fournit une attestation que le code n’a pas été falsifié. Un processus de libération de clé basé sur une attestation matérielle permet d’utiliser la clé comme un jeton. Cette approche combine le verrouillage de la clé avec une attestation précieuse afin que les développeurs bénéficient essentiellement de deux avantages avec la même solution.

L’informatique confidentielle devient pratique

Pour compenser les exigences précédentes de création ou de modification de code et de processus pour fonctionner dans les environnements informatiques confidentiels désormais largement déployés des clouds publics, la nouvelle technologie rend son utilisation transparente, de sorte qu’aucun développement spécial n’est requis. Certaines de ces technologies peuvent également rendre les déploiements entièrement portables dans les différents environnements informatiques confidentiels utilisés par différentes infrastructures de cloud public. De cette façon, une capacité de déploiement multi-cloud existe dès le départ et ne nécessite pas de travail supplémentaire. Cette portabilité s’étend également de sorte que le même code ou la même charge de travail puisse utiliser les enclaves sécurisées dans les environnements de cloud privé et sur site.

Comme d’autres technologies ont aidé les développeurs de logiciels, tels que les microservices, les bibliothèques, les hubs de développement, les API et les gestionnaires ou passerelles d’API, l’utilisation de l’informatique confidentielle pour garantir la sécurité du code permet de réduire la charge de travail des développeurs. Ces technologies favorisent l’innovation et permettent aux développeurs de se concentrer davantage sur les caractéristiques et les fonctionnalités que sur les mécanismes de garde. Bien sûr, d’autres forces et exigences ajoutent au stress et à la demande des développeurs, donc en avoir pour compenser une certaine pression est un grand avantage

Combler les lacunes de chiffrement

L’informatique confidentielle permet également de réduire la complexité et de travailler sur le côté opérationnel. À l’heure actuelle, la plupart des organisations dépendent du chiffrement pour protéger les données, et même le code, pendant leur stockage (données au repos) ou pendant leur transmission (données en mouvement). Bien que ces mesures soient sécurisées, n’entraînent que peu ou pas de pénalités en termes de performances ou d’échelle et soient relativement faciles à mettre en œuvre, elles sont confrontées à deux problèmes principaux. Avant tout, ils ne protègent que deux des trois états des données et du code : au repos et en mouvement. Bien que généralement peu discutées, les données au moment de l’exécution (exécution) sont largement ouvertes aux initiés malhonnêtes, aux tiers ou aux attaquants car, pour qu’elles soient exploitées, les données doivent être en clair. Cette lacune de chiffrement devient une préoccupation croissante, et son existence n’a pas échappé à l’attention d’attaquants et de pirates plus sophistiqués. Deuxièmement, la plupart des organisations sont confrontées à une jungle complexe et potentiellement déroutante de schémas de chiffrement. De ce fait, il est parfois difficile de savoir quel mécanisme de chiffrement protège quels actifs. Des questions telles que la façon dont les clés sont conservées et protégées et où le cryptage se termine sont parfois difficiles, voire impossibles, à répondre. Un adage de sécurité séculaire est que la complexité a tendance à saper la sécurité – si la sécurité est trop difficile, elle sera sapée ou inefficace.

L’informatique confidentielle résout ce problème de deux manières. Premièrement, l’informatique confidentielle peut verrouiller les données et le code pendant l’exécution, de sorte qu’aucune partie non autorisée n’a accès à ce qui se trouve dans le processeur ou la mémoire, même si elle a un accès root au serveur. En plus de protéger un zéro secret et d’assurer l’immuabilité et l’attestation, l’informatique confidentielle peut même empêcher la visualisation du code. Ceci est particulièrement important dans les applications propriétaires de grande valeur et celles qui utilisent des algorithmes d’IA ou d’apprentissage automatique précieux. Deuxièmement, certaines technologies complémentaires qui éliminent les exigences de code informatique confidentiel et de modifications de processus peuvent également être exploitées pour étendre le chiffrement d’exécution aux données en transit et au repos. Le résultat permet un mécanisme de chiffrement unifié pour tous les états de données et de code. Une telle approche libère à la fois le développement et les opérations de la mise en œuvre de la protection des données et du code.

En savoir plus : Un autre algorithme de chiffrement destiné à protéger contre les attaques quantiques mord la poussière

Nouvelle protection essentielle pour l’IA, l’apprentissage automatique et le MPC

Le développement nécessite des tests et des ajustements à l’aide d’ensembles de données réels dans le cas croissant de l’apprentissage automatique et des algorithmes d’IA. Les algorithmes AI, ML peuvent être protégés et conservés sous le contrôle total de leur propriétaire grâce à l’utilisation de MPC dans un environnement informatique confidentiel. Les partenaires ou les clients peuvent laisser les développeurs tester et ajuster les algorithmes sur leurs données propriétaires sans perte de contrôle ou sans que les développeurs ne voient réellement les données. Inversement, les développeurs peuvent ouvrir leur code à diverses parties pour exécuter et ajuster le code du monde réel sans perdre le contrôle des algorithmes propriétaires ou sans que d’autres parties aient la possibilité de voir le code.

Les environnements informatiques confidentiels dans le cloud public peuvent changer la donne pour le développement et les opérations, favorisant une plus grande innovation et une plus grande disponibilité des applications. Plutôt que d’intégrer la sécurité dans le processus de développement et de déploiement pour garantir l’immuabilité et protéger les données et le code propriétaires, les technologues peuvent compter sur la sécurité renforcée des environnements informatiques confidentiels. Le résultat peut être de meilleurs environnements de production et une accélération de l’innovation des applications.

Comment pensez-vous que l’utilisation de l’informatique confidentielle peut révolutionner le SecDevOps ? Dites-nous sur Facebook, Twitteret LinkedIn.

EN SAVOIR PLUS SUR L’INNOVATION DANS LE CLOUD

Leave a Comment