
Les programmeurs s'emparent de l'infrastructure de sécurité dans la série Code : fonctions de sécurité désactivées
De nos jours, les menaces qui pèsent sur la cybersécurité sont omniprésentes et incessantes. Plus les 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 sont trop précieuses. En outre, il est devenu pratiquement impossible de suivre et de défendre chaque aspect de la surface d'attaque après le déploiement des programmes.
Il existe des approches qui peuvent atténuer certains de ces symptômes, et l'une d'entre elles est apparente lorsque des organisations astucieuses adoptent le concept d'infrastructure en tant que code (IaC). Bien sûr, comme pour tout développement, il y a des pièges à éviter en matière de sécurité. Et comme les développeurs travaillent sur le code qui génère l'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 serveurs en nuage peut-il se perfectionner, apprendre les ficelles du métier et aborder la construction avec une conscience accrue de la sécurité ? Nous avons créé la prochaine série Coders Conquer Security pour aborder les vulnérabilités IaC courantes, et ces prochains blogs se concentreront sur les étapes que vous, en tant que développeur, pouvez suivre pour commencer à déployer une infrastructure sécurisée en tant que code dans votre propre organisation.
Commençons.
Une fable de l'Ouest américain raconte l'histoire d'un homme paranoïaque qui craignait que des bandits n'attaquent et ne dévalisent 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 pose de planches sur toutes les fenêtres et la conservation d'un grand nombre d'armes à portée de main. Il a tout de même été cambriolé une nuit pendant son sommeil parce qu'il avait oublié de verrouiller la porte latérale. Les bandits ont simplement constaté que la sécurité était défaillante et ont rapidement exploité la situation.
Le fait de désactiver des fonctions de sécurité dans votre infrastructure s'apparente à cela. Même si votre réseau dispose d'une infrastructure de sécurité solide, elle ne sert pas à grand-chose si des éléments ont été désactivés.
Permettez-moi de vous lancer un défi avant d'entrer dans le vif du sujet :
Cliquez sur le lien ci-dessus et vous serez transporté vers notre plateforme de formation ludique, où vous pourrez tenter d'éliminer dès maintenant une vulnérabilité de la fonction de sécurité désactivée. (Attention : Il s'ouvrira dans Kubernetes, mais utilisez le menu déroulant et vous pourrez choisir entre Docker, CloudFormation, Terraform et Ansible).
Quels sont vos résultats ? Si vous avez encore du travail à faire, lisez la suite :
Les fonctions de sécurité peuvent être désactivées pour diverses raisons. Avec certaines applications et certains frameworks, elles peuvent être désactivées par défaut et doivent d'abord être activées 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 contestés ou bloqués (par exemple, rendre public un seau AWS S3). Une fois leur travail terminé, ils peuvent oublier de réactiver ces fonctions désactivées. Ils peuvent également préférer les laisser désactivées pour se faciliter la tâche à l'avenir.
Pourquoi les dispositifs de sécurité désactivés sont-ils si dangereux ?
Le fait d'avoir une ou plusieurs fonctions de sécurité désactivées est néfaste pour plusieurs raisons. Tout d'abord, la fonction de sécurité a été intégrée aux ressources de l'infrastructure pour les protéger contre un exploit, une menace ou une vulnérabilité connus. S'il est désactivé, il ne pourra pas protéger vos ressources.
Les attaquants essaieront toujours de trouver en premier les failles facilement exploitables et peuvent même utiliser un script pour passer en revue les faiblesses les plus courantes. C'est un peu comme si un voleur vérifiait toutes les voitures d'une rue pour voir si une porte est déverrouillée, ce qui est beaucoup plus facile que de briser une fenêtre. Les pirates peuvent être surpris de constater qu'un dispositif de sécurité courant est inactif. Mais lorsque cela se produit, il ne leur faut 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.
Pour illustrer la manière dont un pirate peut tirer parti d'une fonction de sécurité désactivée, prenons l'exemple de la fonction de sécurité AWS S3 qui consiste à bloquer l'accès public. Avec le blocage de l'accès public à Amazon S3, les administrateurs de comptes et les propriétaires de seaux peuvent facilement mettre en place 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 à un bac S3 décident de le rendre public afin d'effectuer la tâche le plus rapidement possible. S'ils oublient d'activer cette fonction de sécurité, un pirate aura un accès complet aux informations stockées dans ce seau S3, ce qui entraînera non seulement la divulgation d'informations, mais aussi des coûts supplémentaires dus aux frais de transfert de données.
Comparons un peu de code réel ; regardez ces extraits de CloudFormation :
Vulnérable :
CorporateBucket :
Type : AWS::S3::Bucket
Propriétés :
PublicAccessBlockConfiguration :
BlockPublicAcls : false
BlockPublicPolicy : false
IgnorePublicAcls : false
RestrictPublicBuckets : false
VersioningConfiguration :
Status : Enabled
BucketEncryption :
ServerSideEncryptionConfiguration :
- ServerSideEncryptionByDefault :
SSEAlgorithm : "AES256"
Sécurisé :
CorporateBucket :
Type : AWS::S3::Bucket
Propriétés :
PublicAccessBlockConfiguration :
BlockPublicAcls : true
BlockPublicPolicy : true
IgnorePublicAcls : true
RestrictPublicBuckets : true
VersioningConfiguration :
Status : Enabled
BucketEncryption :
ServerSideEncryptionConfiguration :
- ServerSideEncryptionByDefault :
SSEAlgorithm : "AES256"
Empêcher la désactivation des dispositifs de sécurité
Empêcher les fonctions de sécurité désactivées de nuire à votre organisation est autant une question de politique que de pratique. Il convient de mettre en place une politique ferme stipulant que les fonctions de sécurité ne doivent être désactivées que dans des circonstances très spécifiques. Les incidents au cours desquels des fonctions doivent être temporairement désactivées pour résoudre un problème ou mettre à jour des applications doivent être consignés. Une fois les travaux terminés, il convient de vérifier que les dispositifs ont été pleinement réactivés.
Si une fonction de sécurité doit être désactivée de manière permanente afin de rationaliser les opérations, d'autres protections doivent être fournies aux données concernées afin de garantir que les pirates ne pourront pas y accéder en l'absence de la protection par défaut. Si une fonction de protection nécessaire a été désactivée, ce n'est qu'une question de temps avant qu'un pirate ne trouve cette porte déverrouillée et n'exploite la situation.
Apprenez-en plus, lancez-vous des défis :
Consultez les pages du Secure Code Warrior pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients contre les ravages causés par d'autres failles de sécurité et vulnérabilités.
Prêt à trouver et à corriger cette vulnérabilité maintenant que vous avez lu l'article ? Il est temps d'essayer un défi de sécurité gamifié de l'IaC sur la plateforme Secure Code Warrior pour garder toutes vos compétences en cybersécurité aiguisées et à jour.
Il s'agit d'une série hebdomadaire couvrant les huit principales vulnérabilités de l'infrastructure en tant que code ; revenez la semaine prochaine pour en savoir plus !


