Top 10 des bonnes pratiques de sécurité AWS

top 10 des bonnes pratiques de sécurité AWS

Top 10 des bonnes pratiques de sécurité AWS

AWS représente un tiers du marché mondial de l’infrastructure Cloud. Soit plus que Microsoft, Google et IBM réunis.

Les derniers chiffres de Canalys sur le marché de l’infrastructure Cloud sont sans appel. Il y a AWS (Amazon Web Services) et les autres. Le fournisseur de Cloud public se taille 33,8% de part de marché. Un niveau record à comparer au cumul des positions de Microsoft, Google et IBM évalué à 30,8%. L’ogre AWS règne donc sans partage sur le Cloud public.

Si de plus en plus d’entreprises font le choix de migrer vers une infrastructure Cloud pour profiter de nouvelles ressources et d’une puissance de stockage élastique, il n’en demeure pas moins que les administrateurs réseaux ne sont pas toujours formés à ces nouvelles technologies.

Tout comme les infrastructures traditionnelles et hybrides, le Cloud n’est pas un environnement complètement sécurisé. Les entreprises doivent appliquer une politique de sécurité rigoureuse pour profiter de cette nouvelle puissance sans augmenter leur risque de cyber-attaque.

Nous vous détaillons le Top 10 des bonnes pratiques de sécurité AWS que tout RSSI devrait suivre et respecter sur le long terme.

 

Le partage de responsabilité selon AWS

modèle de partage des responsabilités AWSAvant d’aborder les bonnes pratiques de sécurité AWS à respecter, il faut déjà connaître la politique de sécurité mise en place par les fournisseurs d’infrastructure Cloud. Ils ont une part de responsabilité dans la sécurité du Cloud mais leur périmètre est bien défini. Reste à la charge de l’utilisateur d’intervenir sur certains éléments pour assurer la sécurité de ses données.

On peut identifier 2 niveaux de responsabilités :

  • Responsabilité du fournisseur Cloud : assurer la sécurité de l’infrastructure Cloud en elle-même (serveurs physiques, stockage, accès au datacenter, réseau, base de données…). Il va s’appuyer sur des solutions de type pare-feu ou de reconnaissance d’empreintes par exemple.
  • Responsabilité du client AWS : assurer la sécurité de tous ce qui est déployé dans son infrastructure Cloud (services de bases comme le calcul, le réseau, le stockage, ses Cloud Workloads…). Il va définir les règles de son pare-feu, mettre en place une solution de chiffrement, de sauvegarde, restreindre les privilèges et les accès des utilisateurs.

Certaines règles de sécurité doivent donc être suivies par les entreprises pour diminuer le risque de cyber-attaques.

 

Top 10 des bonnes pratiques de sécurité AWS

 

  1. Contrôler les accès des utilisateurs

Lorsqu’une entreprise déploie son infrastructure sur AWS, elle doit penser à segmenter les utilisateurs en plusieurs niveaux. En effet, certains utilisateurs comme les développeurs vont déployer des services ou des serveurs virtuels. Ils n’auront donc pas besoin d’avoir accès à tous les logs qui apparaissent sur l’infrastructure. Il faut définir quels droits donner à chaque utilisateur. On peut en nommer 3 : opérationnel, administrateur et auditeur.

On peut citer l’auditeur qui aura uniquement besoin des droits en lecture. La solution Identity and Access Management (IAM) d’AWS permet de gérer facilement les politiques utilisateurs, les mots de passe, les clés d’accès, l’authentification, les autorisations à mettre en place…

La meilleure des politiques d’accès reste l’adoption de la pratique des « moindres privilèges » : donner accès seulement à ce que l’utilisateur a besoin.

On peut également configurer l’authentification à facteurs multiples. Une des recommandations est de désactiver le compte « root » qui est le compte administrateur par défaut et d’utiliser soit des périphériques spécifiques pour l’authentification multiple soit Google Authenticator disponible sur certaines applications. Il faut donc appliquer les mêmes bonnes pratiques de sécurité sur son environnement Cloud que sur son IT traditionnel.

 

  1. Segmenter le réseau

