Erweiterungen beim Snyk IaC-Scanning: Infrastructure as Code für Azure und AWS
23. Februar 2021
0 Min. LesezeitVor Kurzem habe ich über Infrastructure as Code (IaC) geschrieben und darüber, wie das IaC-Scanning von Snyk Probleme in Ihren Vorlagen erkennen kann, bevor diese bereitgestellt werden. Unser Engineering-Team erweitert kontinuierlich den Umfang unserer IaC-Scanning-Richtlinien, um Ihre Plattformen besser vor Schwachstellen und anderen Problemen zu schützen.
In diesem Beitrag stellen wir das IaC-Scanning-Tool vor, betrachten die jüngsten Ergänzungen – darunter Infrastructure as Code für Azure, GCP und AWS – und zeigen, wie Ihre Teams es aktiv in die DevSecOps-Bemühungen Ihres Unternehmens einbinden können.
Warum sollte ich IaC scannen?
IaC-Vorlagen enthalten den deklarativen Zustand, in dem Ihre Anwendungen in verschiedenen Bereitstellungsumgebungen ausgeführt werden sollen. Ich sehe sie – ebenso wie andere Artefakte wie Dockerfiles – gern als automatisierte Ablaufpläne. Sie halten das gesamte implizite Wissen und die Abläufe fest, die mit manuellen Bereitstellungen verbunden sind, und fassen sie in standardisierten, wiederholbaren Schritten zusammen, die vor ihrer Ausführung überprüft und getestet werden können. Außerdem können Sie damit Prinzipien der Softwareentwicklung wie Code-Reviews und Freigaben auf Ihren Infrastrukturcode anwenden. Die Scanning-Tools von Snyk führen eine automatisierte Überprüfung durch: Sie gleichen Ihre vorhandenen IaC-Vorlagen mit unserem kuratierten Satz an Richtlinien und Best Practices ab und erstellen einen Bericht mit allen gefundenen Problemen, ausführlichen Beschreibungen und Empfehlungen zur Behebung.
Bei IaC geht es meist nicht um „Schwachstellen“ – zumindest nicht im klassischen Sinn. IaC-Anwender machen sich in der Regel keine Sorgen, dass eine Zero-Day-Schwachstelle plötzlich ihre IaC-Definitionen beeinträchtigt. Stattdessen konzentrieren sie sich eher auf die Einhaltung der Richtlinien und Standards von Sicherheits- und Architekturteams. In der Praxis bedeutet das, dass Änderungen am Code fortlaufend getestet werden sollten. Dazu passt es gut, Tests in Pipelines bei einem Push oder Pull Request auszuführen.
Kubernetes kann jedoch selbst die besten Pläne durchkreuzen. Ein Beispiel dafür ist die Man-in-the-Middle-Angriff-Schwachstelle im Kubernetes Service, die sich in allen Kubernetes-Versionen ausnutzen ließ. Sie erhielt die Kennung CVE-2020-8554, wurde am 8. Dezember 2020 öffentlich bekannt gegeben, und während ich diesen Beitrag schreibe, gibt es noch keinen Patch für diese Schwachstelle. Bei allen, die Snyk IaC zur Überwachung nutzten, wurde rasch eine aktualisierte Richtlinie hinzugefügt. Sie erhielten daraufhin automatisch Warnmeldungen über die kontinuierliche Snyk-GitHub-Scanning-Funktion – auch ohne selbst einen Scan gestartet zu haben.

Wenn Sie neu bei IaC sind und erfahren möchten, wie das Scanning mit Snyk funktioniert, lesen Sie unseren Beitrag zu Infrastructure-as-Code-Tools für einen ausführlicheren Überblick.
Neue Ergänzungen beim Sicherheits-Scanning für Infrastructure as Code
Zu den anfänglich von Snyk IaC gescannten Problemen gehörten Kubernetes, Helm Charts und Terraform-AWS-Ressourcen. Seit der ersten Veröffentlichung haben Snyk Engineers kontinuierlich neue Richtlinien hinzugefügt und so den Umfang des Scannings erweitert. Zu den jüngsten Ergänzungen gehören:
Terraform-Infrastructure-as-Code für AWS
Über 100 Richtlinien für Bereiche wie:
S3-Zugriffskontrolle und Protokollierung
Verschiedene Prüfungen auf sensible Daten (z. B. hartcodierte Geheimnisse und unsichere Einstellungen) in Lambda, EC2 und EKS
Erkennung fehlender Verschlüsselung gespeicherter Daten bei verschiedenen Diensten
Unsichere IAM-Berechtigungspraktiken
Terraform-Infrastructure-as-Code für Azure
Azure wird jetzt ebenfalls unterstützt, unter anderem mit Prüfungen für:
Best Practices für die Protokollierung
Best Practices für App Services
MYSQL: Probleme rund um SSL und Benachrichtigungen
Verschiedene Probleme mit PostgreSQL, unter anderem:
SSL
Drosselung von Verbindungen
Protokollierung
Probleme mit dem Zugriff auf und der Verschlüsselung von Speicherkonten
Google Cloud Platform (GCP)
Neu sind auch GCP-Ressourcen, darunter:
Zuweisung von IAM-Benutzern
Probleme rund um GCP Kubernetes
Kubernetes
Die Abdeckung für Kubernetes- und Helm-Ressourcen wird mit neuen Richtlinien kontinuierlich erweitert. Dazu gehören insbesondere:
Container-Prüfungen, unter anderem auf:
freigegebenen SSH-Port
Host-Geräteeinbindungen
fehlende Liveness-Probes
usw.
Dienste mit externer IP-Adresse (das oben erwähnte Scanning für CVE-2020-8554)
PSP-Prüfungen, unter anderem auf:
zu weit gefasste Berechtigungen für Volume-Einbindungen
Seccomp
AppArmor-Probleme
Zulassen der Root-GID in Container-Prozessen
Den eigenen IaC-Code zu scannen, ist ganz einfach
Bei Snyk sind wir stolz darauf, Sicherheit einfach nutzbar zu machen. Wir sind überzeugt: Wenn Entwickler Tools erhalten, die sich in ihre Workflows einfügen, können sie aktiv dazu beitragen, Schwachstellen und Sicherheitsprobleme direkt an der Quelle zu beseitigen.
Sie können sofort mit dem Scannen Ihrer IaC-Vorlagen beginnen, indem Sie ein kostenloses Konto auf Snyk.io erstellen.
Weitere Informationen zu den Neuigkeiten bei Snyk in diesem Jahr finden Sie in diesem Artikel meiner Kollegen Jim Armstrong und Daniel Berman. Darin gehen sie auf alle Cloud-Native-Funktionen und Ankündigungen ein, die Snyk 2020 vorgestellt hat.
Machen wir 2021 zum bisher sichersten Jahr!
Sichern Sie Ihre Infrastruktur an der Quelle
Snyk automatisiert die IaC-Sicherheit und Compliance in Workflows und erkennt abweichende sowie fehlende Ressourcen.
