SCW Icons
hero bg no divider
Blog

Les codeurs conquièrent l'infrastructure de sécurité en tant que série de codes : fonctionnalités de sécurité désactivées

Matias Madou, Ph.D.
Published May 04, 2020
Last updated on Mar 06, 2026

De nos jours, les menaces à la cybersécurité sont omniprésentes et incessantes. À mesure que de plus en plus de facettes de notre vie sont numérisées, plus les enjeux pour les cybercriminels sont élevés : il y a trop de code à sécuriser et les données privées ont trop de valeur. Et bien, essayer de suivre et de défendre tous les aspects de la surface d'attaque après le déploiement des programmes est devenu presque impossible.

Certaines approches peuvent atténuer certains de ces symptômes, et l'une d'entre elles est évidente lorsque des organisations avisées adoptent le concept d'infrastructure en tant que code (IaC). Bien entendu, comme pour tout développement, il existe des pièges de sécurité à surmonter. Et puisque les développeurs travaillent sur le code qui génère une infrastructure vitale pour héberger les applications, la sensibilisation à la sécurité est essentielle à chaque étape du processus.

Alors, comment un développeur débutant dans un environnement de serveur cloud pourrait-il s'y prendre pour améliorer ses compétences, apprendre les ficelles du métier et aborder la version avec une sensibilisation accrue à la sécurité ? Nous avons créé la prochaine série Coders Conquer Security pour lutter contre les vulnérabilités courantes de l'IaC, et ces prochains blogs se concentreront sur les mesures que vous pouvez prendre, en tant que développeur, pour commencer à déployer une infrastructure sécurisée sous forme de code dans votre propre organisation.

Allons-y.

Il existe une fable du Far West américain à propos d'un homme paranoïaque à l'idée que des bandits attaqueraient et cambrioleraient sa propriété. Pour compenser, il a investi dans toutes sortes de mesures de sécurité, comme l'installation d'une porte d'entrée très solide, la fermeture de toutes ses fenêtres et la mise à portée de main de nombreuses armes. Il a quand même été cambriolé une nuit alors qu'il dormait parce qu'il avait oublié de verrouiller la porte latérale. Les bandits ont simplement trouvé la sécurité handicapée et ont rapidement exploité la situation.

Désactiver les fonctionnalités de sécurité de votre infrastructure, c'est un peu comme ça. Même si votre réseau dispose d'une infrastructure de sécurité robuste, il ne sert à rien si certains éléments ont été désactivés.

Permettez-moi de vous lancer un défi avant de plonger dans le vif du sujet :