Une entreprise va avoir plusieurs environnements : préproduction, production, développement, test… et chacun doit être cloisonné. Pour cela, on peut utiliser un Virtual Private Cloud (VPC) par environnement pour cloisonner le réseau par « zones ». Il est recommandé d’utiliser toutes les fonctionnalités d’AWS et de modifier les configurations par défaut. Dans la majorité des cas, il subsiste des configurations où il n’y aura pas de contrôle d’accès entre « security group » ou entre sous-réseaux. Même si l’entreprise a pensé faire un réseau privé et public, s’il n’y a pas de contrôle d’accès elle obtiendra un seul réseau public.

Il est recommandé d’utiliser des « Jumpbox » ou « bastions » : machines qui seront ouvertes sur internet afin que les utilisateurs puissent accéder à l’infrastructure à partir de n’importe quel endroit. Ils pourront ensuite entrer dans le système et les sous-réseaux privés.

Également, les données utilisées en développement et en test doivent être anonymisées pour restreindre le risque de vol de données.

 

  1. Obtenir une visibilité par inventaire permanent

Il est très facile, à partir d’une console web, de déployer un nombre important de serveurs virtuels ou d’avoir des automatisations par interface de programmation sur AWS. Cependant, il est primordial d’avoir une visibilité et un inventaire détaillé des éléments déployés dans son infrastructure Cloud. Il y a quelques années, il fallait commander ses serveurs ce qui facilitait ce travail d’inventaire. Ensuite, avec la virtualisation, une certaine opacité s’est installée, les utilisateurs pouvant démarrer des machines virtuelles de leur côté. Aujourd’hui, le déploiement de nouveaux éléments est à la portée de tous. Il faut donc se doter d’un outil permettant d’obtenir un inventaire complet de son parc comme AWS config. Ses 20 règles permettent de savoir quels services sont utilisés et quels sont les déploiements en termes d’infrastructure. Les entreprises peuvent également utiliser Elastic Workload Protector qui intègre la détection automatique de tous les éléments du parc IT des entreprises, y compris les serveurs inactifs.

Une autre bonne pratique de sécurité pour faciliter son inventaire est d’utiliser les « tags » AWS. Ils permettront d’identifier quels sont les serveurs en production par exemple ou quels services ont été déployés. Ils sont également efficaces pour filtrer rapidement.

 

  1. Loguer les accès AWS

Il faut loguer tout ce qui se passe au niveau des applications ainsi que des API d’AWS. En effet, beaucoup d’éléments automatisés utilisent les API AWS pour agir sur l’environnement Cloud. De même, les flux réseaux peuvent être logués pour améliorer la visibilité.

Ces logs pourront être redirigés vers un Security Information Management System (SIEM) afin de détecter les comportements anormaux et obtenir des alertes sur des cyber-attaques ou des comportements déviants.

Les outils disponibles sur AWS pour mettre en place des logs sont :

  • AWS CloudTrail : logs d’accès
  • AWS CloudWatch : logs d’utilisations des ressources et application
  • Flow Logs : logs d’accès réseaux dans les sous-réseaux VPC

 

  1. Sécuriser les images et serveurs virtuels

Les images doivent être maintenues à jour avec les dernières versions des logiciels et des configurations de sécurité AWS. Mais cette action ne suffit pas si elle n’est pas complétée par la détection des vulnérabilités des serveurs virtuels. Les vulnérabilités devront être corrigées puis les serveurs seront remplacés par des images à jour. L’utilisation des « tags » AWS permettra de faciliter le traitement des images et serveurs virtuels afin de connaître quelles machines doivent être analysées.

Il est très simple de partager des images entres utilisateurs ou comptes AWS mais les données présentes sur les images sont également partagées.

Attention à bien planifier la gestion, le décommissionnement et le nettoyage de ces images pour éviter un stockage inutile d’images obsolètes.

Afin de détecter les vulnérabilités sur les serveurs virtuels, vous pouvez utiliser Amazon Inspector mais également Elastic Workload Protector. Pour connaître la différence entre ces deux solutions de sécurité Cloud, nous vous invitons à lire notre article Amazon Inspector VS Elastic Workload Protector.

 

  1. Gérer les clés

Plusieurs règles de sécurité AWS doivent être suivies comme la mise en place des rotations de clés, la suppression les anciennes clés et éviter de partager des clés d’API…

L’interface IAM d’AWS permet de faire de la délégation par rôle. Plutôt que de mettre une clé d’API sur une instance et de faire un script qui automatise, on peut définir un rôle au serveur virtuel pour qu’il soit capable de faire des actions prédéterminées dans l’infrastructure AWS. Par exemple, un serveur virtuel peut être programmé pour contrôler les sauvegardes.

