Détectez les erreurs de configuration AWS CloudFormation avec Snyk IaC
Ilianna Papastefanou
17 juin 2021
0 minutes de lectureNous sommes ravis d’annoncer la prise en charge d’AWS CloudFormation dans Snyk Infrastructure as Code. Dans notre récent rapport Infrastructure as Code Security Insights, nous avons constaté que 36 % des personnes interrogées utilisaient AWS CloudFormation (CF) comme principal outil d’infrastructure as code. Avec Snyk Infrastructure as Code, vous pouvez désormais analyser vos modèles CF YAML ou JSON à l’aide de notre ensemble complet de règles de sécurité AWS.
Grâce à ces nouvelles fonctionnalités, vous pouvez traiter vos fichiers CloudFormation comme n’importe quel autre code et intégrer la sécurité en amont, dès le début du processus de développement. La sécurité devient ainsi partie intégrante de vos pipelines de développement et de déploiement de l’infrastructure.
Intégrez la sécurité là où c’est important
Cette fonctionnalité est disponible aussi bien en important un dépôt qu’avec notre CLI. Vous pouvez donc l’intégrer à toutes les étapes, du développement local à la gestion du code source et aux pipelines CI/CD.
À l’aide de cet exemple de dépôt contenant des fichiers de modèles CloudFormation non sécurisés, nous avons intégré le dépôt GitHub à Snyk et détecté différents problèmes dans les fichiers CF.

Dans Snyk, vous pouvez développer le dépôt pour afficher la liste des fichiers de configuration analysés. Dans la capture ci-dessous, nous avons sélectionné le fichier db.yml . Vous voyez ici les problèmes de configuration détectés, associés à la ligne correspondante dans le modèle CF d’origine :

Vous pouvez également obtenir les mêmes résultats avec la CLI Snyk, qui traite les fichiers localement : aucune donnée n’est envoyée à Snyk.
Utiliser AWS Cloud Development Kit
L’AWS Cloud Development Kit (AWS CDK) est un framework open source qui permet de définir les ressources de vos applications cloud dans des langages de programmation familiers. Avec AWS CDK, vous pouvez définir votre infrastructure dans un langage de programmation que vous connaissez mieux, comme TypeScript ou Python, au lieu d’écrire du YAML. Cette approche offre davantage de flexibilité et d’accessibilité : vous pouvez utiliser un langage et un IDE que vous maîtrisez déjà, ainsi que des constructions de programmation qui évitent d’avoir à créer des modèles YAML.
Vous pouvez également analyser vos fichiers AWS CDK avec la fonctionnalité iac test de la CLI Snyk, après les avoir convertis en fichier JSON à l’aide de la sous-commande intégrée synth d’AWS CDK.
Avec un autre exemple, qui utilise TypeScript pour définir une infrastructure, vous pouvez exécuter les commandes suivantes afin de tester les configurations de vos pipelines avec la CLI Snyk :
Ce workflow convient parfaitement à un pipeline de build où il peut être entièrement automatisé à chaque pull request. À la date de publication, les fichiers AWS CDK peuvent uniquement être analysés au moyen d’un workflow piloté par la CLI.
Des règles complètes pour la sécurité des configurations
La profondeur et l’étendue des règles de sécurité sont essentielles pour obtenir une évaluation complète de votre sécurité. Snyk dispose d’une équipe dédiée à l’ingénierie de la sécurité, qui étudie, valide et ajoute continuellement de nouvelles règles au produit — plus de 100 pour AWS, et ce nombre continue d’augmenter.
Lorsque nous ajoutons des règles, nous veillons à couvrir les besoins en combinant les bonnes pratiques reconnues et nos propres recherches en sécurité. Les bonnes pratiques s’inspirent des normes des fournisseurs cloud et de la communauté, comme les benchmarks CIS et les recommandations relatives à Kubernetes et AWS. Nos recherches en sécurité s’appuient notamment sur des exercices de modélisation des menaces portant sur les principaux modes d’utilisation. Par exemple, nous examinons les paramètres des offres Kubernetes gérées afin de déterminer quelles vulnérabilités peuvent être évitées en renforçant correctement l’IaC.
Pour consulter et modifier la gravité des règles Snyk IaC, accédez aux Settings de votre organisation Snyk, puis sélectionnez Infrastructure as Code dans le menu de gauche. Pour n’afficher que les règles AWS CloudFormation, sélectionnez AWS parmi les onglets sous Severity settings, puis choisissez CloudFormation (ou Terraform, si vous préférez). Nous nous efforçons de créer des règles indépendantes du format ; la plupart des règles affichées apparaîtront donc quels que soient les filtres sélectionnés.

Vous pouvez également consulter la liste complète de nos règles de sécurité AWS CloudFormation dans la section Security Rules de notre site.

Commencez gratuitement avec Snyk IaC
Tout le monde peut essayer ces nouvelles fonctionnalités, y compris les utilisateurs de l’offre gratuite. Pour commencer, rien de plus simple :
Si vous n’avez pas encore de compte Snyk, inscrivez-vous gratuitement.
Installez la CLI Snyk. Si elle est déjà installée, vérifiez que vous disposez de la version 1.629.0 ou ultérieure pour profiter de ces fonctionnalités.
Analysez vos fichiers CloudFormation. La commande principale permettant d’analyser l’IaC avec ces nouvelles fonctionnalités est :
snyk iac test <path-to-file-or-folder>
Pour en savoir plus sur les différentes options d’analyse disponibles, consultez la documentation Snyk ou la documentation de la CLI en exécutant : snyk iac --help
Nous serions ravis de connaître votre avis ! Si vous êtes déjà client Snyk, votre équipe Customer Success est un excellent relais pour nous faire part de vos commentaires sur le produit. Vous pouvez également nous laisser un commentaire sur notre forum Snyk Community.
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.