Cliquez sur le lien ci-dessus et vous serez redirigé vers notre plateforme de formation gamifiée, où vous pourrez tenter de neutraliser une faille de sécurité désactivée dès maintenant. (Attention : Il s'ouvrira dans Kubernetes, mais utilisez le menu déroulant et vous pourrez choisir parmi Docker, CloudFormation, Terraform et Ansible).

Comment t'es-tu débrouillé ? Si vous avez encore du travail à faire, lisez ce qui suit :

Les fonctions de sécurité peuvent être désactivées pour diverses raisons. Avec certaines applications et certains frameworks, ils peuvent être désactivés par défaut et doivent d'abord être activés pour commencer à fonctionner. Il est également possible que les administrateurs aient désactivé des fonctions de sécurité spécifiques afin de pouvoir effectuer plus facilement certaines tâches sans être constamment mis à l'épreuve ou bloqués (par exemple, rendre un compartiment AWS S3 public). Une fois leur travail terminé, ils peuvent oublier de réactiver les fonctions désactivées. Ils pourraient également préférer les laisser éteints pour faciliter leur travail à l'avenir.

Pourquoi les fonctionnalités de sécurité désactivées sont si dangereuses

La désactivation d'une ou de plusieurs fonctionnalités de sécurité est une mauvaise chose pour plusieurs raisons. D'une part, la fonctionnalité de sécurité a été intégrée aux ressources de l'infrastructure pour se protéger contre un exploit, une menace ou une vulnérabilité connus. S'il est désactivé, il ne sera pas en mesure de protéger vos ressources.

Les attaquants tenteront toujours de trouver d'abord les vulnérabilités facilement exploitables et peuvent même utiliser un script pour corriger les faiblesses courantes. C'est un peu comme un voleur qui inspecte toutes les voitures d'une rue pour voir si les portes sont déverrouillées, ce qui est beaucoup plus facile que de casser une vitre. Les pirates informatiques seront peut-être surpris de constater qu'une défense de sécurité courante est inactive. Mais lorsque cela se produira, il ne leur faudra pas longtemps pour l'exploiter.

Deuxièmement, le fait de mettre en place une bonne sécurité puis de la désactiver crée un faux sentiment de sécurité. Les administrateurs peuvent penser qu'ils sont protégés contre les menaces courantes s'ils ne savent pas que quelqu'un a désactivé ces défenses.

À titre d'exemple de la manière dont un attaquant pourrait tirer parti d'une fonctionnalité de sécurité désactivée, considérez la fonctionnalité de sécurité AWS S3 qui consiste à bloquer l'accès public. Avec l'accès public bloqué à Amazon S3, les administrateurs de comptes et les propriétaires de compartiments peuvent facilement configurer des contrôles centralisés pour limiter l'accès public à leurs ressources Amazon S3. Cependant, certains administrateurs rencontrant des problèmes lors de l'accès au compartiment S3 décident de le rendre public afin de terminer la tâche le plus rapidement possible. S'il oublie d'activer cette fonctionnalité de sécurité, un attaquant aura un accès complet aux informations stockées dans ce compartiment S3, ce qui entraînera non seulement la divulgation d'informations, mais également des coûts supplémentaires en raison des frais de transfert de données.

Comparons du code réel ; jetez un œil à ces extraits de CloudFormation :

Vulnérable :

Seau d'entreprise :
Type : AWS : :S3 : :Bucket
Propriétés :
Configuration du bloc d'accès public :
BlockPublicACLS : faux
BlockPublicPolicy : faux
IgnorepublicACLS : faux
RestrictPublicBuckets : faux
Configuration du versionnage :
État : Activé
Chiffrement du bucket :
Configuration du chiffrement côté serveur :
- Chiffrement côté serveur par défaut :
Algorithme SSE : « AES256 »

Sécurisé :

Seau d'entreprise :
Type : AWS : :S3 : :Bucket
Propriétés :
Configuration du bloc d'accès public :
BlockPublicACLS : vrai
BlockPublicPolicy : vrai
Ignorepublicacls : vrai
RestrictPublicBuckets : vrai
Configuration du versionnage :
État : Activé
Chiffrement du bucket :
Configuration du chiffrement côté serveur :
- Chiffrement côté serveur par défaut :
Algorithme SSE : « AES256 »

Prévention des fonctionnalités de sécurité désactivées

Empêcher les fonctionnalités de sécurité désactivées de nuire à votre organisation est autant une question de politique que de pratique. Il devrait y avoir une politique ferme stipulant que les fonctionnalités de sécurité ne doivent être désactivées que dans des circonstances très spécifiques. Les incidents dans lesquels des fonctionnalités doivent être temporairement désactivées pour résoudre un problème ou mettre à jour des applications doivent être enregistrés. Une fois le travail requis terminé, les fonctionnalités doivent être vérifiées pour s'assurer qu'elles ont été complètement réactivées.

Si une fonction de sécurité doit être définitivement désactivée afin de rationaliser les opérations, d'autres protections doivent être fournies aux données concernées afin d'empêcher les pirates informatiques d'y accéder en l'absence de la protection par défaut. Si une fonction de protection requise a été désactivée, ce n'est qu'une question de temps avant qu'un attaquant ne trouve cette porte déverrouillée et exploite la situation.

Apprenez-en plus, lancez-vous des défis :

Consultez le Secure Code Warrior des pages de blog pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients des ravages causés par d'autres failles de sécurité et vulnérabilités.

Êtes-vous prêt à trouver et à corriger cette vulnérabilité maintenant que vous avez lu l'article ? Il est temps deEssayez un défi de sécurité gamifié sur IaC sur la plateforme Secure Code Warrior pour perfectionner et mettre à jour toutes vos compétences en matière de cybersécurité.

Cette série hebdomadaire couvre nos huit principales vulnérabilités liées à l'infrastructure en tant que code ; revenez la semaine prochaine pour en savoir plus !

Afficher la ressource
Afficher la ressource

Les attaquants tenteront toujours de trouver d'abord les vulnérabilités facilement exploitables et peuvent même utiliser un script pour corriger les faiblesses courantes. C'est un peu comme un voleur qui inspecte toutes les voitures d'une rue pour voir si les portes sont déverrouillées, ce qui est beaucoup plus facile que de casser une vitre.

Vous souhaitez en savoir plus ?

Matias Madou, Ph.D. is a security expert, researcher, and CTO and co-founder of Secure Code Warrior. Matias obtained his Ph.D. in Application Security from Ghent University, focusing on static analysis solutions. He later joined Fortify in the US, where he realized that it was insufficient to solely detect code problems without aiding developers in writing secure code. This inspired him to develop products that assist developers, alleviate the burden of security, and exceed customers' expectations. When he is not at his desk as part of Team Awesome, he enjoys being on stage presenting at conferences including RSA Conference, BlackHat and DefCon.

learn more

Secure Code Warrior est là pour aider votre organisation à sécuriser le code tout au long du cycle de développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité informatique ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.

Réservez une démo
Partagez sur :
linkedin brandsSocialx logo
Auteur
Matias Madou, Ph.D.
Published May 04, 2020

Matias Madou, Ph.D. is a security expert, researcher, and CTO and co-founder of Secure Code Warrior. Matias obtained his Ph.D. in Application Security from Ghent University, focusing on static analysis solutions. He later joined Fortify in the US, where he realized that it was insufficient to solely detect code problems without aiding developers in writing secure code. This inspired him to develop products that assist developers, alleviate the burden of security, and exceed customers' expectations. When he is not at his desk as part of Team Awesome, he enjoys being on stage presenting at conferences including RSA Conference, BlackHat and DefCon.

Matias is a researcher and developer with more than 15 years of hands-on software security experience. He has developed solutions for companies such as Fortify Software and his own company Sensei Security. Over his career, Matias has led multiple application security research projects which have led to commercial products and boasts over 10 patents under his belt. When he is away from his desk, Matias has served as an instructor for advanced application security training courses and regularly speaks at global conferences including RSA Conference, Black Hat, DefCon, BSIMM, OWASP AppSec and BruCon.

Matias holds a Ph.D. in Computer Engineering from Ghent University, where he studied application security through program obfuscation to hide the inner workings of an application.

Partagez sur :
linkedin brandsSocialx logo

De nos jours, les menaces à la cybersécurité sont omniprésentes et incessantes. À mesure que de plus en plus de facettes de notre vie sont numérisées, plus les enjeux pour les cybercriminels sont élevés : il y a trop de code à sécuriser et les données privées ont trop de valeur. Et bien, essayer de suivre et de défendre tous les aspects de la surface d'attaque après le déploiement des programmes est devenu presque impossible.

Certaines approches peuvent atténuer certains de ces symptômes, et l'une d'entre elles est évidente lorsque des organisations avisées adoptent le concept d'infrastructure en tant que code (IaC). Bien entendu, comme pour tout développement, il existe des pièges de sécurité à surmonter. Et puisque les développeurs travaillent sur le code qui génère une infrastructure vitale pour héberger les applications, la sensibilisation à la sécurité est essentielle à chaque étape du processus.

Alors, comment un développeur débutant dans un environnement de serveur cloud pourrait-il s'y prendre pour améliorer ses compétences, apprendre les ficelles du métier et aborder la version avec une sensibilisation accrue à la sécurité ? Nous avons créé la prochaine série Coders Conquer Security pour lutter contre les vulnérabilités courantes de l'IaC, et ces prochains blogs se concentreront sur les mesures que vous pouvez prendre, en tant que développeur, pour commencer à déployer une infrastructure sécurisée sous forme de code dans votre propre organisation.

Allons-y.

Il existe une fable du Far West américain à propos d'un homme paranoïaque à l'idée que des bandits attaqueraient et cambrioleraient sa propriété. Pour compenser, il a investi dans toutes sortes de mesures de sécurité, comme l'installation d'une porte d'entrée très solide, la fermeture de toutes ses fenêtres et la mise à portée de main de nombreuses armes. Il a quand même été cambriolé une nuit alors qu'il dormait parce qu'il avait oublié de verrouiller la porte latérale. Les bandits ont simplement trouvé la sécurité handicapée et ont rapidement exploité la situation.

Désactiver les fonctionnalités de sécurité de votre infrastructure, c'est un peu comme ça. Même si votre réseau dispose d'une infrastructure de sécurité robuste, il ne sert à rien si certains éléments ont été désactivés.

Permettez-moi de vous lancer un défi avant de plonger dans le vif du sujet :

Cliquez sur le lien ci-dessus et vous serez redirigé vers notre plateforme de formation gamifiée, où vous pourrez tenter de neutraliser une faille de sécurité désactivée dès maintenant. (Attention : Il s'ouvrira dans Kubernetes, mais utilisez le menu déroulant et vous pourrez choisir parmi Docker, CloudFormation, Terraform et Ansible).

Comment t'es-tu débrouillé ? Si vous avez encore du travail à faire, lisez ce qui suit :

Les fonctions de sécurité peuvent être désactivées pour diverses raisons. Avec certaines applications et certains frameworks, ils peuvent être désactivés par défaut et doivent d'abord être activés pour commencer à fonctionner. Il est également possible que les administrateurs aient désactivé des fonctions de sécurité spécifiques afin de pouvoir effectuer plus facilement certaines tâches sans être constamment mis à l'épreuve ou bloqués (par exemple, rendre un compartiment AWS S3 public). Une fois leur travail terminé, ils peuvent oublier de réactiver les fonctions désactivées. Ils pourraient également préférer les laisser éteints pour faciliter leur travail à l'avenir.

Pourquoi les fonctionnalités de sécurité désactivées sont si dangereuses

La désactivation d'une ou de plusieurs fonctionnalités de sécurité est une mauvaise chose pour plusieurs raisons. D'une part, la fonctionnalité de sécurité a été intégrée aux ressources de l'infrastructure pour se protéger contre un exploit, une menace ou une vulnérabilité connus. S'il est désactivé, il ne sera pas en mesure de protéger vos ressources.

Les attaquants tenteront toujours de trouver d'abord les vulnérabilités facilement exploitables et peuvent même utiliser un script pour corriger les faiblesses courantes. C'est un peu comme un voleur qui inspecte toutes les voitures d'une rue pour voir si les portes sont déverrouillées, ce qui est beaucoup plus facile que de casser une vitre. Les pirates informatiques seront peut-être surpris de constater qu'une défense de sécurité courante est inactive. Mais lorsque cela se produira, il ne leur faudra pas longtemps pour l'exploiter.

Deuxièmement, le fait de mettre en place une bonne sécurité puis de la désactiver crée un faux sentiment de sécurité. Les administrateurs peuvent penser qu'ils sont protégés contre les menaces courantes s'ils ne savent pas que quelqu'un a désactivé ces défenses.

À titre d'exemple de la manière dont un attaquant pourrait tirer parti d'une fonctionnalité de sécurité désactivée, considérez la fonctionnalité de sécurité AWS S3 qui consiste à bloquer l'accès public. Avec l'accès public bloqué à Amazon S3, les administrateurs de comptes et les propriétaires de compartiments peuvent facilement configurer des contrôles centralisés pour limiter l'accès public à leurs ressources Amazon S3. Cependant, certains administrateurs rencontrant des problèmes lors de l'accès au compartiment S3 décident de le rendre public afin de terminer la tâche le plus rapidement possible. S'il oublie d'activer cette fonctionnalité de sécurité, un attaquant aura un accès complet aux informations stockées dans ce compartiment S3, ce qui entraînera non seulement la divulgation d'informations, mais également des coûts supplémentaires en raison des frais de transfert de données.

Comparons du code réel ; jetez un œil à ces extraits de CloudFormation :

Vulnérable :

Seau d'entreprise :
Type : AWS : :S3 : :Bucket
Propriétés :
Configuration du bloc d'accès public :
BlockPublicACLS : faux
BlockPublicPolicy : faux
IgnorepublicACLS : faux
RestrictPublicBuckets : faux
Configuration du versionnage :
État : Activé
Chiffrement du bucket :
Configuration du chiffrement côté serveur :
- Chiffrement côté serveur par défaut :
Algorithme SSE : « AES256 »

Sécurisé :

Seau d'entreprise :
Type : AWS : :S3 : :Bucket
Propriétés :
Configuration du bloc d'accès public :
BlockPublicACLS : vrai
BlockPublicPolicy : vrai
Ignorepublicacls : vrai
RestrictPublicBuckets : vrai
Configuration du versionnage :
État : Activé
Chiffrement du bucket :
Configuration du chiffrement côté serveur :
- Chiffrement côté serveur par défaut :
Algorithme SSE : « AES256 »

Prévention des fonctionnalités de sécurité désactivées

Empêcher les fonctionnalités de sécurité désactivées de nuire à votre organisation est autant une question de politique que de pratique. Il devrait y avoir une politique ferme stipulant que les fonctionnalités de sécurité ne doivent être désactivées que dans des circonstances très spécifiques. Les incidents dans lesquels des fonctionnalités doivent être temporairement désactivées pour résoudre un problème ou mettre à jour des applications doivent être enregistrés. Une fois le travail requis terminé, les fonctionnalités doivent être vérifiées pour s'assurer qu'elles ont été complètement réactivées.

Si une fonction de sécurité doit être définitivement désactivée afin de rationaliser les opérations, d'autres protections doivent être fournies aux données concernées afin d'empêcher les pirates informatiques d'y accéder en l'absence de la protection par défaut. Si une fonction de protection requise a été désactivée, ce n'est qu'une question de temps avant qu'un attaquant ne trouve cette porte déverrouillée et exploite la situation.

Apprenez-en plus, lancez-vous des défis :

Consultez le Secure Code Warrior des pages de blog pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients des ravages causés par d'autres failles de sécurité et vulnérabilités.

Êtes-vous prêt à trouver et à corriger cette vulnérabilité maintenant que vous avez lu l'article ? Il est temps deEssayez un défi de sécurité gamifié sur IaC sur la plateforme Secure Code Warrior pour perfectionner et mettre à jour toutes vos compétences en matière de cybersécurité.

Cette série hebdomadaire couvre nos huit principales vulnérabilités liées à l'infrastructure en tant que code ; revenez la semaine prochaine pour en savoir plus !

Afficher la ressource
Afficher la ressource

Remplissez le formulaire ci-dessous pour télécharger le rapport

Nous aimerions avoir votre autorisation pour vous envoyer des informations sur nos produits et/ou sur des sujets liés au codage sécurisé. Nous traiterons toujours vos données personnelles avec le plus grand soin et ne les vendrons jamais à d'autres entreprises à des fins de marketing.

Soumettre
scw success icon
scw error icon
Pour soumettre le formulaire, veuillez activer les cookies « Analytics ». N'hésitez pas à les désactiver à nouveau une fois que vous aurez terminé.

De nos jours, les menaces à la cybersécurité sont omniprésentes et incessantes. À mesure que de plus en plus de facettes de notre vie sont numérisées, plus les enjeux pour les cybercriminels sont élevés : il y a trop de code à sécuriser et les données privées ont trop de valeur. Et bien, essayer de suivre et de défendre tous les aspects de la surface d'attaque après le déploiement des programmes est devenu presque impossible.

Certaines approches peuvent atténuer certains de ces symptômes, et l'une d'entre elles est évidente lorsque des organisations avisées adoptent le concept d'infrastructure en tant que code (IaC). Bien entendu, comme pour tout développement, il existe des pièges de sécurité à surmonter. Et puisque les développeurs travaillent sur le code qui génère une infrastructure vitale pour héberger les applications, la sensibilisation à la sécurité est essentielle à chaque étape du processus.

Alors, comment un développeur débutant dans un environnement de serveur cloud pourrait-il s'y prendre pour améliorer ses compétences, apprendre les ficelles du métier et aborder la version avec une sensibilisation accrue à la sécurité ? Nous avons créé la prochaine série Coders Conquer Security pour lutter contre les vulnérabilités courantes de l'IaC, et ces prochains blogs se concentreront sur les mesures que vous pouvez prendre, en tant que développeur, pour commencer à déployer une infrastructure sécurisée sous forme de code dans votre propre organisation.

Allons-y.

Il existe une fable du Far West américain à propos d'un homme paranoïaque à l'idée que des bandits attaqueraient et cambrioleraient sa propriété. Pour compenser, il a investi dans toutes sortes de mesures de sécurité, comme l'installation d'une porte d'entrée très solide, la fermeture de toutes ses fenêtres et la mise à portée de main de nombreuses armes. Il a quand même été cambriolé une nuit alors qu'il dormait parce qu'il avait oublié de verrouiller la porte latérale. Les bandits ont simplement trouvé la sécurité handicapée et ont rapidement exploité la situation.

Désactiver les fonctionnalités de sécurité de votre infrastructure, c'est un peu comme ça. Même si votre réseau dispose d'une infrastructure de sécurité robuste, il ne sert à rien si certains éléments ont été désactivés.

Permettez-moi de vous lancer un défi avant de plonger dans le vif du sujet :

Cliquez sur le lien ci-dessus et vous serez redirigé vers notre plateforme de formation gamifiée, où vous pourrez tenter de neutraliser une faille de sécurité désactivée dès maintenant. (Attention : Il s'ouvrira dans Kubernetes, mais utilisez le menu déroulant et vous pourrez choisir parmi Docker, CloudFormation, Terraform et Ansible).

Comment t'es-tu débrouillé ? Si vous avez encore du travail à faire, lisez ce qui suit :

Les fonctions de sécurité peuvent être désactivées pour diverses raisons. Avec certaines applications et certains frameworks, ils peuvent être désactivés par défaut et doivent d'abord être activés pour commencer à fonctionner. Il est également possible que les administrateurs aient désactivé des fonctions de sécurité spécifiques afin de pouvoir effectuer plus facilement certaines tâches sans être constamment mis à l'épreuve ou bloqués (par exemple, rendre un compartiment AWS S3 public). Une fois leur travail terminé, ils peuvent oublier de réactiver les fonctions désactivées. Ils pourraient également préférer les laisser éteints pour faciliter leur travail à l'avenir.

Pourquoi les fonctionnalités de sécurité désactivées sont si dangereuses

La désactivation d'une ou de plusieurs fonctionnalités de sécurité est une mauvaise chose pour plusieurs raisons. D'une part, la fonctionnalité de sécurité a été intégrée aux ressources de l'infrastructure pour se protéger contre un exploit, une menace ou une vulnérabilité connus. S'il est désactivé, il ne sera pas en mesure de protéger vos ressources.

Les attaquants tenteront toujours de trouver d'abord les vulnérabilités facilement exploitables et peuvent même utiliser un script pour corriger les faiblesses courantes. C'est un peu comme un voleur qui inspecte toutes les voitures d'une rue pour voir si les portes sont déverrouillées, ce qui est beaucoup plus facile que de casser une vitre. Les pirates informatiques seront peut-être surpris de constater qu'une défense de sécurité courante est inactive. Mais lorsque cela se produira, il ne leur faudra pas longtemps pour l'exploiter.

Deuxièmement, le fait de mettre en place une bonne sécurité puis de la désactiver crée un faux sentiment de sécurité. Les administrateurs peuvent penser qu'ils sont protégés contre les menaces courantes s'ils ne savent pas que quelqu'un a désactivé ces défenses.

À titre d'exemple de la manière dont un attaquant pourrait tirer parti d'une fonctionnalité de sécurité désactivée, considérez la fonctionnalité de sécurité AWS S3 qui consiste à bloquer l'accès public. Avec l'accès public bloqué à Amazon S3, les administrateurs de comptes et les propriétaires de compartiments peuvent facilement configurer des contrôles centralisés pour limiter l'accès public à leurs ressources Amazon S3. Cependant, certains administrateurs rencontrant des problèmes lors de l'accès au compartiment S3 décident de le rendre public afin de terminer la tâche le plus rapidement possible. S'il oublie d'activer cette fonctionnalité de sécurité, un attaquant aura un accès complet aux informations stockées dans ce compartiment S3, ce qui entraînera non seulement la divulgation d'informations, mais également des coûts supplémentaires en raison des frais de transfert de données.

Comparons du code réel ; jetez un œil à ces extraits de CloudFormation :

Vulnérable :

Seau d'entreprise :
Type : AWS : :S3 : :Bucket
Propriétés :
Configuration du bloc d'accès public :
BlockPublicACLS : faux
BlockPublicPolicy : faux
IgnorepublicACLS : faux
RestrictPublicBuckets : faux
Configuration du versionnage :
État : Activé
Chiffrement du bucket :
Configuration du chiffrement côté serveur :
- Chiffrement côté serveur par défaut :
Algorithme SSE : « AES256 »

Sécurisé :

Seau d'entreprise :
Type : AWS : :S3 : :Bucket
Propriétés :
Configuration du bloc d'accès public :
BlockPublicACLS : vrai
BlockPublicPolicy : vrai
Ignorepublicacls : vrai
RestrictPublicBuckets : vrai
Configuration du versionnage :
État : Activé
Chiffrement du bucket :
Configuration du chiffrement côté serveur :
- Chiffrement côté serveur par défaut :
Algorithme SSE : « AES256 »

Prévention des fonctionnalités de sécurité désactivées

Empêcher les fonctionnalités de sécurité désactivées de nuire à votre organisation est autant une question de politique que de pratique. Il devrait y avoir une politique ferme stipulant que les fonctionnalités de sécurité ne doivent être désactivées que dans des circonstances très spécifiques. Les incidents dans lesquels des fonctionnalités doivent être temporairement désactivées pour résoudre un problème ou mettre à jour des applications doivent être enregistrés. Une fois le travail requis terminé, les fonctionnalités doivent être vérifiées pour s'assurer qu'elles ont été complètement réactivées.

Si une fonction de sécurité doit être définitivement désactivée afin de rationaliser les opérations, d'autres protections doivent être fournies aux données concernées afin d'empêcher les pirates informatiques d'y accéder en l'absence de la protection par défaut. Si une fonction de protection requise a été désactivée, ce n'est qu'une question de temps avant qu'un attaquant ne trouve cette porte déverrouillée et exploite la situation.

Apprenez-en plus, lancez-vous des défis :

Consultez le Secure Code Warrior des pages de blog pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients des ravages causés par d'autres failles de sécurité et vulnérabilités.

Êtes-vous prêt à trouver et à corriger cette vulnérabilité maintenant que vous avez lu l'article ? Il est temps deEssayez un défi de sécurité gamifié sur IaC sur la plateforme Secure Code Warrior pour perfectionner et mettre à jour toutes vos compétences en matière de cybersécurité.

Cette série hebdomadaire couvre nos huit principales vulnérabilités liées à l'infrastructure en tant que code ; revenez la semaine prochaine pour en savoir plus !

Afficher le webinaire
Commencez
learn more

Cliquez sur le lien ci-dessous et téléchargez le PDF de cette ressource.

Secure Code Warrior est là pour aider votre organisation à sécuriser le code tout au long du cycle de développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité informatique ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.

Afficher le rapportRéservez une démo
Télécharger le PDF
Afficher la ressource
Partagez sur :
linkedin brandsSocialx logo
Vous souhaitez en savoir plus ?

Partagez sur :
linkedin brandsSocialx logo
Auteur
Matias Madou, Ph.D.
Published May 04, 2020

Matias Madou, Ph.D. is a security expert, researcher, and CTO and co-founder of Secure Code Warrior. Matias obtained his Ph.D. in Application Security from Ghent University, focusing on static analysis solutions. He later joined Fortify in the US, where he realized that it was insufficient to solely detect code problems without aiding developers in writing secure code. This inspired him to develop products that assist developers, alleviate the burden of security, and exceed customers' expectations. When he is not at his desk as part of Team Awesome, he enjoys being on stage presenting at conferences including RSA Conference, BlackHat and DefCon.

Matias is a researcher and developer with more than 15 years of hands-on software security experience. He has developed solutions for companies such as Fortify Software and his own company Sensei Security. Over his career, Matias has led multiple application security research projects which have led to commercial products and boasts over 10 patents under his belt. When he is away from his desk, Matias has served as an instructor for advanced application security training courses and regularly speaks at global conferences including RSA Conference, Black Hat, DefCon, BSIMM, OWASP AppSec and BruCon.

Matias holds a Ph.D. in Computer Engineering from Ghent University, where he studied application security through program obfuscation to hide the inner workings of an application.

Partagez sur :
linkedin brandsSocialx logo

De nos jours, les menaces à la cybersécurité sont omniprésentes et incessantes. À mesure que de plus en plus de facettes de notre vie sont numérisées, plus les enjeux pour les cybercriminels sont élevés : il y a trop de code à sécuriser et les données privées ont trop de valeur. Et bien, essayer de suivre et de défendre tous les aspects de la surface d'attaque après le déploiement des programmes est devenu presque impossible.

Certaines approches peuvent atténuer certains de ces symptômes, et l'une d'entre elles est évidente lorsque des organisations avisées adoptent le concept d'infrastructure en tant que code (IaC). Bien entendu, comme pour tout développement, il existe des pièges de sécurité à surmonter. Et puisque les développeurs travaillent sur le code qui génère une infrastructure vitale pour héberger les applications, la sensibilisation à la sécurité est essentielle à chaque étape du processus.

Alors, comment un développeur débutant dans un environnement de serveur cloud pourrait-il s'y prendre pour améliorer ses compétences, apprendre les ficelles du métier et aborder la version avec une sensibilisation accrue à la sécurité ? Nous avons créé la prochaine série Coders Conquer Security pour lutter contre les vulnérabilités courantes de l'IaC, et ces prochains blogs se concentreront sur les mesures que vous pouvez prendre, en tant que développeur, pour commencer à déployer une infrastructure sécurisée sous forme de code dans votre propre organisation.

Allons-y.

Il existe une fable du Far West américain à propos d'un homme paranoïaque à l'idée que des bandits attaqueraient et cambrioleraient sa propriété. Pour compenser, il a investi dans toutes sortes de mesures de sécurité, comme l'installation d'une porte d'entrée très solide, la fermeture de toutes ses fenêtres et la mise à portée de main de nombreuses armes. Il a quand même été cambriolé une nuit alors qu'il dormait parce qu'il avait oublié de verrouiller la porte latérale. Les bandits ont simplement trouvé la sécurité handicapée et ont rapidement exploité la situation.

Désactiver les fonctionnalités de sécurité de votre infrastructure, c'est un peu comme ça. Même si votre réseau dispose d'une infrastructure de sécurité robuste, il ne sert à rien si certains éléments ont été désactivés.

Permettez-moi de vous lancer un défi avant de plonger dans le vif du sujet :

Cliquez sur le lien ci-dessus et vous serez redirigé vers notre plateforme de formation gamifiée, où vous pourrez tenter de neutraliser une faille de sécurité désactivée dès maintenant. (Attention : Il s'ouvrira dans Kubernetes, mais utilisez le menu déroulant et vous pourrez choisir parmi Docker, CloudFormation, Terraform et Ansible).

Comment t'es-tu débrouillé ? Si vous avez encore du travail à faire, lisez ce qui suit :

Les fonctions de sécurité peuvent être désactivées pour diverses raisons. Avec certaines applications et certains frameworks, ils peuvent être désactivés par défaut et doivent d'abord être activés pour commencer à fonctionner. Il est également possible que les administrateurs aient désactivé des fonctions de sécurité spécifiques afin de pouvoir effectuer plus facilement certaines tâches sans être constamment mis à l'épreuve ou bloqués (par exemple, rendre un compartiment AWS S3 public). Une fois leur travail terminé, ils peuvent oublier de réactiver les fonctions désactivées. Ils pourraient également préférer les laisser éteints pour faciliter leur travail à l'avenir.

Pourquoi les fonctionnalités de sécurité désactivées sont si dangereuses

La désactivation d'une ou de plusieurs fonctionnalités de sécurité est une mauvaise chose pour plusieurs raisons. D'une part, la fonctionnalité de sécurité a été intégrée aux ressources de l'infrastructure pour se protéger contre un exploit, une menace ou une vulnérabilité connus. S'il est désactivé, il ne sera pas en mesure de protéger vos ressources.

Les attaquants tenteront toujours de trouver d'abord les vulnérabilités facilement exploitables et peuvent même utiliser un script pour corriger les faiblesses courantes. C'est un peu comme un voleur qui inspecte toutes les voitures d'une rue pour voir si les portes sont déverrouillées, ce qui est beaucoup plus facile que de casser une vitre. Les pirates informatiques seront peut-être surpris de constater qu'une défense de sécurité courante est inactive. Mais lorsque cela se produira, il ne leur faudra pas longtemps pour l'exploiter.

Deuxièmement, le fait de mettre en place une bonne sécurité puis de la désactiver crée un faux sentiment de sécurité. Les administrateurs peuvent penser qu'ils sont protégés contre les menaces courantes s'ils ne savent pas que quelqu'un a désactivé ces défenses.

À titre d'exemple de la manière dont un attaquant pourrait tirer parti d'une fonctionnalité de sécurité désactivée, considérez la fonctionnalité de sécurité AWS S3 qui consiste à bloquer l'accès public. Avec l'accès public bloqué à Amazon S3, les administrateurs de comptes et les propriétaires de compartiments peuvent facilement configurer des contrôles centralisés pour limiter l'accès public à leurs ressources Amazon S3. Cependant, certains administrateurs rencontrant des problèmes lors de l'accès au compartiment S3 décident de le rendre public afin de terminer la tâche le plus rapidement possible. S'il oublie d'activer cette fonctionnalité de sécurité, un attaquant aura un accès complet aux informations stockées dans ce compartiment S3, ce qui entraînera non seulement la divulgation d'informations, mais également des coûts supplémentaires en raison des frais de transfert de données.

Comparons du code réel ; jetez un œil à ces extraits de CloudFormation :

Vulnérable :

Seau d'entreprise :
Type : AWS : :S3 : :Bucket
Propriétés :
Configuration du bloc d'accès public :
BlockPublicACLS : faux
BlockPublicPolicy : faux
IgnorepublicACLS : faux
RestrictPublicBuckets : faux
Configuration du versionnage :
État : Activé
Chiffrement du bucket :
Configuration du chiffrement côté serveur :
- Chiffrement côté serveur par défaut :
Algorithme SSE : « AES256 »

Sécurisé :

Seau d'entreprise :
Type : AWS : :S3 : :Bucket
Propriétés :
Configuration du bloc d'accès public :
BlockPublicACLS : vrai
BlockPublicPolicy : vrai
Ignorepublicacls : vrai
RestrictPublicBuckets : vrai
Configuration du versionnage :
État : Activé
Chiffrement du bucket :
Configuration du chiffrement côté serveur :
- Chiffrement côté serveur par défaut :
Algorithme SSE : « AES256 »

Prévention des fonctionnalités de sécurité désactivées

Empêcher les fonctionnalités de sécurité désactivées de nuire à votre organisation est autant une question de politique que de pratique. Il devrait y avoir une politique ferme stipulant que les fonctionnalités de sécurité ne doivent être désactivées que dans des circonstances très spécifiques. Les incidents dans lesquels des fonctionnalités doivent être temporairement désactivées pour résoudre un problème ou mettre à jour des applications doivent être enregistrés. Une fois le travail requis terminé, les fonctionnalités doivent être vérifiées pour s'assurer qu'elles ont été complètement réactivées.

Si une fonction de sécurité doit être définitivement désactivée afin de rationaliser les opérations, d'autres protections doivent être fournies aux données concernées afin d'empêcher les pirates informatiques d'y accéder en l'absence de la protection par défaut. Si une fonction de protection requise a été désactivée, ce n'est qu'une question de temps avant qu'un attaquant ne trouve cette porte déverrouillée et exploite la situation.

Apprenez-en plus, lancez-vous des défis :

Consultez le Secure Code Warrior des pages de blog pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients des ravages causés par d'autres failles de sécurité et vulnérabilités.

Êtes-vous prêt à trouver et à corriger cette vulnérabilité maintenant que vous avez lu l'article ? Il est temps deEssayez un défi de sécurité gamifié sur IaC sur la plateforme Secure Code Warrior pour perfectionner et mettre à jour toutes vos compétences en matière de cybersécurité.

Cette série hebdomadaire couvre nos huit principales vulnérabilités liées à l'infrastructure en tant que code ; revenez la semaine prochaine pour en savoir plus !

Table des matières

Télécharger le PDF
Afficher la ressource
Vous souhaitez en savoir plus ?

Matias Madou, Ph.D. is a security expert, researcher, and CTO and co-founder of Secure Code Warrior. Matias obtained his Ph.D. in Application Security from Ghent University, focusing on static analysis solutions. He later joined Fortify in the US, where he realized that it was insufficient to solely detect code problems without aiding developers in writing secure code. This inspired him to develop products that assist developers, alleviate the burden of security, and exceed customers' expectations. When he is not at his desk as part of Team Awesome, he enjoys being on stage presenting at conferences including RSA Conference, BlackHat and DefCon.

learn more

Secure Code Warrior est là pour aider votre organisation à sécuriser le code tout au long du cycle de développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité informatique ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.

Réservez une démoTélécharger
Partagez sur :
linkedin brandsSocialx logo
Centre de ressources

Ressources pour vous aider à démarrer

Plus de posts
Centre de ressources

Ressources pour vous aider à démarrer

Plus de posts