Les attaquants tentent toujours d'abord de trouver des failles de sécurité faciles à exploiter et peuvent même utiliser un script pour détecter les vulnérabilités courantes. Cela s'apparente à un voleur qui vérifie toutes les voitures dans une rue pour voir si certaines portes sont ouvertes, ce qui est beaucoup plus simple que de briser une vitre.
Matias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu son doctorat en sécurité des applications à l'université de Gand, en se concentrant sur les solutions d'analyse statique. Il a ensuite rejoint Fortify aux États-Unis, où il s'est rendu compte qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. C'est ce qui l'a incité à développer des produits qui aident les développeurs, allègent le fardeau de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de l'équipe Awesome, il aime être sur scène pour présenter des conférences, notamment RSA Conference, BlackHat et DefCon.

Secure Code Warrior là pour aider votre entreprise à sécuriser le code tout au long du cycle de développement logiciel et à créer une culture où la cybersécurité est une priorité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité des systèmes d'information ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre entreprise à réduire les risques liés à un code non sécurisé.
Réserver une démonstrationMatias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu son doctorat en sécurité des applications à l'université de Gand, en se concentrant sur les solutions d'analyse statique. Il a ensuite rejoint Fortify aux États-Unis, où il s'est rendu compte qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. C'est ce qui l'a incité à développer des produits qui aident les développeurs, allègent le fardeau de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de l'équipe Awesome, il aime être sur scène pour présenter des conférences, notamment RSA Conference, BlackHat et DefCon.
Matias est un chercheur et un développeur qui possède plus de 15 ans d'expérience pratique dans le domaine de la sécurité des logiciels. Il a développé des solutions pour des entreprises telles que Fortify Software et sa propre entreprise Sensei Security. Au cours de sa carrière, Matias a dirigé de nombreux projets de recherche sur la sécurité des applications qui ont débouché sur des produits commerciaux et peut se targuer d'avoir déposé plus de 10 brevets. Lorsqu'il n'est pas à son bureau, Matias a été instructeur pour des formations avancées en matière de sécurité des applications ( courses ) et intervient régulièrement lors de conférences mondiales telles que RSA Conference, Black Hat, DefCon, BSIMM, OWASP AppSec et BruCon.
Matias est titulaire d'un doctorat en ingénierie informatique de l'Université de Gand, où il a étudié la sécurité des applications par le biais de l'obscurcissement des programmes afin de dissimuler le fonctionnement interne d'une application.


