Skip to main content

Infrastructure-Drift und Drift-Erkennung erklärt

Artikel von

Lauren Place

feature iac drift pink

9. März 2022

0 Min. Lesezeit

Hinweis zur Einstellung: Drift-Erkennung für verwaltete Ressourcen

Die Drift-Erkennung für verwaltete Ressourcen, einschließlich snyk iac describe --only-managed and snyk iac describe --drift, wurde eingestellt. Die Drift-Erkennung für verwaltete Ressourcen wird am 30. September 2023 endgültig eingestellt.

Erwartungen und Realität stimmen nicht immer überein. Wenn Sie begonnen haben, Ihre Infrastruktur mit Infrastructure as Code (IaC) zu verwalten, sind Sie bereits auf dem Weg zu sichereren Cloud-Bereitstellungsprozessen. Doch im Lebenszyklus der Infrastruktur gibt es noch einen zweiten Aspekt: Woher wissen Sie, welche Ressourcen in Ihrer Cloud noch nicht mit IaC verwaltet werden? Und entsprechen die verwalteten Ressourcen in der Cloud weiterhin dem Zustand, den Sie im Code definiert haben?

Änderungen an Cloud-Workloads finden ständig statt. Je mehr Workloads in der Cloud laufen, desto mehr Personen und authentifizierte Dienste interagieren mit der Infrastruktur – über mehrere Cloud-Umgebungen hinweg. Mit der zunehmenden Verbreitung von IaC und dem Wachstum der IaC-Codebasen wird es immer schwieriger, Änderungen nachzuverfolgen oder sicherzustellen, dass manuelle Konfigurationsänderungen berücksichtigt werden. Deshalb ist Drift-Erkennung wichtig: Sie schützt Automatisiertes auch nach der Bereitstellung, während es in der Cloud ausgeführt wird.

In diesem Blog erfahren Sie, was Infrastructure-Drift ist, welche Ursachen dahinterstecken und wie Sie damit umgehen – ob Sie allein entwickeln oder für ein großes Unternehmen arbeiten. Weitere Tipps zum Erkennen und Verhindern von Infrastructure-Drift finden Sie in diesem Artikel.

Was ist Infrastructure-Drift?

Infrastructure-Drift, kurz „Drift“, bezeichnet den Zustand, wenn die aktuelle Infrastruktur nicht mit der in Ihrer IaC-Konfiguration definierten Infrastruktur übereinstimmt. Diese Abweichung zwischen dem im Code definierten Zustand und der tatsächlichen Cloud-Infrastruktur kann viele Ursachen haben.

Ein Vorteil von IaC oder einer umfassenderen IaC-Abdeckung der Cloud-Ressourcen ist, dass dadurch weniger Drift entsteht. Wenn Sie gewünschte Konfigurationen und bewährte Sicherheitspraktiken vor der Bereitstellung festlegen, sind später weniger Änderungen in der Cloud-Konsole erforderlich. Dennoch lassen sich Änderungen aufgrund von Notfällen oder menschlichen Fehlern nicht immer vermeiden.

Drift kann verursacht werden durch menschliche Eingriffe, fehlerhafte Konfigurationen, unerwünschte Änderungen durch Anwendungen und vieles mehr. Zwei der häufigsten Ursachen hängen mit Prozessen oder Workflows zusammen: etwa wenn manuelle Änderungen in einer Cloud-Konsole nicht als Code übernommen werden oder Änderungen auf eine Umgebung angewendet, aber nicht auf andere übertragen werden.

Häufige Ursachen für Infrastructure-Drift:

  1. Manuelle Änderungen: Jemand erstellt oder ändert Ressourcen manuell in der Konsole, außerhalb von Terraform, CloudFormation oder anderen IaC-Tools.

  2. Authentifizierte Anwendungen: Microservices verhalten sich nicht wie vorgesehen.

  3. Nicht synchronisierte IaC-Umgebungen: Verdeckte oder unbemerkte Änderungen zwischen Umgebungen.

Was ist Drift-Erkennung?

Drift-Erkennung ist der kontinuierliche Prozess, Drift in Ihrer mit IaC verwalteten Cloud-Infrastruktur zu erkennen – insbesondere Abweichungen von Ihrer IaC, die ein Sicherheitsrisiko für Ihr Unternehmen darstellen. Im Idealfall liefert ein Drift-Erkennungstool Ergebnisse in einer für Entwickler verständlichen Form (z. B. wird eine Terraform-Ressource direkt und korrekt formatiert angezeigt), damit Entwickler das Problem schnell verstehen und in der bereitgestellten Infrastruktur beheben können.

