Carte Intel SGX. Chaque serveur mérite son SGX



Permettez-moi de vous rappeler ce que sont les extensions Intel Software Guard . Comme son nom l'indique, le point ici est la sécurité. L'humanité a mis au point de nombreuses méthodes logicielles pour protéger son infrastructure informatique contre le code malveillant ou non autorisé, cependant, toutes ces méthodes ont leurs propres limites fondamentales. Pour les contourner, il est nécessaire que la protection commence au cœur même de l'ordinateur - son processeur et repose sur ses fonctionnalités.

En utilisant ce principe, Intel a développé Intel SGX Extensions - un ensemble d'instructions CPU qui permet aux applications de créer des enclaves, des zones protégées dans l'espace d'adressage de l'application, qui garantissent la confidentialité et l'intégrité même en présence de programmes malveillants avec des droits privilégiés.

Cet article concerne le nouveau matériel Intel SGX pour toute plate-forme de serveur - Intel SGX Card .

Les principes de fonctionnement des enclaves Intel SGX sont les suivants:

  • L'accès à la mémoire de l'enclave pour la lecture et l'écriture depuis l'extérieur de l'enclave est absent, quels que soient le niveau actuel des droits et le mode de fonctionnement du processeur.
  • Les enclaves du niveau de travail ne sont pas disponibles pour le débogage avec des débogueurs logiciels ou matériels. (Vous pouvez créer une enclave avec un attribut de débogage, dans lequel le débogueur Intel SGX peut afficher le contenu de l'enclave de la même manière qu'un débogueur standard. Ceci est fait pour augmenter la commodité du processus de développement logiciel.)
  • Il est impossible d'entrer dans un environnement enclave en utilisant des appels de fonction classiques, des transitions, des manipulations de registres ou avec la pile. La seule façon d'invoquer la fonction enclave est avec une nouvelle instruction qui effectue plusieurs contrôles de sécurité.
  • La mémoire de l'enclave est protégée à l'aide d'algorithmes de chiffrement standard avec protection de lecture. Si vous lisez la mémoire ou connectez les modules de mémoire à un autre système, vous ne pouvez obtenir que des données chiffrées.
  • La clé de chiffrement de la mémoire est modifiée de manière aléatoire à chaque changement de cycle d'alimentation (par exemple, lors du chargement, lors de la reprise du travail après le sommeil et l'hibernation). La clé est stockée à l'intérieur du CPU et n'est pas accessible de l'extérieur.
  • Les données sont enfermées dans des enclaves et ne sont disponibles que pour le code de cette enclave.

image
Intel SGX réduit considérablement la vulnérabilité du logiciel de périmètre

La solution Intel Software Guard Extensions a été introduite en 2016, depuis lors, un certain nombre de processeurs de serveurs Intel Xeon ont reçu son soutien, après quoi, à leur tour, un certain nombre des plus grands fournisseurs de cloud et fabricants de logiciels, tels que Alibaba Cloud, Baidu, IBM et Microsoft, ont estimé les avantages technologies et a commencé à le mettre en œuvre dans leurs services et produits. Cependant, il y avait un obstacle technique à la procession triomphale d'Intel SGX: les processeurs qui ne prennent pas en charge la technologie sont encore bien plus qu'un support. Intel SGX manque particulièrement de configurations multi-socket, qui sont souvent utilisées dans les services cloud et les centres de données.



La décision est venue sous un angle inattendu. Intel a un appareil appelé Intel Visual Compute Accelerator (VCA) , nous en avons brièvement parlé . Il s'agit d'un accélérateur spécialisé pour augmenter les performances de traitement du contenu multimédia, en fait - un serveur à part entière au format de carte PCIe x16, ses caractéristiques sont données dans la publication sur le lien ci-dessus. C'est VCA qu'ils ont décidé de prendre comme base, et après quelques améliorations - désactiver le cœur graphique, optimiser les fonctionnalités de sécurité, etc. - il s'est avéré que la carte Intel SGX, une carte équipée de trois processeurs prenant en charge les extensions Intel Software Guard, prête à assumer l'interaction avec les enclaves SGX - ce n'est plus requis du système hôte.

Sur cette même carte, vous pouvez décharger la charge exigeante en ressources, ce qui nécessite une protection supplémentaire. La plate-forme serveur standard 2U basée sur Intel Xeon Scalable prend en charge jusqu'à 4 cartes PCIe x16; Ainsi, sur un serveur, jusqu'à 12 processeurs peuvent fonctionner avec des données sensibles. Comme le montre la figure ci-dessus, la configuration de l'environnement pour les applications est devenue plus confortable et flexible, elles disposent à la fois de zones de mémoire simples et protégées, de cœurs de processeur avec et sans prise en charge SGX, etc.

La carte Intel SGX est une option pour un fournisseur de services numériques pour préparer son infrastructure pour les extensions Intel Software Guard sans attendre qu'Intel Xeon Scalable soit compatible avec cette technologie. Ce sera peut-être utile à quelqu'un.

Source: https://habr.com/ru/post/fr442668/


All Articles