De nos jours, les menaces qui pèsent sur la cybersécurité sont omniprésentes et incessantes. Plus les 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 sont trop précieuses. En outre, il est devenu pratiquement impossible de suivre et de défendre chaque aspect de la surface d'attaque après le déploiement des programmes.
Il existe des approches qui peuvent atténuer certains de ces symptômes, et l'une d'entre elles est apparente lorsque des organisations astucieuses adoptent le concept d'infrastructure en tant que code (IaC). Bien sûr, comme pour tout développement, il y a des pièges à éviter en matière de sécurité. Et comme les développeurs travaillent sur le code qui génère l'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 serveurs en nuage peut-il se perfectionner, apprendre les ficelles du métier et aborder la construction avec une conscience accrue de la sécurité ? Nous avons créé la prochaine série Coders Conquer Security pour aborder les vulnérabilités IaC courantes, et ces prochains blogs se concentreront sur les étapes que vous, en tant que développeur, pouvez suivre pour commencer à déployer une infrastructure sécurisée en tant que code dans votre propre organisation.
Commençons.
Une fable de l'Ouest américain raconte l'histoire d'un homme paranoïaque qui craignait que des bandits n'attaquent et ne dévalisent 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 pose de planches sur toutes les fenêtres et la conservation d'un grand nombre d'armes à portée de main. Il a tout de même été cambriolé une nuit pendant son sommeil parce qu'il avait oublié de verrouiller la porte latérale. Les bandits ont simplement constaté que la sécurité était défaillante et ont rapidement exploité la situation.
Le fait de désactiver des fonctions de sécurité dans votre infrastructure s'apparente à cela. Même si votre réseau dispose d'une infrastructure de sécurité solide, elle ne sert pas à grand-chose si des éléments ont été désactivés.
Permettez-moi de vous lancer un défi avant d'entrer dans le vif du sujet :
Cliquez sur le lien ci-dessus et vous serez transporté vers notre plateforme de formation ludique, où vous pourrez tenter d'éliminer dès maintenant une vulnérabilité de la fonction de sécurité désactivée. (Attention : Il s'ouvrira dans Kubernetes, mais utilisez le menu déroulant et vous pourrez choisir entre Docker, CloudFormation, Terraform et Ansible).
Quels sont vos résultats ? Si vous avez encore du travail à faire, lisez la suite :
Les fonctions de sécurité peuvent être désactivées pour diverses raisons. Avec certaines applications et certains frameworks, elles peuvent être désactivées par défaut et doivent d'abord être activées 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 contestés ou bloqués (par exemple, rendre public un seau AWS S3). Une fois leur travail terminé, ils peuvent oublier de réactiver ces fonctions désactivées. Ils peuvent également préférer les laisser désactivées pour se faciliter la tâche à l'avenir.
Pourquoi les dispositifs de sécurité désactivés sont-ils si dangereux ?
Le fait d'avoir une ou plusieurs fonctions de sécurité désactivées est néfaste pour plusieurs raisons. Tout d'abord, la fonction de sécurité a été intégrée aux ressources de l'infrastructure pour les protéger contre un exploit, une menace ou une vulnérabilité connus. S'il est désactivé, il ne pourra pas protéger vos ressources.
Les attaquants essaieront toujours de trouver en premier les failles facilement exploitables et peuvent même utiliser un script pour passer en revue les faiblesses les plus courantes. C'est un peu comme si un voleur vérifiait toutes les voitures d'une rue pour voir si une porte est déverrouillée, ce qui est beaucoup plus facile que de briser une fenêtre. Les pirates peuvent être surpris de constater qu'un dispositif de sécurité courant est inactif. Mais lorsque cela se produit, il ne leur faut 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.
Pour illustrer la manière dont un pirate peut tirer parti d'une fonction de sécurité désactivée, prenons l'exemple de la fonction de sécurité AWS S3 qui consiste à bloquer l'accès public. Avec le blocage de l'accès public à Amazon S3, les administrateurs de comptes et les propriétaires de seaux peuvent facilement mettre en place 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 à un bac S3 décident de le rendre public afin d'effectuer la tâche le plus rapidement possible. S'ils oublient d'activer cette fonction de sécurité, un pirate aura un accès complet aux informations stockées dans ce seau S3, ce qui entraînera non seulement la divulgation d'informations, mais aussi des coûts supplémentaires dus aux frais de transfert de données.
Comparons un peu de code réel ; regardez ces extraits de CloudFormation :
Vulnérable :
CorporateBucket :
Type : AWS::S3::Bucket
Propriétés :
PublicAccessBlockConfiguration :
BlockPublicAcls : false
BlockPublicPolicy : false
IgnorePublicAcls : false
RestrictPublicBuckets : false
VersioningConfiguration :
Status : Enabled
BucketEncryption :
ServerSideEncryptionConfiguration :
- ServerSideEncryptionByDefault :
SSEAlgorithm : "AES256"
Sécurisé :
CorporateBucket :
Type : AWS::S3::Bucket
Propriétés :
PublicAccessBlockConfiguration :
BlockPublicAcls : true
BlockPublicPolicy : true
IgnorePublicAcls : true
RestrictPublicBuckets : true
VersioningConfiguration :
Status : Enabled
BucketEncryption :
ServerSideEncryptionConfiguration :
- ServerSideEncryptionByDefault :
SSEAlgorithm : "AES256"
Empêcher la désactivation des dispositifs de sécurité
Empêcher les fonctions de sécurité désactivées de nuire à votre organisation est autant une question de politique que de pratique. Il convient de mettre en place une politique ferme stipulant que les fonctions de sécurité ne doivent être désactivées que dans des circonstances très spécifiques. Les incidents au cours desquels des fonctions doivent être temporairement désactivées pour résoudre un problème ou mettre à jour des applications doivent être consignés. Une fois les travaux terminés, il convient de vérifier que les dispositifs ont été pleinement réactivés.
Si une fonction de sécurité doit être désactivée de manière permanente afin de rationaliser les opérations, d'autres protections doivent être fournies aux données concernées afin de garantir que les pirates ne pourront pas y accéder en l'absence de la protection par défaut. Si une fonction de protection nécessaire a été désactivée, ce n'est qu'une question de temps avant qu'un pirate ne trouve cette porte déverrouillée et n'exploite la situation.
Apprenez-en plus, lancez-vous des défis :
Consultez les pages du Secure Code Warrior pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients contre les ravages causés par d'autres failles de sécurité et vulnérabilités.
Prêt à trouver et à corriger cette vulnérabilité maintenant que vous avez lu l'article ? Il est temps d'essayer un défi de sécurité gamifié de l'IaC sur la plateforme Secure Code Warrior pour garder toutes vos compétences en cybersécurité aiguisées et à jour.
Il s'agit d'une série hebdomadaire couvrant les huit principales vulnérabilités de l'infrastructure en tant que code ; revenez la semaine prochaine pour en savoir plus !

