Skip to main content

Que sont les erreurs de configuration de sécurité et comment les prévenir ?

Écrit par
blog hero snyk iac magenta

1 novembre 2021

0 minutes de lecture

À mesure que les logiciels gagnent en complexité, les développeurs assument davantage de responsabilités liées aux conteneurs, à l’infrastructure as code (IaC) et à d’autres choix modernes de conception de l’architecture applicative. Les équipes de développement sont donc de plus en plus chargées de configurer de manière sécurisée de nombreux aspects des applications cloud natives.

Examinons de plus près les erreurs de configuration de sécurité et leurs conséquences sur la sécurité des applications. Nous verrons ensuite des exemples concrets des fuites de données majeures auxquelles Capital One et Capgemini ont été confrontées en raison de telles erreurs. Enfin, nous aborderons les différents types d’erreurs de configuration possibles et les moyens de les prévenir à l’aide d’outils de sécurité automatisés.

Illustration des erreurs de configuration de sécurité : un ordinateur portable avec un cadenas d’avertissement et un bouclier de sécurité cloud
Les erreurs de configuration de sécurité peuvent avoir un impact considérable sur la sécurité de votre application.

Qu’est-ce qu’une erreur de configuration de sécurité ?

Une erreur de configuration de sécurité survient lorsque les contrôles de sécurité appropriés ne sont pas mis en œuvre pour une application, un conteneur, une infrastructure ou tout autre composant logiciel. Ces erreurs peuvent permettre un accès non autorisé aux données et aux fonctionnalités d’un système, voire, dans le pire des cas, entraîner une défaillance complète du système. C’est pourquoi les erreurs de configuration de sécurité figurent parmi les 10 principaux risques de sécurité des applications web selon l’OWASP. Grâce à l’analyse de sécurité, les organisations peuvent détecter et corriger les erreurs de configuration dans leur code source et leurs fichiers de configuration.

Comment les erreurs de configuration de sécurité se produisent-elles ?

La plupart des erreurs de configuration de sécurité se produisent lorsque les organisations n’appliquent pas tous les contrôles de sécurité recommandés pour un composant d’application donné, ou qu’elles conservent les paramètres de sécurité par défaut. Lorsque les développeurs n’appliquent pas le principe du moindre privilège aux comptes, aux interfaces d’administration, aux bases de données et à d’autres éléments, des tiers indésirables peuvent dérober des données sensibles. Comme la plupart des erreurs de configuration de sécurité sont dues à des erreurs humaines, le passage à l’IaC et à l’automatisation peut contribuer à prévenir bon nombre de ces vulnérabilités.

Types d’erreurs de configuration de sécurité

Les erreurs de configuration de sécurité pouvant toucher de nombreux composants d’une application, il existe de nombreux types de vulnérabilités. En voici quelques exemples :

  • Utiliser les identifiants par défaut pour les instances de serveurs cloud, les serveurs web, les bases de données, etc.

  • Ne pas chiffrer les données sensibles, comme les mots de passe, les clés cryptographiques ou les clés API

  • Ne pas appliquer le principe du moindre privilège pour limiter les droits d’accès aux ressources

  • Autoriser le trafic public vers des URL non publiées ou d’autres points de terminaison internes

  • Laisser accidentellement des fichiers ou des répertoires sans protection

Ce ne sont que quelques exemples d’erreurs de configuration de sécurité, mais elles exposent les organisations à un large éventail d’attaques. Elles offrent aux acteurs malveillants un vecteur d’attaque pour mener différents types d’injections, comme le cross-site scripting (XSS), l’injection de code ou de commandes, les attaques par dépassement de tampon, et bien d’autres.

Dans les applications Java, les erreurs de configuration de sécurité sont souvent liées à la gestion des erreurs. Presque toutes les applications Java finissent par lever une exception, ce qui signifie qu’une erreur s’est produite lors de l’exécution. En règle générale, les développeurs Java cherchent à intercepter ces exceptions et à les gérer correctement. Toutefois, les exceptions non interceptées révèlent souvent par défaut des informations internes, comme la trace de la pile. Les acteurs malveillants peuvent exploiter ces informations pour comprendre le fonctionnement interne de l’application et lancer une attaque tirant parti d’une erreur de configuration de sécurité.

