Skip to main content

Diskussionen darüber, wie Chaos Engineering die Sicherheit verbessern kann

Artikel von
blog feature fuzzing tools

3. August 2023

0 Min. Lesezeit

Wenn Sie sich in einer angespannten Situation auf ein Hilfsmittel verlassen, möchten Sie sicher sein, dass es unter Extrembedingungen getestet wurde. Wenn Sie zum Beispiel Fallschirmspringen gehen, möchten Sie wissen, dass der Fallschirm auf Ihrem Rücken rigoros getestet wurde und genau dann funktioniert, wenn Sie ihn am dringendsten brauchen.

Dasselbe gilt für die Systeme, die unsere Sicherheitsinitiativen unterstützen. Was passiert, wenn diese Systeme in einem Notfall stark belastet werden?

Chaos Engineering beantwortet diese Frage, indem Systeme auf kontrollierte und systematische Weise bis an ihre Grenzen getestet werden. Mit gezielten Experimenten stellen Teams fest, ob ihr System einer hohen Belastung standhält oder noch angepasst werden muss.

Was ist Chaos Engineering?

Chaos Engineering baut auf der Chaostheorie auf: der Idee, dass sich in scheinbar zufälligen und unerwarteten Ereignissen Muster erkennen lassen. Mit gezielten Experimenten, die zeigen, wie ein System mit solchen Ereignissen zurechtkommt, können sich Teams besser auf den Ernstfall vorbereiten.

Security Chaos Engineering konzentriert sich speziell darauf, Cybersicherheitssysteme zu testen, die in Notfällen wie Datenschutzverletzungen oder Angriffen als „First Responder“ fungieren würden. Teams speisen solche möglichen Ereignisse in das System ein und beobachten anschließend dessen Verhalten.

Aaron Rinehart, CTO und Mitgründer von Verica, sprach im Podcast The Secure Developer mit Guy Podjarny, Gründer und Präsident von Snyk, über Chaos Engineering – in Folge 67. Er fasste Security Chaos Engineering so zusammen: „Dabei werden proaktiv Bedingungen herbeigeführt, von denen Sie erwarten, dass sie Ihre Sicherheitsmaßnahmen auslösen.“

Auch Kelly Shortridge, VP of Product Strategy bei Capsule8, sprach mit Guy in Folge 63. Sie erörterten, wie Security Chaos Engineering die Grenzen eines Systems testet und uns daran erinnert, dass Sicherheitsprogramme in der Praxis nicht im luftleeren Raum existieren. Kelly zufolge gilt: „Security Chaos Engineering sagt im Grunde: ‚Nein, so funktioniert die Welt nicht. Sie brauchen … ein wirklich intellektuell ehrliches Modell, in dem Sie alle Erkenntnisse aus Fehlern annehmen und sie einfach als Lernchance betrachten.‘“

Warum ist Chaos Engineering für die Sicherheit notwendig?

Chaos Engineering ist für die Sicherheit entscheidend, denn es zeigt, dass Ihre Sicherheitskontrollen dem Unerwarteten und Unvorhersehbaren standhalten. Letztlich führen diese Experimente zu einem widerstandsfähigeren Produkt.

Aaron nannte mehrere Gründe, warum Security Chaos Engineering für Entwicklungs- und Sicherheitsteams unverzichtbar ist. Zum einen stärkt es Systeme proaktiv gegen unerwartete Ereignisse und schafft so Vertrauen darin, dass das System unter allen Umständen wie vorgesehen funktioniert. Zum anderen versetzt Chaos Engineering Sicherheitsteams in die Lage, Systemprobleme zu erkennen, bevor sie öffentlich zutage treten.

Er vergleicht es mit einem kontrollierten Abbrennen: „Ich bin auf einer Farm in Missouri aufgewachsen. Es ist also ein bisschen so, wie wenn wir ein Feld kontrolliert abgebrannt haben. Man zündet nicht einfach ein Streichholz an und legt los. Man informiert den Bezirk, holt den Rettungsdienst und die Feuerwehr dazu – alle sind vor Ort, falls etwas passiert, richtig? So führt man Chaos Engineering durch … man gerät nicht in Panik, denn bei [echten Ausfällen] geraten die Leute in Panik. Ihre kognitive Kapazität wird davon beansprucht: ‚Das könnte ein Sicherheitsvorfall sein. Der CEO ist am Telefon und sagt mir, ich muss das System wieder zum Laufen bringen; jemand wird deswegen seinen Job verlieren.‘“

