Sécurité des conteneurs

Sécurisez votre environnement de conteneurs sur GCP

Présentation

La conteneurisation permet aux équipes de développement d'agir rapidement, de déployer efficacement des logiciels et d'œuvrer à une échelle sans précédent. Comme les entreprises créent de plus en plus de charges de travail en conteneur, la sécurité doit être intégrée à chaque étape du cycle de développement et de déploiement. Découvrez comment sécuriser votre environnement de conteneurs sur GCP dans trois domaines critiques.

Sécurité de l'infrastructure

La sécurité de votre infrastructure dépend de la capacité de votre plate-forme de gestion des conteneurs à proposer les fonctionnalités de sécurité appropriées. Kubernetes comprend des fonctionnalités de sécurité permettant de protéger les identités, les codes secrets et le réseau. Kubernetes Engine utilise des produits GCP natifs, tels que Cloud IAM, Cloud Audit Logging et Virtual Private Cloud afin que vos charges de travail bénéficient du meilleur de Google en matière de sécurité.

Chaîne d'approvisionnement logicielle

Pour sécuriser la chaîne d'approvisionnement des logiciels, vous devez vous assurer que les images de conteneurs peuvent être déployées en toute sécurité. Cela vous permet de vérifier que ces dernières ne présentent pas de failles et que les images créées ne sont pas modifiées avant d'être déployées.

Sécurité de l'environnement d'exécution

La sécurité de l'environnement d'exécution vous permet d'identifier un conteneur agissant de manière malveillante en production et de prendre les mesures nécessaires pour protéger votre charge de travail.

L'exécution de conteneurs vous permet d'adopter un modèle de sécurité foncièrement différent

Gestion des correctifs et immuabilité simplifiées

Gestion des correctifs et immuabilité simplifiées

Comme les conteneurs sont conçus pour être immuables, vous devez déployer une nouvelle image pour apporter des modifications. Vous pouvez simplifier la gestion des correctifs en recompilant vos images régulièrement. Les correctifs seront ainsi récupérés lors du prochain déploiement d'un conteneur. Obtenez une vue d'ensemble de votre environnement en procédant à des examens réguliers de la sécurité des images.

Surface d'attaque réduite

Surface d'attaque réduite

Les conteneurs sont conçus pour s'exécuter sur un système d'exploitation hôte bien plus petit que celui utilisé pour des VM, puisque plus d'éléments sont empaquetés directement dans l'application. Ce système d'exploitation hôte minimal limite la surface d'attaque potentielle de votre charge de travail.

Isolation des ressources et des charges de travail

Isolation des ressources et des charges de travail

Les conteneurs vous permettent de facilement limiter des ressources, telles que des volumes de stockage, à certains processus à l'aide de groupes de contrôle et d'espaces de nommage. Grâce à des technologies comme gVisor, vous pouvez isoler vos charges de travail de manière logique dans un sous-environnement de bac à sable de VM, distinct de celui des autres applications.

Sécurité de l'infrastructure

Garantir la sécurité de l'infrastructure des conteneurs consiste à s'assurer que les développeurs disposent des outils dont ils ont besoin pour concevoir des services en conteneurs en toute sécurité. Ces fonctionnalités sont généralement intégrées aux systèmes d'orchestration de conteneurs, tels que Kubernetes. Si vous utilisez Kubernetes Engine, ces fonctionnalités sont disponibles en natif, en plus des autres produits Google Cloud.

Identité et autorisation

Dans Kubernetes Engine, vous pouvez gérer l'accès à vos projets avec Cloud IAM, ainsi que l'accès à vos clusters et à vos espaces de nommage à l'aide du contrôle des accès basé sur les rôles.

Journaux d'audit

Dans Kubernetes, les journaux d'audit de l'API sont automatiquement récupérés. Dans Kubernetes Engine, Cloud Audit Logging les enregistre automatiquement pour vous.

Mise en réseau

