olegusk - stock.adobe.com
Fehlerhafte Konfigurationen in der Cloud erkennen
Mit den richtigen Kenntnissen und Tools lassen sich fehlerhafte Konfigurationen in der Cloud vermeiden und aufspüren. So können Unternehmen ihre Daten besser schützen.
Seit es Menschen gibt, ist bekannt, dass Fehler unvermeidbar sind. Das kann jeder bestätigen, der schon einmal versehentlich mit einem Fahrzeug ein kleines Stück rückwärts statt nach vorne gefahren ist. Irren ist menschlich, das ist uns allen klar.
In der IT-Welt können diese allzu leicht geschehenden Fehler allerdings eine ernste Gefahr für die Sicherheit von Unternehmen bedeuten. Ein Fehler bei der Konfiguration oder in der Entwicklung eines Geräts, einer Anwendung oder einer anderen genutzten Ausrüstung kann für schwerwiegende Sicherheitslücken verantwortlich sein, über die Angreifer in ein Unternehmen eindringen, Daten stehlen oder auf andere Weise für Schaden in unerwartetem Ausmaß sorgen können.
Das war natürlich schon immer so. In der Cloud ist die Situation aber weit schlimmer, da diese Systeme in der Regel immer eingeschaltet und über das Internet erreichbar sind. Das sorgt dafür, dass jeder Fehler in der Konfiguration einer Cloud-Lösung von Angreifern rund um die Uhr und von überall aus ausgenutzt werden kann. In der Fachpresse kann man darüber immer wieder in aller Ausführlichkeit lesen. So gelangte etwa im Frühjahr 2018 ein erneuter Fall bei Amazon S3 (Simple Storage Service) in die Schlagzeilen, bei dem 48 Millionen Kundendaten des Versicherungsspezialisten AgentRun frei zugänglich waren. Dazu gehörten nicht nur finanzielle, sondern auch medizinische und andere Daten über die Gesundheit der Kunden von AgentRun. Eine schlecht konfigurierte Kubernetes-Instanz offenbarte private Informationen, die für jeden offen lesbar waren, der mehr oder weniger zufällig darüber stolperte. Dazu gehörten auch die Zugangsdaten zu dem genutzten Bucket bei S3.
Da man davon ausgehen muss, dass auch weiterhin vergleichbare Fälle von fehlerhaften Konfigurationen auftreten werden, stellen sich viele IT-Profis die folgende Frage: „Was können wir unternehmen, um sicherzustellen, dass so etwas bei uns nicht passiert?“ Zum Glück handelt es sich dabei um ein lösbares Problem. Genauso wie es bereits Methoden und Strategien gibt, um fehlerhafte lokale Konfigurationen zu finden und zu beheben, gibt es auch vergleichbare Möglichkeiten für die Cloud. Aber genau wie bei einer On-Premises-Strategie erfordert dies einige Anstrengungen, viel Disziplin und umfangreiche Vorbereitungen.
Die Wahrscheinlichkeit einer fehlerhaften Konfiguration reduzieren
Das wichtigste Element bei jeder Strategie zur Vermeidung von fehlerhaften Konfigurationen in der Cloud besteht aus zwei Dingen, die gleichzeitig erledigt werden sollten. Erstens müssen Sie die Wahrscheinlichkeit verringern, dass es überhaupt zu einer fehlerhaften Konfiguration kommt und zweitens müssen Sie dafür sorgen, dass die Auswirkungen möglichst gering sind. Dazu benötigen Sie ein profundes Verständnis der Sicherheitsmaßnahmen Ihres Cloud-Providers.
Jeder, der sich mit dem Deployment von Anwendungen in der Cloud befasst, muss genau verstehen, welche Security-Funktionen der Cloud-Provider anbietet, um die Umgebung abzusichern. Außerdem muss klar sein, wie das verwendete Security-Modell funktioniert und welche Möglichkeiten es dabei gibt. Sowohl die IT-Sicherheitsspezialisten als auch die Ingenieure und Anwendungsentwickler, die die Ressourcen später nutzen, müssen das verwendete Security-Modell vollständig verstehen. Dazu kommen auch die Admins, die für den täglichen Betrieb der Infrastruktur verantwortlich sind.
Auch wenn das nicht wie Raketentechnik klingt, muss dies doch eindeutig klargestellt werden. Einer der wesentlichen Gründe für den damit verbundenen Aufwand ist, dass nicht jede Cloud-Umgebung dieselbe ist. So sind in der Regel andere Maßnahmen nötig, um ein Bucket bei S3 zu sichern, als bei einer vergleichbaren Ressource bei Azure Storage. Dort läuft es wiederum anders als bei der Absicherung einer Ressource bei Google Cloud. Vom zugrundeliegenden Konzept mögen sie vergleichbar sein, im Detail sind sie aber keinesfalls identisch. Außerdem kommt dazu, dass unterschiedliche Dienste bei einem Provider oft auf verschiedenen Konzepten und Tools basieren, so dass auch sie nicht direkt miteinander vergleichbar sind. Das bedeutet, dass Sie sich nicht nur genau in dem von Ihrem Cloud-Anbieter verwendeten Security-Modell auskennen müssen, sondern auch mit den von Ihrem Unternehmen eingesetzten Produkten.
Das Minimum ist dabei, sich mit den verschiedenen sicherheitsrelevanten Konfigurationsmöglichkeiten auszukennen und zu wissen, was sie bewirken oder was vermieden werden sollte. So muss eindeutig klar sein, warum es etwa bei Docker problematisch ist, Container mit Root-Rechten auszuführen. Außerdem sollte bekannt sein, was bestimmte Begrifflichkeiten bedeuten. So bezieht sich die Bezeichnung „authentifizierter Anwender“ bei S3 auf eine Authentifizierung gegenüber Amazon und nicht auf eine Authentifizierung gegenüber Ihren eigenen Anwendungen oder Ihrem Unternehmen.
Aufgrund der teilweise deutlichen Unterschiede gibt es nicht nur einen einzigen wichtigen Ratgeber oder auch nur ein Set von bewährten Best Practices, mit denen Sie sich für jede Eventualität vorbereiten könnten. Auf einem abstrakten Level gelten jedoch ein paar Kernprinzipien, die hilfreich sein können. Dazu gehört etwa, Daten wann immer möglich zu Verschlüsseln, das Prinzip des geringsten Zugriffsrechts anzuwenden, der Einsatz mehrstufiger Sicherheitsmaßnahmen sowie das Sicherstellen geeigneter Möglichkeiten zur Überwachung. Oder anders gesagt, auch hier greifen dieselben grundsätzlichen Sicherheitsprinzipien, die schon immer galten. Am wichtigsten ist dabei, sich rechtzeitig mit der Frage zu beschäftigen, wie sich die von Ihnen bereits im Unternehmen eingesetzten Sicherheitsrichtlinien auch auf die Cloud anwenden lassen. Wesentlich ist dabei vor allem, welche Optionen zur Verfügung stehen, um diese Vorgaben auch in Ihrer Cloud-Umgebung wirkungsvoll umzusetzen.
Kontrolliertes Vertrauen
Dabei darf natürlich nicht vergessen werden, dass fehlerhafte Konfigurationen in der Cloud nie ganz verschwinden werden. Es gibt keine bekannte Möglichkeit, die Wahrscheinlichkeit auf null zu senken. Über eine längere Periode gesehen, wird es irgendwo und irgendwann zu einer oder mehrerer fehlerhaften Konfigurationen kommen. Das hat zur Folge, dass es eine gute Idee ist, zusätzlich zu den bisher beschriebenen Maßnahmen zur Fehlervermeidung, auch Kapazitäten aufzubauen, um aktiv nach fehlerhaften Konfigurationen in der Cloud zu suchen. Nur so lassen sie sich so schnell wie möglich aufspüren.
Dafür gibt es mehrere unterschiedliche Strategien, die Sie einsetzen können. So stehen mittlerweile automatisierte kommerzielle Tools wie AlertLogic und Detectify sowie andere Werkzeuge aus dem Open-Source-Bereich wie CloudSploit für AWS-Nutzer zur Verfügung, die Sie einsetzen können. Sie eignen sich aber nur für Security-Teams mit dem passenden Budget, den Ressourcen und den Kenntnissen, um die von ihnen generierten Resultate auch richtig interpretieren zu können. Ähnlich wie Schwachstellen-Scanner genutzt werden können, um lokal fehlerhafte Konfigurationen zu finden, kann ein vergleichbarer Prozess auch für die Cloud aufgesetzt werden. Dazu muss natürlich genau bekannt sein, welche Cloud-Dienste ein Unternehmen tagtäglich nutzt.
Zusätzlich dazu sollten Sie auch über systematische Audits für Ihre Cloud-Umgebungen nachdenken. So kann sich beispielsweise ein technisch versiertes Audit-Team jeweils einen Teil Ihrer Cloud-Anwendungen vornehmen, um fehlerhafte Konfigurationen aufzudecken. In einem großen Unternehmen ist es nicht möglich, jedes einzelne Objekt in jeder genutzten Cloud-Umgebung einer ausführlichen Analyse zu unterziehen. Genauso unmöglich ist es, jeden einzelnen Knoten im internen Netzwerk gründlich zu überprüfen. Aber es ist zumindest realisierbar, sich jeweils mit einem sinnvoll gewählten Ausschnitt zu beschäftigen. Zusammen mit robusten Trainingsmaßnahmen für Ihre Mitarbeiter kann dies eine nützliche Strategie für die nähere Zukunft sein, falls weder die Zeit noch das Budget vorhanden sind, um einen teuren und aufwendigen automatisierten Ansatz verwenden zu können.
Folgen Sie SearchSecurity.de auch auf Twitter, Google+, Xing und Facebook!