Sie können sich das als zweite Phase der IaC-Sicherheit vorstellen. Während der Entwicklung und in Build-Pipelines erkennen Sie Fehlkonfigurationen und setzen Sicherheitsleitplanken in IaC durch – und auch dann, wenn Änderungen bereits in die Produktion übernommen wurden.

„Jedes Drift-Ereignis führt zu Unsicherheit, zusätzlichem Aufwand für die Behebung und einem potenziellen Sicherheitsproblem.“

DevOps-Interviewpartner

Drift-Erkennung ist wichtig, denn Ihre Sicherheit ist nur so gut wie das, was tatsächlich in Ihren Cloud-Umgebungen bereitgestellt wird und läuft. Wenn Sie die Verwaltung Ihrer Infrastruktur mit IaC automatisiert haben, entsteht oft ein trügerisches Sicherheitsgefühl – doch es kommt zu Änderungen. Genau deshalb brauchen Sie Drift-Erkennung. Sie müssen im Blick behalten, was automatisiert ist, und die Sicherheit während des _gesamten Infrastruktur-Lebenszyklus_ gewährleisten – vom Schreiben einer IaC-Konfiguration bis zu ihrer Bereitstellung in der Cloud.

Was passiert, wenn Drift nicht behoben wird?

Ob absichtlich oder nicht: Mit IAM-Schlüsseln und einem SDK kann ein Entwickler großen Schaden anrichten. Es ist entscheidend, Fehlentscheidungen schnell zu erkennen und den Zustand wiederherzustellen, in dem die Infrastruktur ordnungsgemäß und sicher ist.

Zu den möglichen Folgen von Infrastructure-Konfigurationsdrift gehören …

  • Datenschutzverletzungen: Durch Drift können kritische Daten offengelegt werden.

  • Anwendungsausfälle: Drift kann zum Absturz von Anwendungen führen.

  • Fehlgeschlagene Bereitstellungen: Drift kann dazu führen, dass Ihre Bereitstellung fehlschlägt.

In all diesen Fällen kann eine umfassendere IaC-Abdeckung oder ein größerer Anteil der mit IaC verwalteten Infrastruktur dazu beitragen, Drift zu minimieren und Probleme schneller zu beheben, als wenn sie _nicht mit IaC verwaltet_ würden. Im Gegensatz zu automatisierten Infrastruktur-Bereitstellungen mit IaC benötigen manuell konfigurierte oder nicht verwaltete Ressourcen mehr Zeit für die Einrichtung und sind fehleranfälliger. Mit IaC können Sie die Einrichtung Ihrer Infrastruktur standardisieren und so das Risiko von Konfigurationsfehlern oder gelöschten Abhängigkeiten reduzieren (z. B. einer fehlenden Sicherheitsgruppenregel oder IAM-Richtlinie).

Bei Datenschutzverletzungen können Sie Sicherheitskontrollen standardisieren, wenn alle Ressourcen mit IaC verwaltet werden, und Probleme verhindern oder abmildern – etwa, dass ein S3-Bucket öffentlich zugänglich wird. Bei einem Ausfall können Sie Ihre Infrastruktur effizienter nachverfolgen und die letzte funktionierende Version wiederherstellen, bevor der Vorfall eingetreten ist.

Drift-Erkennung und Drift-Management im Vergleich

Drift-Management ist ein umfassenderer Sicherheitsansatz, um das Drift-Risiko zu reduzieren und Drift schnell zu beheben. Dazu werden Drift bei verwalteten Ressourcen und _auch_ nicht verwaltete Ressourcen in Ihren Cloud-Umgebungen erkannt, damit diese unter Kontrolle gebracht werden können.

In einer idealen Welt hätten Sicherheits- und Entwicklungsteams eine IaC-Abdeckung von 100 % für ihre Cloud-Ressourcen. Der Workflow würde etwa so aussehen: Eine nicht verwaltete Ressource wird erkannt und als Code importiert. Anschließend wird sie getestet und entsprechend den definierten Best Practices für IaC-Sicherheit und Compliance-Richtlinien Ihres Unternehmens in einen ordnungsgemäßen und sicheren Zustand versetzt.

Infrastruktur absichern und mit dem Code synchron halten

