SEC06-BP01 Gérer les failles - AWS Well-Architected Framework

SEC06-BP01 Gérer les failles

Analysez et éliminez fréquemment les failles de sécurité dans votre code, vos dépendances et votre infrastructure afin de vous protéger contre les nouvelles menaces.

Résultat souhaité : créer et gérer un programme de gestion des failles. Analysez et corrigez régulièrement les ressources telles que les instances Amazon EC2, les conteneurs Amazon Elastic Container Service (Amazon ECS) et les charges de travail Amazon Elastic Kubernetes Service (Amazon EKS). Configurez des fenêtres de maintenance pour les ressources gérées par AWS, par exemple les bases de données Amazon Relational Database Service (Amazon RDS). Utilisez l'analyse de code statique pour rechercher des problèmes courants dans le code source de l'application. Envisagez de tester la pénétration des applications web si votre organisation possède les compétences requises ou peut recruter de l'aide externe.

Anti-modèles courants :

  • L'absence de programme de gestion des failles.

  • L'application de correctifs système sans tenir compte de la gravité ni de l'évitement des risques.

  • Utilisation d'un logiciel dont la date de fin de vie (EOL) a été dépassée.

  • Déploiement du code en production avant de l'analyser afin de détecter tout problème de sécurité.

Avantages liés à l'instauration de cette bonne pratique :

Niveau de risque exposé si cette bonne pratique n'est pas instaurée : élevé

Directives d'implémentation

Un programme de gestion des failles comprend l'évaluation de la sécurité, l'identification des problèmes, l'établissement des priorités et la mise en œuvre des correctifs dans le cadre de la résolution des problèmes. L'automatisation est la clé pour analyser continuellement les charges de travail afin de détecter les problèmes, l'exposition involontaire du réseau et la mise en œuvre de mesures correctives. L'automatisation de la création et de la mise à jour des ressources permet de gagner du temps et de réduire le risque d'erreurs de configuration, ce qui crée d'autres problèmes. Un programme de gestion des failles bien conçu doit également tenir compte des tests de vulnérabilité pendant les étapes de développement et de déploiement du cycle de vie du logiciel. L'implémentation de la gestion des failles pendant le développement et le déploiement réduit les risques d'avoir une vulnérabilité dans votre environnement de production.

L'implémentation d'un programme de gestion des failles nécessite une bonne compréhension du modèle de responsabilité partagée AWS et de la façon dont cela affecte vos charges de travail spécifiques. Dans le cadre du modèle de responsabilité partagée, AWS est responsable de la protection de l'infrastructure du AWS Cloud. Cette infrastructure se compose de matériels, de logiciels, de réseaux et d'installations exécutant les services du AWS Cloud. Vous êtes responsable de la sécurité dans le cloud, par exemple des données réelles, de la configuration de la sécurité et des tâches de gestion des instances Amazon EC2. Vous devez également vérifier que les objets Amazon S3 sont classés et configurés correctement. Votre approche en matière de gestion des failles peut également varier selon les services que vous utilisez. Par exemple, AWS gère l'application des correctifs pour notre service de base de données relationnelle gérée, Amazon RDS, mais vous êtes responsable de l'application des correctifs dans les bases de données auto-hébergées.

AWS offre une gamme de services pour vous aider dans le cadre de votre programme de gestion des failles. Amazon Inspector analyse continuellement les charges de travail AWS afin d'identifier les problèmes de logiciels et les accès réseau involontaires. Le Gestionnaire de correctifs d'AWS Systems Manager permet de gérer l'application des correctifs sur vos instances Amazon EC2. Amazon Inspector et Systems Manager peuvent être consultés dans AWS Security Hub, un service de gestion de la situation de sécurité dans le cloud qui aide à automatiser les contrôles de sécurité AWS et à centraliser les alertes de sécurité.

Amazon CodeGuru permet d'identifier les problèmes potentiels dans les applications Java et Python en utilisant l'analyse de code statique.

Étapes d'implémentation

  • Configurez Amazon Inspector : Amazon Inspector détecte automatiquement les instances Amazon EC2 qui viennent d'être lancées, les fonctions Lambda et les images de conteneur éligibles envoyées dans Amazon ECR, et il les analyse immédiatement afin d'identifier les problèmes de logiciels, les défauts potentiels et tout exposition involontaire du réseau.

  • Analysez le code source : rechercher les problèmes et les défauts dans les bibliothèques et les dépendances. Amazon CodeGuru peut analyser et recommander des mesures correctives pour les problèmes de sécurité courants dans les applications Java et Python. La Fondation OWASP publie une liste des outils d'analyse de code source (également appelés outils SAST).

  • Implémentez un mécanisme permettant d'analyser et de corriger votre environnement existant, ainsi qu'une analyse dans le cadre d'un processus de création de pipeline CI/CD : implémentez un mécanisme pour analyser et corriger les problèmes dans vos dépendances et systèmes d'exploitation afin de garantir votre protection contre les nouvelles menaces. Exécutez ce mécanisme régulièrement. La gestion des failles logicielles est essentielle pour comprendre où vous devez appliquer les correctifs ou résoudre les problèmes logiciels. Privilégiez la correction des problèmes de sécurité potentiels en intégrant rapidement les évaluations des vulnérabilités à votre pipeline d'intégration continue et de livraison continue (CI/CD). Votre approche peut varier en fonction des services AWS que vous utilisez. Pour vérifier l'absence de problèmes potentiels dans le logiciel exécuté dans les instances Amazon EC2, ajoutez Amazon Inspector à votre pipeline pour vous alerter et arrêter le processus de construction si des problèmes ou des défauts potentiels sont détectés. Amazon Inspector surveille les ressources en continu. Vous pouvez également utiliser des produits open source tels que OWASP Dependency-Check, Snyk, OpenVAS, des gestionnaires de packages et des outils AWS Partner pour la gestion des failles.

  • Utilisez AWS Systems Manager : vous êtes responsable de la gestion des correctifs pour vos ressources AWS, notamment les instances Amazon Elastic Compute Cloud (Amazon EC2), les Amazon Machine Images (AMI) et d'autres ressources de calcul. Le Gestionnaire de correctifs AWS Systems Manager automatise le processus d'application de correctifs aux instances gérées avec des mises à jour liées à la sécurité et d'autres types de mises à jour. Le Gestionnaire de correctifs peut être utilisé pour appliquer des correctifs sur les instances Amazon EC2 pour les systèmes d'exploitation et les applications, dont les applications Microsoft, les packs de service Windows et les mises à niveau mineures pour les instances basées sur Linux. Outre Amazon EC2, le Gestionnaire de correctifs peut également être utilisé pour corriger les serveurs sur site.

    Pour obtenir la liste des systèmes d'exploitation compatibles, consultez Systèmes d'exploitation compatibles dans le guide utilisateur Systems Manager. Vous pouvez analyser les instances pour afficher uniquement un rapport sur les correctifs manquants, ou vous pouvez analyser et installer automatiquement tous les correctifs manquants.

  • Utilisez AWS Security Hub : Security Hub fournit une vue complète de votre situation de sécurité dans AWS. Il collecte des données de sécurité dans plusieurs services AWS et communique ces découvertes dans un format normalisé, ce qui vous permet d'établir l'ordre de priorité des découvertes en matière de sécurité dans les services AWS.

  • Utilisez AWS CloudFormation : AWS CloudFormation est un service d'infrastructure en tant que code (IaC) qui permet la gestion des failles en automatisant le déploiement des ressources et en normalisant l'architecture des ressources sur plusieurs comptes et environnements.

Ressources

Documents connexes :

Vidéos connexes :