De nos jours, les menaces qui pèsent sur la cybersécurité sont omniprésentes et incessantes. Plus les 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 sont trop précieuses. En outre, il est devenu pratiquement impossible de suivre et de défendre chaque aspect de la surface d'attaque après le déploiement des programmes.
Il existe des approches qui peuvent atténuer certains de ces symptômes, et l'une d'entre elles est apparente lorsque des organisations astucieuses adoptent le concept d'infrastructure en tant que code (IaC). Bien sûr, comme pour tout développement, il y a des pièges à éviter en matière de sécurité. Et comme les développeurs travaillent sur le code qui génère l'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 serveurs en nuage peut-il se perfectionner, apprendre les ficelles du métier et aborder la construction avec une conscience accrue de la sécurité ? Nous avons créé la prochaine série Coders Conquer Security pour aborder les vulnérabilités IaC courantes, et ces prochains blogs se concentreront sur les étapes que vous, en tant que développeur, pouvez suivre pour commencer à déployer une infrastructure sécurisée en tant que code dans votre propre organisation.
Commençons.
Une fable de l'Ouest américain raconte l'histoire d'un homme paranoïaque qui craignait que des bandits n'attaquent et ne dévalisent 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 pose de planches sur toutes les fenêtres et la conservation d'un grand nombre d'armes à portée de main. Il a tout de même été cambriolé une nuit pendant son sommeil parce qu'il avait oublié de verrouiller la porte latérale. Les bandits ont simplement constaté que la sécurité était défaillante et ont rapidement exploité la situation.
Le fait de désactiver des fonctions de sécurité dans votre infrastructure s'apparente à cela. Même si votre réseau dispose d'une infrastructure de sécurité solide, elle ne sert pas à grand-chose si des éléments ont été désactivés.
Permettez-moi de vous lancer un défi avant d'entrer dans le vif du sujet :
Cliquez sur le lien ci-dessus et vous serez transporté vers notre plateforme de formation ludique, où vous pourrez tenter d'éliminer dès maintenant une vulnérabilité de la fonction de sécurité désactivée. (Attention : Il s'ouvrira dans Kubernetes, mais utilisez le menu déroulant et vous pourrez choisir entre Docker, CloudFormation, Terraform et Ansible).
Quels sont vos résultats ? Si vous avez encore du travail à faire, lisez la suite :
Les fonctions de sécurité peuvent être désactivées pour diverses raisons. Avec certaines applications et certains frameworks, elles peuvent être désactivées par défaut et doivent d'abord être activées 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 contestés ou bloqués (par exemple, rendre public un seau AWS S3). Une fois leur travail terminé, ils peuvent oublier de réactiver ces fonctions désactivées. Ils peuvent également préférer les laisser désactivées pour se faciliter la tâche à l'avenir.
Pourquoi les dispositifs de sécurité désactivés sont-ils si dangereux ?
Le fait d'avoir une ou plusieurs fonctions de sécurité désactivées est néfaste pour plusieurs raisons. Tout d'abord, la fonction de sécurité a été intégrée aux ressources de l'infrastructure pour les protéger contre un exploit, une menace ou une vulnérabilité connus. S'il est désactivé, il ne pourra pas protéger vos ressources.
Les attaquants essaieront toujours de trouver en premier les failles facilement exploitables et peuvent même utiliser un script pour passer en revue les faiblesses les plus courantes. C'est un peu comme si un voleur vérifiait toutes les voitures d'une rue pour voir si une porte est déverrouillée, ce qui est beaucoup plus facile que de briser une fenêtre. Les pirates peuvent être surpris de constater qu'un dispositif de sécurité courant est inactif. Mais lorsque cela se produit, il ne leur faut 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.
Pour illustrer la manière dont un pirate peut tirer parti d'une fonction de sécurité désactivée, prenons l'exemple de la fonction de sécurité AWS S3 qui consiste à bloquer l'accès public. Avec le blocage de l'accès public à Amazon S3, les administrateurs de comptes et les propriétaires de seaux peuvent facilement mettre en place 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 à un bac S3 décident de le rendre public afin d'effectuer la tâche le plus rapidement possible. S'ils oublient d'activer cette fonction de sécurité, un pirate aura un accès complet aux informations stockées dans ce seau S3, ce qui entraînera non seulement la divulgation d'informations, mais aussi des coûts supplémentaires dus aux frais de transfert de données.
Comparons un peu de code réel ; regardez ces extraits de CloudFormation :
Vulnérable :
CorporateBucket :
Type : AWS::S3::Bucket
Propriétés :
PublicAccessBlockConfiguration :
BlockPublicAcls : false
BlockPublicPolicy : false
IgnorePublicAcls : false
RestrictPublicBuckets : false
VersioningConfiguration :
Status : Enabled
BucketEncryption :
ServerSideEncryptionConfiguration :
- ServerSideEncryptionByDefault :
SSEAlgorithm : "AES256"
Sécurisé :
CorporateBucket :
Type : AWS::S3::Bucket
Propriétés :
PublicAccessBlockConfiguration :
BlockPublicAcls : true
BlockPublicPolicy : true
IgnorePublicAcls : true
RestrictPublicBuckets : true
VersioningConfiguration :
Status : Enabled
BucketEncryption :
ServerSideEncryptionConfiguration :
- ServerSideEncryptionByDefault :
SSEAlgorithm : "AES256"
Empêcher la désactivation des dispositifs de sécurité
Empêcher les fonctions de sécurité désactivées de nuire à votre organisation est autant une question de politique que de pratique. Il convient de mettre en place une politique ferme stipulant que les fonctions de sécurité ne doivent être désactivées que dans des circonstances très spécifiques. Les incidents au cours desquels des fonctions doivent être temporairement désactivées pour résoudre un problème ou mettre à jour des applications doivent être consignés. Une fois les travaux terminés, il convient de vérifier que les dispositifs ont été pleinement réactivés.
Si une fonction de sécurité doit être désactivée de manière permanente afin de rationaliser les opérations, d'autres protections doivent être fournies aux données concernées afin de garantir que les pirates ne pourront pas y accéder en l'absence de la protection par défaut. Si une fonction de protection nécessaire a été désactivée, ce n'est qu'une question de temps avant qu'un pirate ne trouve cette porte déverrouillée et n'exploite la situation.
Apprenez-en plus, lancez-vous des défis :
Consultez les pages du Secure Code Warrior pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients contre les ravages causés par d'autres failles de sécurité et vulnérabilités.
Prêt à trouver et à corriger cette vulnérabilité maintenant que vous avez lu l'article ? Il est temps d'essayer un défi de sécurité gamifié de l'IaC sur la plateforme Secure Code Warrior pour garder toutes vos compétences en cybersécurité aiguisées et à jour.
Il s'agit d'une série hebdomadaire couvrant les huit principales vulnérabilités de l'infrastructure en tant que code ; revenez la semaine prochaine pour en savoir plus !

