Pour sécuriser les machines virtuelles, les conteneurs, les Kubernetes, etc., il est important d’avoir une bonne compréhension des problèmes de sécurité qui affectent les workloads dans le Cloud pour mettre ensuite en place les solutions pour assurer une sécurité efficace. Les explications de Mathieu Vialetay, ingénieur avant-ventes, France et Europe du Sud chez SentinelOne.
Selon Gartner, la plupart des entreprises utilisent aujourd’hui plus d’un service de Cloud public et, dans de nombreux cas, elles investissent davantage dans l’utilisation d’applications cloud-natives basées sur des conteneurs. Le passage au Cloud computing apporte des avantages considérables à l’entreprise, mais accroît également les facteurs de risque allant au-delà de ce que peut prendre en charge la cybersécurité traditionnelle. Pour sécuriser les machines virtuelles, les conteneurs, les Kubernetes, etc. – que ce soit dans le Cloud public, privé ou hybride – il est important d’avoir une bonne compréhension des problèmes de sécurité qui affectent les workloads dans le Cloud. Dès lors, quels sont les défis et les solutions pour assurer une sécurité efficace dans le Cloud ?
Qu’est-ce que la sécurité dans le Cloud ?
La sécurité du Cloud vise à garantir la confidentialité, l’intégrité et la disponibilité des données, des applications et des services situés sur des serveurs, contrôlés partiellement ou entièrement par un ou plusieurs tiers.
Pour qu’une organisation, qui utilise des fournisseurs et/ou des services dans le Cloud, puisse sécuriser ses données, ses services et garantir la continuité de ses activités, elle doit bien comprendre que la nature du risque est tout à fait différente de la gestion de données conservées sur un serveur traditionnel sur site, généralement gérée, contrôlée et sécurisée par l’entreprise.
A chaque fois que l’on utilise une architecture dans le Cloud contenant un élément d’un service public dans le Cloud, le propriétaire des données n’a ni le contrôle, ni l’accès au matériel sous-jacent. En outre, il doit généralement communiquer avec le fournisseur ou le service de Cloud computing via l’Internet public, et non via un intranet local et un pare-feu. Enfin, les conteneurs eux-mêmes présentent également des challenges uniques en matière de sécurité.
Mais, compte tenu de ces différentes architectures, les organisations doivent se poser les bonnes questions en matière de sécurité, notamment sur le fournisseur de services dans le Cloud, le propriétaire des données (ou le client/utilisateur), la communication et la transmission de données entre ces deux acteurs et le « software container ».
Les principaux défis de la sécurité dans le Cloud
Pour se faire une idée précise des défis à relever pour sécuriser le Cloud, il suffit d’observer les exemples récents.
Supposons que les données d’une entreprise soient hébergées sur plusieurs serveurs qui échappent à son contrôle. En général, les fournisseurs de Cloud public hébergent plusieurs “locataires” sur le même serveur. Bien que tout fournisseur jouissant d’une bonne réputation assure en général un bon isolement des données entre les différents locataires, il est possible qu’une vulnérabilité dans le computing stack soit découverte et permette à un hacker de compromettre les Clouds privés gérés par ce fournisseur.
“Il est possible qu’une vulnérabilité dans le computing stack soit découverte et permette à un hacker de compromettre les Clouds privés gérés par ce fournisseur.”
Imaginons désormais qu’un tel bug ait été exploité sur un serveur distant appartenant au fournisseur de Cloud computing de l’entreprise concernée. Les questions que doit se poser l’équipe de sécurité dans un tel scénario sont les suivantes : quelle visibilité avons-nous actuellement sur ce qui se passe sur nos workloads ? Quels outils avons-nous mis en place pour nous alerter en cas d’accès non autorisé ou pour protéger l’entreprise contre les menaces sur nos conteneurs après la découverte d’une telle vulnérabilité ?
La campagne mondiale de hacking “Cloud Hopper”, perpétrée par un groupe de pirates chinois APT10, a soulevé bien d’autres questions sur la sécurité dans le Cloud. Les données confidentielles de nombreuses organisations de premier plan, comme Philips ou Rio Tinto, ont été piratées via une douzaine de fournisseurs de services Cloud managés dont HP et IBM. Les pirates ont injecté des “logiciels malveillants sur mesure”, ont exploité le DNS dynamique et ont exporté de grandes quantités de données. Le déploiement de solutions EPP, conçues principalement pour protéger les appareils des utilisateurs finaux comme les ordinateurs portables ou de bureau, ne semble pas être la solution. On estime même que l’utilisation de ce type de solutions, conçues pour les terminaux, fait courir un risque encore plus grand aux données et applications d’entreprise dans une situation de Cloud computing.
Mais les problèmes de sécurité du Cloud ne s’arrêtent pas là… Gartner a déclaré que, d’ici à 2023, la moitié des incidents de sécurité sur le Cloud proviendra probablement d’une “mauvaise gestion des identités, des accès et des privilèges”. La faiblesse des contrôles d’accès, due à une mauvaise configuration, peut être exploitée par des acteurs externes ou peut conduire à des fuites de données involontaires mais néanmoins extrêmement dommageables.
“D’ici à 2023, la moitié des incidents de sécurité sur le Cloud proviendra probablement d’une mauvaise gestion des identités, des accès et des privilèges”
Enfin, les vulnérabilités ou la mauvaise configuration dans un stack de conteneurs représentent un problème technique difficile à résoudre pour les équipes de sécurité, certains agents n’étant pas expert en matière de technologie Docker et Kubernetes.
Comment résoudre le problème de la sécurité dans le Cloud ?
Le type de problèmes évoqués précédemment ne peut être géré que par une visibilité et un contrôle adapté des workloads conteneurisées.
Les protections avant exécution, qui scannent à la fois l’hôte et garantissent que celui-ci et l’image du conteneur ne sont pas infectés, sont importantes, mais pas suffisantes, car elles ne protègent pas le conteneur des attaques une fois qu’il est utilisé ou n’offrent aucune possibilité à l’équipe SOC de traquer les menaces ou de réagir aux incidents.
“Les protections avant exécution, qui scannent à la fois l’hôte et garantissent que celui-ci et l’image du conteneur ne sont pas infectés, sont importantes, mais pas suffisantes”
Une meilleure solution consiste à utiliser un moteur de contrôle automatisé des applications. Cette approche élimine toute gestion manuelle des listes d’autorisation (ou “listes blanches”) et protège les workloads dans le Cloud en empêchant les modifications non autorisées et l’abus ultérieur d’outils légitimes comme Weave Scope.
Les bugs sur les conteneurs Linux sont mieux pris en compte grâce à des capacités de détection comportementale sur les workloads. Il est donc essentiel de disposer d’une protection EDR et d’exécution pour les serveurs dans le Cloud. Une telle solution doit être agile afin de ne pas nuire aux performances et doit idéalement offrir des fonctionnalités comme un Secure Remote Shell, une action d’isolation du réseau d’un endpoint, et une possibilité de récupérer des fichiers spécifiques.
En ce qui concerne la sécurité côté client, c’est-à-dire des propriétaires de données, outre la sécurité des terminaux, il est essentiel que l’accès des utilisateurs soit correctement géré et sécurisé. Permettre aux administrateurs ou aux autres utilisateurs d’accéder aux données critiques sur les plateformes cloud est une brèche qui ne demande qu’à s’ouvrir. La gestion des identités et des accès (IAM) aidera les entreprises à définir et à gérer les rôles et les droits d’accès de chaque utilisateur. Le contrôle d’accès basé sur les rôles (RBAC) doit être mis en œuvre avec les clusters Kubernetes. La protection des workloads avec le RBAC aidera les équipes SOC à traquer les abus, qu’il s’agisse de menaces internes ou d’attaques externes menées via le vol d’identifiants.
Concernant la protection de la communication entre le Cloud et le client, il est important de s’assurer que toutes les données soient cryptées. Ainsi, même si une fuite de données se produit, les informations seront inutilisables pour les hackers. Par ailleurs, en cas d’attaque par déni de service (DDoS), il est essentiel de mettre en place un plan de continuité des activités. Celui-ci peut inclure des capacités supplémentaires pour faire face à un trafic réseau plus important (plus facile dans les situations de clouds publics ou hybrides) ou la mise en place d’un service de mitigation d’attaques DDoS, les deux pouvant être proposés par un fournisseur Cloud.
La sécurité dans le Cloud exige une approche différente de la sécurité des endpoints, car une entreprise doit protéger à la fois les dispositifs qu’elle contrôle et ceux qu’elle ne contrôle pas. Les serveurs qui échappent à son contrôle direct peuvent exécuter un stack logiciel présentant des vulnérabilités impossibles à détecter ou à corriger, et ces serveurs peuvent être gérés par un nombre inconnu de personnes.
Bien sûr, il faut s’attendre à ce que tout fournisseur de services cloud de bonne réputation prenne ses propres responsabilités en matière de sécurité, mais le cœur du problème est que les menaces augmentent dès qu’on a affaire à des dispositifs et du personnel tiers. De plus, les conteneurs déployés peuvent eux-mêmes contenir des bugs ou des erreurs de configuration. Afin de garantir la sécurité des workloads dans le cloud, il est essentiel d’informer et de sensibiliser les équipes de sécurité sur les points mentionnés ci-dessus et de déployer une solution de protection des workloads adaptée.