De nouvelles erreurs de configuration de sécurité sont constamment découvertes à mesure que de nouveaux logiciels open source sont publiés. C’est pourquoi de nombreux outils automatisés d’analyse de sécurité s’appuient sur des bases de données de vulnérabilités régulièrement mises à jour avec les problèmes de sécurité et les erreurs de configuration récemment divulgués. La base de données des vulnérabilités Snyk Intel suit les données de vulnérabilité provenant de plusieurs sources afin d’assurer une couverture maximale aux équipes de développement (370 % de vulnérabilités en plus que la deuxième base de données commerciale de vulnérabilités) et de détecter les problèmes avant qu’ils ne deviennent critiques.

Les conséquences des erreurs de configuration de sécurité

Les erreurs de configuration de sécurité peuvent sembler anodines à première vue, mais elles sont susceptibles d’entraîner des risques importants pour l’entreprise. En fait, une enquête récente a révélé que la principale préoccupation des RSSI concernant les environnements cloud de production était les erreurs de configuration de sécurité pouvant entraîner une fuite de données.

Fuite de données chez Capital One

La fuite de données chez Capital One, au cours de laquelle un ancien employé d’Amazon a dérobé plus de 100 millions de demandes de cartes de crédit de clients, illustre les conséquences considérables que peut avoir une simple erreur de configuration de sécurité. À l’origine de l’incident : un pare-feu applicatif web (WAF) open source mal configuré, qui pouvait être manipulé pour divulguer des identifiants de ressources backend dotés de permissions excessives. Cette erreur de configuration, pourtant mineure, a permis à l’acteur malveillant d’accéder aux données sensibles d’un compartiment S3 et de les télécharger.

Fuite de données chez Capgemini

De même, Capgemini a exposé les données personnelles de millions de demandeurs d’emploi en configurant incorrectement une base de données sur le serveur de développement d’un fournisseur informatique. Un tiers non autorisé a ainsi pu accéder facilement aux données sensibles via l’Internet public. Les acteurs malveillants analysent constamment Internet à la recherche de cibles faciles, comme des bases de données mal configurées, à exploiter.

De nombreux acteurs malveillants considèrent les erreurs de configuration de sécurité comme des cibles faciles, car ils peuvent les détecter et les exploiter à l’aide d’outils automatisés, et qu’elles sont très répandues dans les applications cloud natives actuelles. En effet, notre récente enquête sur l’état de la sécurité des applications cloud natives a révélé que 69 % des développeurs et des professionnels de la sécurité ont été confrontés à des erreurs de configuration et à des vulnérabilités non corrigées dans leurs applications.

Prévenir les erreurs de configuration de sécurité à l’aide d’outils d’analyse

Comme de nombreuses applications sont exposées aux erreurs de configuration de sécurité, il est essentiel que les organisations mettent en place des processus automatisés pour détecter et corriger ces vulnérabilités pendant le développement. Elles peuvent ainsi éliminer les erreurs humaines et prévenir dès le départ de nombreuses erreurs de configuration de sécurité.

Snyk IaC permet aux développeurs de rédiger des configurations sécurisées pour Terraform, Kubernetes, Helm et bien d’autres outils. Les organisations peuvent ainsi empêcher les erreurs de configuration IaC d’atteindre l’environnement de production et bloquer les attaques qui en découlent avant qu’elles ne deviennent un problème.

Sécurisez votre infrastructure dès la source

Snyk automatise la sécurité et la conformité de l’IaC dans vos workflows, et détecte les ressources dont la configuration a dérivé ou qui sont manquantes.

Snyk peut également analyser presque tous les composants logiciels afin de détecter les erreurs de configuration de sécurité et les vulnérabilités dans l’ensemble de la pile d’applications cloud natives. En fournissant des recommandations de correction adaptées au contexte, Snyk aide les développeurs à appliquer des pratiques de développement et de configuration sécurisées pour améliorer continuellement la posture de sécurité de leurs applications.