Veuillez cliquer sur le lien ci-dessous et télécharger le PDF de cette ressource.
Secure Code Warrior là pour aider votre entreprise à sécuriser le code tout au long du cycle de développement logiciel et à créer une culture où la cybersécurité est une priorité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité des systèmes d'information ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre entreprise à réduire les risques liés à un code non sécurisé.
Consulter le rapportRéserver une démonstrationMatias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu son doctorat en sécurité des applications à l'université de Gand, en se concentrant sur les solutions d'analyse statique. Il a ensuite rejoint Fortify aux États-Unis, où il s'est rendu compte qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. C'est ce qui l'a incité à développer des produits qui aident les développeurs, allègent le fardeau de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de l'équipe Awesome, il aime être sur scène pour présenter des conférences, notamment RSA Conference, BlackHat et DefCon.
Matias est un chercheur et un développeur qui possède plus de 15 ans d'expérience pratique dans le domaine de la sécurité des logiciels. Il a développé des solutions pour des entreprises telles que Fortify Software et sa propre entreprise Sensei Security. Au cours de sa carrière, Matias a dirigé de nombreux projets de recherche sur la sécurité des applications qui ont débouché sur des produits commerciaux et peut se targuer d'avoir déposé plus de 10 brevets. Lorsqu'il n'est pas à son bureau, Matias a été instructeur pour des formations avancées en matière de sécurité des applications ( courses ) et intervient régulièrement lors de conférences mondiales telles que RSA Conference, Black Hat, DefCon, BSIMM, OWASP AppSec et BruCon.
Matias est titulaire d'un doctorat en ingénierie informatique de l'Université de Gand, où il a étudié la sécurité des applications par le biais de l'obscurcissement des programmes afin de dissimuler le fonctionnement interne d'une application.
De nos jours, les menaces qui pèsent sur la cybersécurité sont omniprésentes et incessantes. Plus les 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 sont trop précieuses. En outre, il est devenu pratiquement impossible de suivre et de défendre chaque aspect de la surface d'attaque après le déploiement des programmes.
Il existe des approches qui peuvent atténuer certains de ces symptômes, et l'une d'entre elles est apparente lorsque des organisations astucieuses adoptent le concept d'infrastructure en tant que code (IaC). Bien sûr, comme pour tout développement, il y a des pièges à éviter en matière de sécurité. Et comme les développeurs travaillent sur le code qui génère l'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 serveurs en nuage peut-il se perfectionner, apprendre les ficelles du métier et aborder la construction avec une conscience accrue de la sécurité ? Nous avons créé la prochaine série Coders Conquer Security pour aborder les vulnérabilités IaC courantes, et ces prochains blogs se concentreront sur les étapes que vous, en tant que développeur, pouvez suivre pour commencer à déployer une infrastructure sécurisée en tant que code dans votre propre organisation.
Commençons.
Une fable de l'Ouest américain raconte l'histoire d'un homme paranoïaque qui craignait que des bandits n'attaquent et ne dévalisent 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 pose de planches sur toutes les fenêtres et la conservation d'un grand nombre d'armes à portée de main. Il a tout de même été cambriolé une nuit pendant son sommeil parce qu'il avait oublié de verrouiller la porte latérale. Les bandits ont simplement constaté que la sécurité était défaillante et ont rapidement exploité la situation.
Le fait de désactiver des fonctions de sécurité dans votre infrastructure s'apparente à cela. Même si votre réseau dispose d'une infrastructure de sécurité solide, elle ne sert pas à grand-chose si des éléments ont été désactivés.
Permettez-moi de vous lancer un défi avant d'entrer dans le vif du sujet :
Cliquez sur le lien ci-dessus et vous serez transporté vers notre plateforme de formation ludique, où vous pourrez tenter d'éliminer dès maintenant une vulnérabilité de la fonction de sécurité désactivée. (Attention : Il s'ouvrira dans Kubernetes, mais utilisez le menu déroulant et vous pourrez choisir entre Docker, CloudFormation, Terraform et Ansible).
Quels sont vos résultats ? Si vous avez encore du travail à faire, lisez la suite :
Les fonctions de sécurité peuvent être désactivées pour diverses raisons. Avec certaines applications et certains frameworks, elles peuvent être désactivées par défaut et doivent d'abord être activées 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 contestés ou bloqués (par exemple, rendre public un seau AWS S3). Une fois leur travail terminé, ils peuvent oublier de réactiver ces fonctions désactivées. Ils peuvent également préférer les laisser désactivées pour se faciliter la tâche à l'avenir.
Pourquoi les dispositifs de sécurité désactivés sont-ils si dangereux ?
Le fait d'avoir une ou plusieurs fonctions de sécurité désactivées est néfaste pour plusieurs raisons. Tout d'abord, la fonction de sécurité a été intégrée aux ressources de l'infrastructure pour les protéger contre un exploit, une menace ou une vulnérabilité connus. S'il est désactivé, il ne pourra pas protéger vos ressources.
Les attaquants essaieront toujours de trouver en premier les failles facilement exploitables et peuvent même utiliser un script pour passer en revue les faiblesses les plus courantes. C'est un peu comme si un voleur vérifiait toutes les voitures d'une rue pour voir si une porte est déverrouillée, ce qui est beaucoup plus facile que de briser une fenêtre. Les pirates peuvent être surpris de constater qu'un dispositif de sécurité courant est inactif. Mais lorsque cela se produit, il ne leur faut 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.
Pour illustrer la manière dont un pirate peut tirer parti d'une fonction de sécurité désactivée, prenons l'exemple de la fonction de sécurité AWS S3 qui consiste à bloquer l'accès public. Avec le blocage de l'accès public à Amazon S3, les administrateurs de comptes et les propriétaires de seaux peuvent facilement mettre en place 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 à un bac S3 décident de le rendre public afin d'effectuer la tâche le plus rapidement possible. S'ils oublient d'activer cette fonction de sécurité, un pirate aura un accès complet aux informations stockées dans ce seau S3, ce qui entraînera non seulement la divulgation d'informations, mais aussi des coûts supplémentaires dus aux frais de transfert de données.
Comparons un peu de code réel ; regardez ces extraits de CloudFormation :
Vulnérable :
CorporateBucket :
Type : AWS::S3::Bucket
Propriétés :
PublicAccessBlockConfiguration :
BlockPublicAcls : false
BlockPublicPolicy : false
IgnorePublicAcls : false
RestrictPublicBuckets : false
VersioningConfiguration :
Status : Enabled
BucketEncryption :
ServerSideEncryptionConfiguration :
- ServerSideEncryptionByDefault :
SSEAlgorithm : "AES256"
Sécurisé :
CorporateBucket :
Type : AWS::S3::Bucket
Propriétés :
PublicAccessBlockConfiguration :
BlockPublicAcls : true
BlockPublicPolicy : true
IgnorePublicAcls : true
RestrictPublicBuckets : true
VersioningConfiguration :
Status : Enabled
BucketEncryption :
ServerSideEncryptionConfiguration :
- ServerSideEncryptionByDefault :
SSEAlgorithm : "AES256"
Empêcher la désactivation des dispositifs de sécurité
Empêcher les fonctions de sécurité désactivées de nuire à votre organisation est autant une question de politique que de pratique. Il convient de mettre en place une politique ferme stipulant que les fonctions de sécurité ne doivent être désactivées que dans des circonstances très spécifiques. Les incidents au cours desquels des fonctions doivent être temporairement désactivées pour résoudre un problème ou mettre à jour des applications doivent être consignés. Une fois les travaux terminés, il convient de vérifier que les dispositifs ont été pleinement réactivés.
Si une fonction de sécurité doit être désactivée de manière permanente afin de rationaliser les opérations, d'autres protections doivent être fournies aux données concernées afin de garantir que les pirates ne pourront pas y accéder en l'absence de la protection par défaut. Si une fonction de protection nécessaire a été désactivée, ce n'est qu'une question de temps avant qu'un pirate ne trouve cette porte déverrouillée et n'exploite la situation.
Apprenez-en plus, lancez-vous des défis :
Consultez les pages du Secure Code Warrior pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients contre les ravages causés par d'autres failles de sécurité et vulnérabilités.
Prêt à trouver et à corriger cette vulnérabilité maintenant que vous avez lu l'article ? Il est temps d'essayer un défi de sécurité gamifié de l'IaC sur la plateforme Secure Code Warrior pour garder toutes vos compétences en cybersécurité aiguisées et à jour.
Il s'agit d'une série hebdomadaire couvrant les huit principales vulnérabilités de l'infrastructure en tant que code ; revenez la semaine prochaine pour en savoir plus !
Table des matières
Matias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu son doctorat en sécurité des applications à l'université de Gand, en se concentrant sur les solutions d'analyse statique. Il a ensuite rejoint Fortify aux États-Unis, où il s'est rendu compte qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. C'est ce qui l'a incité à développer des produits qui aident les développeurs, allègent le fardeau de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de l'équipe Awesome, il aime être sur scène pour présenter des conférences, notamment RSA Conference, BlackHat et DefCon.