Ein umfassender Ansatz für IaC-Sicherheit umfasst folgende Schritte:

  1. Erhöhen Sie die IaC-Abdeckung Ihrer Cloud-Ressourcen über alle Cloud-Umgebungen hinweg.

  2. Nutzen Sie ein IaC-Sicherheitstool, um Ihre Konfigurationen während der Entwicklung und in Build-Pipelines zu scannen. So erkennen Sie Fehlkonfigurationen frühzeitig und können Sicherheitsprüfungen bestehen.

  3. Nutzen Sie Ihr IaC (Terraform oder AWS CloudFormation), um synchronisierte Infrastruktur zu erkennen.

  4. Setzen Sie ein Open-Source-Tool zur Drift-Erkennung (driftctl) ein, um Drift-Probleme in der Produktion zu erkennen und die Ergebnisse in einer für Entwickler verständlichen Form zu melden.

  5. Reagieren Sie auf die Ergebnisse von driftctl, indem Entwickler weiteren Code hinzufügen und ihn unverändert in Terraform importieren.

  6. Schließen Sie den Feedback-Kreislauf, indem Sie Ihr IaC-Sicherheitstool (oder snyk iac test) verwenden, um diese neu erstellten Terraform-Konfigurationen abzusichern.

  7. Wiederholen Sie den Vorgang, bis Sie mit der Abdeckung zufrieden sind – bei Bedarf für jede Region.

  8. Richten Sie abschließend so viele wiederkehrende Jobs wie nötig für Warnmeldungen ein (zum Beispiel eine stündliche Prüfung auf Änderungen an IAM und eine tägliche Prüfung weniger kritischer Cloud-Dienste).

Was Sie bei der Behebung von Drift beachten sollten

Heutzutage gibt es zahlreiche Tools zur Drift-Erkennung und zum Drift-Management. Bei der Auswahl eines Tools sollten Sie einige Aspekte berücksichtigen.

Überlegen Sie bei Ihrer Entscheidung, welche Zugriffsrechte Sie dem Tool erteilen (z. B. Vollzugriff, Nur-Lese-Zugriff oder eine Richtlinie mit minimalen Berechtigungen). Bestimmte Tools wie Terraform erfordern vollständig authentifizierten Zugriff, während andere Nur-Lese-Zugriff benötigen. Driftctl (siehe oben) verwendet Zugriffsrechte mit minimalen Berechtigungen – also nur die, die für die Erkennung von Drift erforderlich sind.

Drift-Management mit Snyk IaC

Wenn Sie nicht verwaltete Ressourcen unter IaC-Kontrolle bringen und zugleich Drift bei Ihren verwalteten Ressourcen erkennen möchten, bietet Snyk genau diese Möglichkeiten. Das Drift-Management in Snyk IaC hilft Ihnen, die Infrastruktur schneller abzusichern, indem es Probleme und Lösungen direkt an Entwickler meldet – in einer für sie verständlichen Form. Durch schnellere Feedback-Schleifen zwischen Cloud-Sicherheits- und Entwicklungsteams können Entwickler die Verantwortung für ihr Terraform übernehmen – vom Code bis zur Cloud – und Infrastrukturkonfigurationen auch nach der Bereitstellung absichern. Außerdem werden nicht verwaltete Ressourcen in Cloud-Umgebungen sichtbar gemacht, damit Sie sie unter IaC-Kontrolle bringen und das Drift-Risiko von Anfang an reduzieren können.

Sichern Sie Ihre Infrastruktur an der Quelle

Snyk automatisiert die IaC-Sicherheit und Compliance in Workflows und erkennt abweichende sowie fehlende Ressourcen.

Weiterlesen

feature insights context
Blog

Autonome Angriffe sind bereits Realität. Die Verteidigung muss Schritt halten.

Autonome Angreifer verkürzen das Zeitfenster für die Verteidigung. Erfahren Sie, wie kontinuierliches Erkennen, Beheben, Validieren und Verhindern Sicherheitsteams helfen kann, Schritt zu halten.

Blog

Evo ADS Govern Agent Behavior ist allgemein verfügbar: MCP-Nutzung unter Kontrolle bringen

Evo ADS Govern Agent Behavior ist jetzt allgemein verfügbar und startet mit MCP Governance. Entdecken, genehmigen, überwachen, protokollieren und blockieren Sie die MCP-Server-Nutzung in führenden KI-Coding-Agenten.

illustration hero ai
Blog

Was ist Agentic AppSec?

Erfahren Sie, wie Agentic AppSec fundierte, klar begrenzte und unabhängig überprüfte KI-Agenten einsetzt, um den Application-Security-Kreislauf zu steuern.