Une autre solution est d’utiliser un serveur dédié plutôt que de partager les clés d’API.

En ce qui concerne l’utilisation de clés pour le chiffrage des données, AWS propose 2 solutions :

  • AWS CloudHSM qui est une solution HSM (Hardware Security Module)
  • AWS Key Management Service qui permet de gérer les clés et de faire de leur rotation automatiquement

 

  1. Chiffrer les données

Nous recommandons d’utiliser AWS S3 pour le chiffrement les logs en stockage persistant ou en volume EBS. Dans le cas de transport de données (données de l’entreprise vers AWS / entre services AWS / entre instances AWS) cette action doit être effectuée par un canal sécurisé afin d’assurer la confidentialité, l’intégrité et la non-répudiation.

Les règles de sécurité des infrastructures traditionnelles sont également applicables au Cloud avec des solutions de sauvegardes et de tests réguliers des restaurations tout comme le versionnage des données. De plus, lorsqu’on supprime un serveur virtuel, il faut être vigilant à ne pas supprimer automatiquement les données qu’il contient.

 

  1. Utiliser des certificats SSL/TLS

Il est recommandé d’utiliser des certificats SSL/TLS soit pour les services et applications des entreprises, soit pour les interactions entre les services d’AWS. On retrouve ici les mêmes problématiques traditionnelles de gestion de certificats ou de liste de révocations. Tout comme les recommandations d’utiliser les dernières versions des protocoles avec les dernières suites de chiffrement et notamment les suites de chiffrement fort intégrants des algorithmes AES.

AWS Certificate Manager permet de répondre à ce besoin. C’est une solution qui met en service, gère et déploie facilement des certificats Secure Sockets Layer/Transport Layer Security (SSL/TLS) afin de les utiliser avec les services AWS.

 

  1. Auditer et configurer des alertes

Il est nécessaire d’auditer régulièrement les configurations des services AWS suite aux nombreuses évolutions quotidiennes de l’infrastructure. Le Center for Internet Security (CIS) a rédigé des guides pour vérifier les bonnes configurations des services et applications déployés par les entreprises :

  • CIS Amazon Web Services Foundations. Il aide à tester, au niveau de AWS IAM, la présence de l’authentification multiple, de plusieurs comptes utilisateurs, si les clés d’API pour la configuration « root » ont été désactivées, …
  • CIS Amazon Web Services Three-Tier-Web. Il permet de vérifier qu’il y a bien une séparation entre les serveurs “front”, “applicatifs” et les bases de données. Egalement s’ils sont bien isolés en termes de réseau et les communications sécurisées.

Une fois le respect de ces règles de sécurité atteint, les entreprises doivent mettre en place une solution de surveillance continue. Le CIS met en évidence des règles de sécurité sur IAM, sur les logs avec CloudTrail mais également sur les « security group ». Il faut veiller à ne pas avoir de ports d’administration tels que SSH ou RDP ouverts (0.0.0/0), que les sous-réseaux aient bien des listes de contrôle d’accès et surveiller les services AWS et le stockage.

Une solution comme Elastic Workload Protector permet cette recherche de vulnérabilités automatiquement et quotidiennement tout en s’appuyant sur ces 2 guides.

 

  1. Éduquer les utilisateurs

35% des incidents de cybersécurité ont été générés – malgré eux – par des collaborateurs selon une étude 2016 de Microsoft.

Pour beaucoup de personnes, le Cloud est un mode de fonctionnement nouveau. En effet, il diffère des infrastructures traditionnelles physiques ou virtualisées qui sont internes à l’entreprise. Là, ils doivent travailler à distance avec une disponibilité « à la demande » et une automatisation forte. Une formation générique sur le concept du Cloud Computing est vivement conseillée. Tout comme sur les risques de sécurité qui doivent être intégrés dès le départ.

 

 

Ce top 10 des bonnes pratiques de sécurité permet de renforcer votre sécurité sur AWS efficacement en rapidement. Cependant, une bonne politique de sécurité est efficace seulement si elle est appliquée quotidiennement et sur le long terme. C’est pour cela que nous aidons plus de 100 clients quotidiennement avec notre solution Elastic Workload Protector. Elle permet de suivre en temps réel le niveau de risque des entreprises et de détecter toutes les nouvelles vulnérabilités présentes sur leur environnement Cloud.

Leave a Reply