Secure Code Warrior là pour aider votre entreprise à sécuriser le code tout au long du cycle de développement logiciel et à créer une culture où la cybersécurité est une priorité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité des systèmes d'information ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre entreprise à réduire les risques liés à un code non sécurisé.
Réserver une démonstrationTéléchargerRessources pour débuter
Thèmes et contenus de la formation Securecode
Nos contenus de pointe sont constamment développés afin de s'adapter à l'évolution constante du paysage du développement logiciel, en tenant compte de votre rôle. Les thèmes abordés couvrent tous les domaines, de l'IA à l'injection XQuery, et sont proposés pour une multitude de rôles, des architectes et ingénieurs aux chefs de produit et responsables assurance qualité. Nous vous invitons à découvrir un aperçu de notre catalogue de contenus classés par thème et par rôle.
La Chambre de commerce établit la norme en matière de sécurité à grande échelle axée sur les développeurs
La Chambre de commerce néerlandaise explique comment elle a intégré le codage sécurisé dans le développement quotidien grâce à des certifications basées sur les rôles, à l'évaluation comparative du Trust Score et à une culture de responsabilité partagée en matière de sécurité.
Modélisation des menaces avec l'IA : transformer chaque développeur en modélisateur de menaces
Vous repartirez mieux équipé pour aider les développeurs à combiner les idées et les techniques de modélisation des menaces avec les outils d'IA qu'ils utilisent déjà pour renforcer la sécurité, améliorer la collaboration et créer des logiciels plus résilients dès le départ.
Ressources pour débuter
Cybermon est de retour : les missions KI « Beat the Boss » sont désormais disponibles sur demande.
Cybermon 2025 Beat the Boss est désormais disponible toute l'année dans SCW. Il utilise des exigences de sécurité IA/LLM avancées pour renforcer le développement sécurisé de l'IA à grande échelle.
Explication de la loi sur la cyber-résilience : implications pour le développement de logiciels sécurisés dès la conception
Découvrez les exigences de la loi européenne sur la cyber-résilience (CRA), à qui elle s'applique et comment les équipes de développement peuvent s'y préparer en adoptant des méthodes sécurisées, en prévenant les failles de sécurité et en renforçant les compétences des développeurs.
Facteur 1 : Critères de réussite définis et mesurables
Le catalyseur n° 1 inaugure notre série en dix parties intitulée « Les catalyseurs de la réussite » et démontre comment un codage sécurisé peut être associé à des résultats commerciaux tels que la réduction des risques et la rapidité afin d'atteindre une maturité programmatique à long terme.




%20(1).avif)
.avif)
