
Vous connaissez cette semi-blague, « le cloud, c’est les ordinateurs de quelqu’un d’autre » ? Le cloud computing est souvent vu comme LA solution, si bien qu’on omet qu’il s’agit uniquement d’un outil, avec ses avantages et ses inconvénients.
L’intérêt du cloud est entre autres lié à :
En effet, les principaux fournisseurs de solutions d’hébergement cloud fonctionnent sur un modèle de responsabilité partagée. Les fournisseurs prennent en charge la sécurité physique de l’hébergement tandis que vous êtes responsables de ce qui est hébergé. Un peu comme les fabricants de voitures qui doivent produire des véhicules fiables, mais vous restez responsables de votre conduite et de l’entretien de la voiture.
Comme pour tout outil, des risques liés à l’utilisation du cloud existent. Après avoir évoqué quelques risques, nous allons passer en revue des bonnes pratiques essentielles de sécurité du cloud que vous pouvez mettre en place.
Nous abordons dans cet article uniquement les risques liés à ce que vous gérez lorsque vous utilisez le cloud. Nous n’incluons donc pas les risques liés aux applications hébergées sur le cloud.
Les incidents de sécurité liés à une mauvaise configuration sont les plus nombreux. Il s’agit de situations où des ressources sont laissées accessibles publiquement (bucket S3, base de données ElasticSearch…).
La configuration couvre aussi les règles de pare-feu et la gestion des ports. Une pratique source de risques est par exemple de laisser des ports liés à l’administration (SSH) ouverts. Le risque de fuite de données est critique, car les conséquences peuvent être multiples (économiques, légales et commerciales).
Une des conséquences du cloud est une surface d’attaque large et qui évolue fréquemment. Entre le risque d’oubli d’instances, la multiplication des points d’accès et des utilisateurs y ayant accès, le risque d’exposition de données est accru.
Parfois, plusieurs clouds sont utilisés dans une même entreprise. Les données sont alors dispersées dans plusieurs endroits et peuvent être en doublon. Comme vos équipes doivent sécuriser différents clouds, cela peut entraîner des oublis, des erreurs ou un manque de ressources humaines pour la gestion des clouds. Il est également difficile d’obtenir une visibilité complète sur l’infrastructure du SI.
Les fournisseurs cloud proposent généralement une offre adaptée aux différentes exigences légales (hébergement conforme RGPD, HDS…). Cependant, c’est un élément que vous devez prendre en considération et surveiller lors de la configuration d’instances.
Ces risques peuvent être limités par des bonnes pratiques. En voici quelques-unes que nous estimons centrales.
Cet article détaille d’un point de vue plus général les bonnes pratiques logging et monitoring.
Enfin, d’un point de vue plus global, la bonne pratique qui se développe est l’Infrastructure As Code. En effet, le cloud peut être configuré via une console. Mais cela entraîne des risques, car il n’y a pas de traces ni d’historiques de changements. Il est donc difficile d’identifier les problèmes de configuration qui y sont introduits par exemple.
L’Infrastructure As Code (IaC) consiste à coder ce à quoi l’infrastructure va ressembler. L’IaC permet notamment une meilleure gestion des versions et des évolutions, une standardisation des configurations et une automatisation de la gestion des ressources. Des outils ont été développés pour aider l’IaC, comme Terraform, Ansible, Puppet, Chef… Le code peut ensuite être analysé par des outils d’analyse statique, qui vérifient les changements et peuvent détecter des erreurs (par exemple Chekov), afin de renforcer la sécurité.
Pour aller plus loin, une revue d’architecture en ayant accès au code peut être réalisée afin d’analyser en profondeur votre infrastructure. Cet audit en boite blanche permet par exemple de rechercher des vulnérabilités liées à la configuration des services, à une mauvaise gestion des droits, etc.