Détection des menaces liées aux containers
Une majeure partie des entreprises déclare qu’un pourcentage important de leurs workloads est hébergé dans des containers. C’est la raison pour laquelle la détection des menaces liées aux containers est devenue une préoccupation essentielle pour les organisations de tous types.
Cependant, il s’agit d’un véritable défi prioritaire difficile à relever. Les menaces pour la sécurité des containers se présentent sous de nombreuses formes, des menaces pour la sécurité du moteur d’exécution aux menaces réseau, en passant par celles pour l’image des containers et bien d’autres encore. Leur détection nécessite d’évaluer votre pile logicielle en containers à plusieurs niveaux.
Cet article passe en revue les différents types de menaces de sécurité liées aux containers sur lesquelles vous devez vous pencher afin de garder une longueur d’avance sur les risques de sécurité susceptibles d’avoir un impact sur les workloads en containers, où qu’elles se trouvent.
Qu’est-ce que la détection des menaces liées aux containers ?
La détection des menaces liées aux containers est un processus qui consiste à identifier tout type de risque de sécurité susceptible d’avoir un impact sur les workloads hébergés dans des containers. Qu’il s’agisse de menaces d’élévation de privilèges, de logiciels malveillants, de configurations réseau non sécurisées ou autres, la détection des menaces liées aux containers apporte une protection étendue contre les différents types de menaces de sécurité qui peuvent exister dans un environnement d’applications en containers.
Approches vis-à-vis de la détection des menaces liées aux containers
Étant donné que les menaces pour la sécurité des containers se présentent sous de nombreuses formes, leur détection nécessite d’évaluer plusieurs catégories de menaces potentielles à différents niveaux de votre environnement. Voici les principaux domaines de risques à prendre en compte.
Sécurité du moteur d’exécution des containers
Une menace pour la sécurité du moteur d’exécution des containers est tout type de menace qui affecte un container une fois celui-ci en cours d’exécution.
Il existe deux vecteurs principaux par lesquels les menaces du moteur d’exécution peuvent apparaître :
- Images de containers corrompues : les logiciels malveillants présents dans les images de containers peuvent générer des menaces actives une fois les containers déployés.
- Environnement du moteur d’exécution non sécurisé : Des configurations non sécurisées, comme celles qui permettent d’autoriser des containers à fonctionner en mode privilégié ou à leur donner accès à des données sensibles, peuvent conduire à des violations.
Pour qu’une menace du moteur d’exécution apparaisse, une des conditions suivantes est généralement nécessaire. Dans de nombreux cas, cependant, les deux sont présents : par exemple, une image de container corrompue peut introduire un logiciel malveillant dans un environnement de moteur d’exécution, et l’impact de ce logiciel malveillant peut être aggravé par des configurations non sécurisées qui ne parviennent pas à isoler le workload compromis.
Les menaces du moteur d’exécution peuvent se matérialiser d’autres manières, comme une vulnérabilité de sécurité dans le moteur d’exécution du container (le logiciel qui exécute les containers) ou une vulnérabilité au niveau de l’OS sur le serveur qui héberge le container. Néanmoins, ces menaces sont relativement rares comparé aux risques qui proviennent directement des containers ou de l’environnement dans lequel ils fonctionnent.
Détection de la sécurité du moteur d’exécution des containers
Comme la plupart des menaces de sécurité liées au moteur d’exécution des containers ont pour origine les images et/ou les configurations d’environnement non sécurisées, la principale stratégie de détection des menaces du moteur d’exécution consiste à analyser les images et les paramètres d’environnement.
L’analyse d’images de containers est un processus simple qui peut être réalisé par n’importe quel analyseur de container classique. Dans la plupart des cas, vous pouvez analyser n’importe quel type de container avec n’importe quel analyseur dont l’utilisation est assez répandue.
L’analyse des configurations d’environnement peut être plus complexe, car elle dépend de l’emplacement dans lequel vous exécutez vos containers. S’ils sont orchestrés par Kubernetes, vous aurez besoin d’un outil de détection des menaces du runtime capable d’analyser les différents types de configurations régissant Kubernetes. Si vous utilisez une autre solution d’orchestration, comme AWS ECS, vous aurez besoin d’un outil conçu pour analyser ce type d’environnement.
Vous devez également surveiller de façon continue les journaux, les métriques et (s’ils sont disponibles dans votre environnement de moteur d’exécution ou avec votre orchestrateur) les audits afin de détecter les menaces de sécurité du moteur d’exécution actives. À cette fin, des outils de surveillance comme Falco peuvent vous être utiles.
Sécurité réseau des containers
Les containers eux-mêmes hébergent uniquement des applications. Les ressources réseau sont externes aux containers. De plus, elles sont généralement gérées par un orchestrateur ou un service mesh distinct des containers eux-mêmes.
Cela étant, les configurations réseau non sécurisées peuvent avoir des conséquences importantes pour les workloads hébergés dans les containers. Les paramètres réseau qui n’isolent pas correctement les containers les uns des autres peuvent permettre à une brèche dans un container de se propager aux autres. Ils peuvent également faciliter l’accès d’un container compromis aux données sensibles appartenant à un autre container.
C’est pourquoi le réseau est un vecteur privilégié pour lancer et intensifier les attaques contre des containers. La détection des menaces provenant du réseau est donc un élément important de la détection des menaces liées aux containers dans son ensemble.
Détection des menaces réseau liées aux containers
Il n’existe pas d’approche unique pour la détection des menaces liées aux containers et qui sont liées aux réseaux. Les réseaux de containers peuvent être configurés de différentes manières, et l’architecture de votre réseau de containers peut varier considérablement en fonction de facteurs tels que l’orchestrateur que vous utilisez, le fait que vous exécutez vos containers dans le cloud ou on-premises, et l’utilisation d’un service mesh.
Cela signifie que, pour détecter efficacement les menaces réseau, vous aurez besoin d’un outil de détection des menaces liées aux containers capable d’interpréter les paramètres de configuration réseau, peu importe la plate-forme que vous utilisez pour exécuter vos containers.
Dans le même temps, vous devez déployer un outil capable d’analyser les données du réseau en temps réel pour détecter les menaces. Il est possible de détecter des activités comme le trafic malveillant d’un container à un autre ou les tentatives d’inonder le réseau de demandes illégitimes (qui pourraient avoir lieu dans le cadre d’une attaque DDoS) en identifiant les anomalies dans le comportement du réseau.
Pour qu’ils soient efficaces, les outils de détection des menaces réseau doivent cependant pouvoir identifier les véritables anomalies au sein d’environnements dans lesquels les configurations réseau changent constamment. Dans la plupart des cas, les affectations d’adresses IP, les configurations des équilibrages de charge et le nombre total de points de terminaison dans un environnement en containers sont mis à jour de façon continue, car les containers sont créés et détruits en réponse aux fluctuations de la demande.
C’est la raison pour laquelle il est difficile d’établir une base statique de l’activité « normale » du réseau et de mesurer les anomalies en fonction de celle-ci. Les outils doivent au contraire pouvoir déterminer des points de référence basés sur des configurations dynamiques et de corréler les modèles de trafic réseau avec d’autres sources de données (comme les journaux d’audit), dans le but de prendre des décisions éclairées sur ce qui constitue une véritable menace pour le réseau de containers et ce qui est une fluctuation normale du trafic.
Les menaces de sécurité contre les applications en containers peuvent se matérialiser de diverses manières. Les entreprises doivent être prêtes à toutes les détecter en adoptant une approche multidimensionnelle, une approche capable de faire apparaître les menaces, quelle que soit leur origine (images de containers, configurations du moteur d’exécution, configurations réseau ou autre).