So starten Sie Security Chaos Engineering in Ihrem Unternehmen

Wenn Ihr Sicherheitsteam Chaos-Engineering-Experimente durchführen möchte, haben Aaron und Kelly ein paar Tipps:

Konzentrieren Sie sich auf Fehler im Engineering

Beginnen Sie mit gezielten Experimenten, die manuelle Fehler im Engineering aufdecken. Bei einem Security-Chaos-Engineering-Experiment könnte es beispielsweise darum gehen, einen falsch konfigurierten Port oder ein Konto mit übermäßig großzügigen Berechtigungen auszunutzen – zwei häufige, durch menschliches Versagen verursachte Probleme.

Doch Aaron erinnert uns daran: „[Diese menschlichen Fehler] sind nicht die Schuld einzelner Engineers. Vielmehr sind Umfang, Größe, Komplexität und Geschwindigkeit, mit denen wir heute Dinge entwickeln, für Menschen mental nur schwer zu erfassen.“

Versuchen Sie nicht, „den Ozean zum Kochen zu bringen“

Aaron warnt außerdem davor, mit einem einzelnen Experiment zu viel erreichen zu wollen (auch bekannt als „den Ozean zum Kochen bringen“). Chaos-Engineering-Experimente müssen sich darauf konzentrieren, gezielt und systematisch einen einzelnen Fehler einzuspeisen. Diese gezielten Eingriffe unterscheiden sich von Angriffssimulationen, denn bei ihnen wird jeweils nur ein einzelnes Problem getestet.

Aaron sagte: „Wenn Sie mehrere Angriffspunkte durchgehen und große Datenmengen an das System senden, ist es sehr schwierig, diese Daten auszuwerten: Was ist kaputtgegangen, was nicht, was hat funktioniert, was nicht … Durch all das Rauschen verlieren Sie den Überblick.“

Rechnen Sie mit Fehlern

Wenn Sie mit den Experimenten beginnen, ist es außerdem wichtig, sich nicht entmutigen zu lassen, wenn Ihr System der Herausforderung nicht standhält. Fehler sind eines der wichtigsten Werkzeuge im Chaos Engineering. Kelly sagte: „Für die Sicherheit ist ein philosophischer Wandel notwendig: Wir müssen akzeptieren, dass Fehler unvermeidlich sind und sehr wertvoll sein können.“

Die Zukunft des Chaos Engineering

Da Unternehmen weiterhin auf Cloud-Transformation setzen und ihre Systeme immer komplexer werden, wird es für Teams wichtiger denn je, Chaos Engineering einzusetzen. Aaron erklärt, dass eine Cloud-Transformation keine Voraussetzung für Chaos Engineering sein sollte. Vielmehr sollte es umgekehrt sein: Chaos Engineering bereitet Unternehmen auf die Cloud-Transformation vor. Indem Teams von Anfang an die Wirksamkeit ihrer neuen Cloud-Funktionen testen, sind sie besser darauf vorbereitet, diese auch in Zukunft zu erhalten. Aaron sagt: „Ein komplexes System lässt sich nur verstehen, indem man mit ihm interagiert.“

Möchten Sie tiefer in Security Chaos Engineering eintauchen und erfahren, wie es für Sie und Ihr Unternehmen funktionieren könnte? Hören Sie sich die Podcast-Folgen mit Aaron und Kelly an:

  • Folge 63: Containersicherheit, Microservices und Chaos Engineering mit Kelly Shortridge

  • Folge 67: Security Chaos Engineering – was ist das und warum sollten Sie sich dafür interessieren? Mit Aaron Rinehart

Weitere Inhalte zu Developer Security, AppSec und DevSecOps finden Sie, wenn Sie noch heute The Secure Developer abonnieren!