AWS-CloudFormation-Fehlkonfigurationen mit Snyk IaC scannen
Ilianna Papastefanou
17. Juni 2021
0 Min. LesezeitWir freuen uns, die Unterstützung für AWS CloudFormation in Snyk Infrastructure as Code bekannt zu geben. In unserem aktuellen Bericht Infrastructure as Code Security Insights haben wir festgestellt, dass 36 % der Umfrageteilnehmenden AWS CloudFormation (CF) als primäres Infrastructure-as-Code-Tool verwendeten. Mit Snyk Infrastructure as Code können Sie Ihre CF-YAML- oder JSON-Vorlagen jetzt anhand unseres umfassenden Satzes an AWS-Sicherheitsregeln überprüfen.
Mit diesen neuen Funktionen können Sie Ihre CloudFormation-Dateien wie jeden anderen Code behandeln und die Sicherheit frühzeitig im Entwicklungsprozess berücksichtigen. So wird Sicherheit zu einem integralen Bestandteil Ihrer Infrastrukturentwicklungs- und Deployment-Pipelines.
Integrieren, wo es darauf ankommt
Die Funktion ist sowohl beim Importieren eines Repositorys als auch über unsere CLI verfügbar. So können Sie sie überall integrieren – von der lokalen Entwicklung bis hin zur Versionsverwaltung und Ihren CI/CD-Pipelines.
Mit diesem Beispiel-Repository, das unsichere CloudFormation-Vorlagendateien enthält, haben wir das Repository von GitHub in Snyk integriert und eine Reihe von Problemen in den CF-Dateien erkannt.

Sie können das Repository in Snyk aufklappen, um die Liste der gescannten Konfigurationsdateien anzuzeigen. Im folgenden Bildschirm haben wir die Datei db.yml ausgewählt. Hier sehen Sie die gefundenen Konfigurationsprobleme, die den entsprechenden Zeilen in der ursprünglichen CF-Vorlage zugeordnet sind:

Alternativ können Sie dasselbe Feedback über die Snyk CLI erhalten, die die Dateien lokal verarbeitet. Das bedeutet, dass keine Daten an Snyk gesendet werden.
AWS Cloud Development Kit verwenden
Das AWS Cloud Development Kit (AWS CDK) ist ein Open-Source-Framework für die Softwareentwicklung, mit dem Sie die Ressourcen Ihrer Cloud-Anwendung in vertrauten Programmiersprachen definieren können. Mit dem AWS CDK können Sie Ihre Infrastruktur beispielsweise in TypeScript oder Python definieren, statt YAML zu schreiben. Dieser Ansatz bietet mehr Flexibilität und Zugänglichkeit: Entwicklerinnen und Entwickler können eine Sprache und IDE verwenden, mit denen sie bereits vertraut sind, und Programmierkonstrukte einsetzen, um auf Vorlagen für YAML-Dateien zu verzichten.
Sie können Ihre AWS-CDK-Dateien auch mit der Funktion iac test in der Snyk CLI scannen. Konvertieren Sie sie dazu zunächst mit dem integrierten Unterbefehl synth des AWS CDK in eine JSON-Datei.
Mit einem weiteren Beispiel, in dem TypeScript zur Definition einer Infrastruktur verwendet wird, können Sie die folgenden Befehle ausführen, um die Konfigurationen in Ihren Pipelines mit der Snyk CLI zu testen:
Dieser Workflow eignet sich hervorragend für eine Build-Pipeline, in der er bei jedem Pull Request vollständig automatisiert ausgeführt werden kann. Zum Zeitpunkt der Veröffentlichung lassen sich AWS-CDK-Dateien nur über einen CLI-gesteuerten Workflow scannen.
Umfassende Sicherheitsregeln für Konfigurationen
Umfassende Sicherheitsrückmeldungen setzen eine große Bandbreite und Tiefe an Sicherheitsregeln voraus. Snyk verfügt über ein eigenes Security-Engineering-Team, das neue Regeln recherchiert, validiert und kontinuierlich zum Produkt hinzufügt – für AWS gibt es bereits über 100, und es werden immer mehr.
Beim Hinzufügen von Regeln stellen wir eine angemessene Abdeckung sicher, indem wir bewährte Best Practices mit unserer eigenen Sicherheitsforschung kombinieren. Best Practices leiten sich sowohl aus den Standards der Cloud-Anbieter als auch aus Community-Standards ab – zum Beispiel aus CIS-Benchmarks sowie Kubernetes- und AWS-Best-Practices. Unsere eigene Sicherheitsforschung umfasst Methoden wie Threat-Modeling-Übungen zu wichtigen Nutzungsmustern. So untersuchen wir beispielsweise Einstellungen in verwalteten Kubernetes-Angeboten, um herauszufinden, wo sich Schwachstellen durch eine geeignete IaC-Härtung vermeiden lassen.
Sie können den Schweregrad der Snyk-IaC-Regeln anzeigen und ändern. Navigieren Sie dazu in Ihrer Snyk-Organisation zu Einstellungen und wählen Sie im linken Menü Infrastructure as Code aus. Wenn Sie die Ansicht auf AWS CloudFormation beschränken möchten, wählen Sie unter den Einstellungen für den Schweregrad den Tab AWS und dann CloudFormation (oder Terraform, falls Sie dies bevorzugen). Wir bemühen uns, formatunabhängige Regeln zu schreiben. Daher werden die meisten Regeln unabhängig davon angezeigt, welche Optionen Sie auswählen.

Eine vollständige Liste unserer AWS-CloudFormation-Sicherheitsregeln finden Sie öffentlich im Bereich Security Rules auf unserer Website.

Kostenlos mit Snyk IaC loslegen
Diese neuen Funktionen können alle ausprobieren, auch Nutzerinnen und Nutzer eines kostenlosen Plans. So legen Sie ganz einfach los:
Wenn Sie noch kein Snyk-Konto haben, registrieren Sie sich kostenlos.
Installieren Sie die Snyk CLI. Wenn Sie die Snyk CLI bereits installiert haben, stellen Sie sicher, dass Sie Version 1.629.0 oder höher verwenden, um diese Funktionen nutzen zu können.
Scannen Sie Ihre CloudFormation-Dateien. Der Hauptbefehl zum Scannen von IaC mit den neuen Funktionen lautet:
snyk iac test <path-to-file-or-folder>
Weitere Informationen zu den verschiedenen Scan-Optionen finden Sie in der Snyk-Dokumentation oder in der CLI-Dokumentation. Führen Sie dazu Folgendes aus: snyk iac --help
Wir freuen uns über Ihr Feedback! Wenn Sie bereits Snyk-Kunde sind, ist Ihr Customer-Success-Team eine gute Anlaufstelle für Produktfeedback. Kommentare von allen sind aber auch in unserem Snyk-Community-Forum willkommen.
Sichern Sie Ihre Infrastruktur an der Quelle
Snyk automatisiert die IaC-Sicherheit und Compliance in Workflows und erkennt abweichende sowie fehlende Ressourcen.