Dans Kubernetes Engine, créez une règle de réseau pour gérer les communications entre les pods de votre cluster. Utilisez des clusters privés pour les adresses IP privées, et intégrez les ressources Kubernetes Engine dans un VPC partagé.

Conformité

Kubernetes Engine présente de nombreuses certifications de conformité, telles que ISO 27001, ISO 27017, ISO 27108, HIPAA, et PCI DSS.

Système d'exploitation hôte minimal

Kubernetes Engine utilise Container-Optimized OS (COS) par défaut, un système d'exploitation sur mesure optimisé pour l'exécution de conteneurs. COS est géré par Google en Open Source.

Composants à jour

Dans Kubernetes Engine, la dernière version de Kubernetes est automatiquement installée sur les instances maîtres, et vous pouvez utiliser la mise à jour automatique des nœuds.

Chaîne d'approvisionnement logicielle

Pour la chaîne d'approvisionnement logicielle, vous devez savoir exactement quels sont les éléments déployés dans votre environnement afin de pouvoir contrôler intégralement vos applications, du code à l'image en passant par le déploiement. Ces fonctionnalités sont généralement intégrées à votre pipeline CI/CD et à votre registre de conteneurs (comme Google Container Registry). Elles sont utilisées en tant que test d'admissibilité avant le déploiement de vos conteneurs en production.

Images de base sécurisées

Google Container Registry fournit des images de base Debian et Ubuntu, gérées par Google via l'application régulière de correctifs et la réalisation de tests fréquents.

Analyse des failles

Google Container Registry possède une fonction d'analyse des failles, qui vous permet de détecter dans vos images et packages les failles connues figurant dans la base de données Common Vulnerabilities and Exposures (CVE).

Règles de déploiement

Dans Kubernetes Engine, limitez les éléments déployés dans votre environnement en fonction des attestations des images à l'aide de l'autorisation binaire.

Compilations régulières

Vous pouvez régulièrement recompiler et redéployer vos conteneurs afin de bénéficier des derniers correctifs progressivement déployés dans votre environnement.

Sécurité de l'environnement d'exécution

Pour assurer la sécurité de l'environnement d'exécution des conteneurs, votre équipe chargée de la sécurité doit être en mesure de détecter les menaces de sécurité sur les conteneurs s'exécutant dans votre environnement et d'y répondre. Ces fonctionnalités sont généralement intégrées à vos outils de gestion des opérations de sécurité.

Surveillance

Stackdriver est intégré à Kubernetes Engine afin de faciliter l'analyse des journaux. Vous pouvez également écrire des événements de sécurité dans Cloud Security Command Center (Cloud SCC).

Détection d'activités anormales

Tirez parti des solutions de nos partenaires (dont font partie Aqua Security, Capsule8, StackRox, Sysdig Secure et Twistlock) pour détecter les éventuelles attaques et afficher les résultats dans Cloud SCC.

Isolation

Empêchez qu'un conteneur malveillant n'affecte les autres. Profitez d'une isolation de sécurité renforcée pour les conteneurs grâce à gVisor, un environnement d'exécution de bac à sable.

Ressources

Découvrez plus d'informations relatives à la sécurité des conteneurs.

Présentation de la sécurité dans Kubernetes Engine

Guide de renforcement de la sécurité dans Kubernetes Engine

Ensemble d'articles de blog relatifs à la sécurité des conteneurs

Référentiel NIST SP 800-190 : Application Container Security Guide (Guide sur la sécurité des conteneurs d'applications)

Conférence KubeCon 2017 : Shipping in pirate-infested waters (Assurer la sécurité d'un environnement contre le piratage)

Google Cloud

Commencer

Développez vos connaissances et créez des applications

Vous débutez sur GCP ? Bénéficiez d'un crédit de 300 $ pour essayer les produits GCP gratuitement.

Vous avez encore besoin d'aide ?

Nos experts peuvent vous aider à concevoir la solution adaptée à vos besoins ou à trouver le bon partenaire.