IaaS-Security

Sieben Maßnahmen für bessere Cloud-Sicherheit

31.10.2019 von Fahmida Y. Rashid, James A.  Martin und Jens Dose
Erfahren Sie, welche Sicherheitsmaßnahmen Sie in Ihren Amazon Web Services, Microsoft Azure oder Google Cloud Plattformen einsetzen sollten.

Falsch konfigurierte Cloud-Systeme sind einer der häufigsten Gründe für Datenlecks. Bei dem Vorfall der US-Bank Capital One im Juli 2019 etwa konnte ein Hacker Informationen zu 100 Millionen Kreditkartenanträgen und -Konten erbeuten. Grund dafür war eine falsch konfigurierte Open-Source Web Application Firewall (WAF), die der Finanzdienstleister für seine auf Amazon Web Services (AWS) gehosteten Vorgänge nutzte.

Nicht die Cloud-Plattform selbst, sondern der Umgang mit den verfügbaren Security-Tools stellt das größte Risiko beim IaaS-Einsatz dar.
Foto: chiqui - shutterstock.com

Die Firewall erlaubte es aufgrund falscher Einstellungen, alle Dateien in jedem AWS-Daten-Bucket des Finanzdienstleisters aufzulisten und die Dateiinhalte auszulesen. Laut dem Krebs On Security Blog konnte der Angreifer durch die Fehlkonfiguration die Firewall dazu bringen, Anfragen an eine zentrale Backend-Ressource in AWS zu wiederholen. Diese Ressource ist verantwortlich dafür, temporäre Informationen an einen Cloud-Server zu übermitteln. Zu diesen Informationen gehören auch von einem Sicherheits-Service gesendete aktuelle Anmeldedaten, um auf jede Ressource in der Cloud zuzugreifen, zu der der Server Zugang hat.

Der Vorfall betraf etwa 100 Millionen US-Bürger wobei 140.000 Sozialversicherungsnummern und 80.000 Bankkontonummern gestohlen wurden. Insgesamt könnte sich der Schaden für Capital One laut Informationen von US-Nachrichtensender CNBC auf bis zu 150 Millionen Dollar belaufen.

Das Problem wird wohl noch schlimmer

Das Beispiel zeigt das Bedrohungspotenzial schlecht konfigurierter Cloud-Services. Doch wie hoch ist das Risiko tatsächlich?

Die Analysten von Gartner schätzen, dass bis 2022 mindestens 95 Prozent aller Cloud-Security-Vorfälle auf falsche Konfiguration und Missmanagement beim Kunden zurückzuführen sind. Die Herausforderung liegt dabei nicht in der Sicherheit der Cloud selbst. In fast allen Fällen ist es der Nutzer und nicht der Cloud-Provider, der beim Management der Kontrollmechanismen zum Schutz der Unternehmensdaten versagt. CIOs sollten laut Gartner nicht fragen "Ist die Coloud sicher?" sondern "Nutzen wir die Cloud auf sichere Arte und Weise?"

Das Konfigurationsproblem entsteht jedoch nicht im luftleeren Raum. Es gibt einige Faktoren, die bei der Entstehung und Verschärfung der Lage eine Rolle spielen:

Multi-Cloud-Umgebungen bieten zwar einige Vorteile, sie können dabei aber kompliziert zu verwalten, zu steuern und zu kontrollieren sein. Laut Dan Flaherty, Director für Produktmarketing bei McAfee, sind Security-Teams, die Daten auf IaaS-Plattformen absichern sollen, ständig damit beschäftigt, Fehler zu finden und Lecks abzudichten. "Zudem haben sie keine Möglichkeit zur automatischen Überwachung und Korrektur von falschen Einstellungen über alle Cloud-Services hinweg," sagt er.

Wegen des starken Wettbewerbs im wachsenden IaaS-Markt fügen Amazon, Google und Microsoft ihren Angeboten ständig neue Features hinzu. "Allein AWS launchte 2019 etwa 1.800 neue Funktionen. Zum Vergleich: Im ersten Jahr nach dem Start besaß der Service lediglich 28," kommentierte John Yeoh, Vice President Research der Cloud Security Alliance gegenüber der COMPUTERWOCHE-Schwesterpublikation CSO. Security-Verantwortliche haben es schwer, mit der hohen Taktung immer neuer Optionen und Stellschrauben mitzuhalten. Das wiederum kann zu falschen Konfigurationen führen. Laut Yeoh benötigen Unternehmen in einer komplexen Multi-Cloud-Umgebung für jede einzelne Plattform oder jeden genutzten Service einen Experten, der sicherstellt, dass die richtigen Sicherheitsmaßnahmen im Einsatz sind.

Weitere Cloud-Entwicklungen, wie Serverless-Anwendungen und -Architekturen, Workloads und Dienste in Kubernetes-Containern und mehr Schnittstellen (APIs), die Cloud-Services miteinander verbinden, steigern zudem das Risiko falscher Einstellungen. Hier gilt es, Zugriffsrechte ständig zu überwachen und anzupassen. "Nutzer fangen gerade erst an, die Gefahren dieser neuen Cloud-Technologien und Trends zu verstehen," sagte Balaji Parimi, CEO von CloudKnox Security der CSO. Zu oft würden veraltete Security-Methoden mit statischen Rollen und Zugangsprivilegien auf neue Technologien angewendet.

Sieben Sicherheitsmaßnahmen für die Cloud

Um die genannten Probleme in den Griff zu bekommen, raten die Experten zu diesen Maßnahmen:

1. Verantwortlichkeiten klären

Software-as-a-Service (SaaS)-Anbieter stellen sicher, dass die Anwendungen selbst sowie die übermittelten und gespeicherten Daten abgesichert sind. Bei IaaS ist das anders. So liegt bei Instanzen der AWS Elastic Compute Cloud (EC2), Amazon Elastic Block Store (EBS) und Amazon Virtual Private Cloud (VPC) die volle Verantwortung bei den Anwendern. Sie müssen sich unter anderem um die Konfiguration des Betriebssystems, die Verwaltung der Anwendungen und die Datensicherheit kümmern.

Im Gegensatz dazu verwaltet Amazon bei S3 das Betriebssystem und die Anwendungen. Die Nutzer sind für das Datenmanagement, die Zugriffskontrolle und Identitätsrichtlinien zuständig. Amazon stellt die Tools bereit, um die Daten für S3 zu verschlüsseln. Es liegt aber am Nutzer, für den Schutz der Daten zu sorgen, wenn sie auf den Server transferiert werden oder ihn verlassen.

Es gilt also, mit dem IaaS-Provider genau zu definieren, wer für jede einzelne Sicherheitskontrolle in der Cloud zuständig ist.

2. Zugriffe kontrollieren

Laut Untersuchungen des Cloud Security Intelligence (CSI) Teams von Redlock (jetzt Teil von Palo Alto Networks) vom Mai 2018 haben gut die Hälfte aller Unternehmen mindestens einen Cloud-Speicherdienst wie AWS S3 versehentlich öffentlich zugänglich gemacht.

Generell sollten nur Load Balancer und Bastion Hosts öffentlich vom Internet erreichbar sein. Viele Administratoren erlauben auf Servern aus Versehen globale Berechtigungen, indem sie den 0.0.0.0/0-Port in den öffentlichen Subnetzen nutzen. Dadurch bleibt die Verbindung offen und gewährt jeder Maschine die Möglichkeit, sich zu verbinden.

Ein anderer häufiger Fehler ist, Secure-Shell (SSH)-Verbindungen direkt aus dem Internet zuzulassen. Dadurch kann jeder, der die Server-Location herausfindet, die Firewall umgehen und direkt auf die Daten zugreifen. 2019 suchten Forscher von Palo Alto Networks nach ungeschützten Services in der Public Cloud. Laut dem Bericht hatten von den gefährdeten Diensten 32 Prozent offene SSH-Services. Zwar ist das SSH-Protokoll eines des sichersten, aber diesen Service ungeschützt dem gesamten Internet auszusetzen, sei den Forschern zufolge dennoch zu riskant.

Die großen Cloud-Provider bieten Tools für die Identitäts- und Zugangskontrolle an, die Administratoren nutzen sollten. Damit erhalten Unternehmen Einblick, wann wem auf welche Daten Zugriff gewährt wurde. Bei der Erstellung der Richtlinien sollte das absolute Minimum an Privilegien gesetzt werden. Zusätzliche Berechtigungen sollten nur zeitlich begrenzt gewährt werden, wenn sie nötig sind. Sicherheitsgruppen, die den Datenverkehr für eine oder mehrere Instanzen gesondert steuern, sollten so spezifisch und eng wie möglich konfiguriert werden.

3. Die Daten schützen

Verschlüsselung ist eine weitere wichtige Maßnahme, um die Daten in der Cloud zu schützen. Wenn es geht, sollten Unternehmen die Kontrolle über die Codierungs-Schlüssel nicht aus der Hand geben. Zwar ist es möglich, Service-Providern Zugang zu den Schlüsseln zu geben, die Verantwortung für die Daten bleibt jedoch beim Unternehmen selbst.

Betriebe sollten die Verschlüsselungs-Tools und Management-Dienste der Anbieter in jedem Fall nutzen, denn sie bieten eine weitere Notabsicherung im Ernstfall. Selbst wenn die Sicherheitskonfigurationen versagen und Daten in die falschen Hände geraten, sind sie verschlüsselt für die Diebe nutzlos.

4. Zugangsdaten absichern

Der Vorfall bei Identitäts- und Passwortmanager OneLogin 2017 zeigte, dass AWS-Zugangsschlüssel versehentlich auf öffentlichen Webseiten, Quellcode-Repositories, ungeschützten Kubernetes-Dashboards und anderen Foren auftauchen können. Die Keys sollten als hochkritische Informationen behandelt werden und es gilt, Entwickler dafür zu sensibilisieren.

Unternehmen sollten einzigartige Schlüssel für jeden externen Service erstellen und Zugriff nach dem Least-Privilege-Prinzip einschränken. Schlüssel sollten keine weitreichenden Berechtigungen besitzen. Es gilt, Rollen im Identitäts- und Zugriffsmanagement (IAM) zu erstellen, denen spezifische Privilegien zugewiesen sind - etwa API-Anfragen zu stellen.

Schlüssel sollten regelmäßig ausgetauscht werden, um Angreifern keine Zeit zu geben, mit abgefangenen Keys Cloud-Umgebungen als privilegierte User zu infiltrieren.

Der Root-User-Account sollte nur für spezielle Aufgaben verwendet werden. Er sollte nicht als Administrator-Konto zum Einsatz kommen. Nutzen Sie den Root-User, um einen neuen Nutzer mit zugewiesenen Privilegien anzulegen. Den Root-User-Account gilt es, beispielsweise durch Multi-Faktor-Authentifizierung (MFA) abzuschotten und nur für spezifische Account- und Service-Management-Aufgaben zu nutzen. Für alles andere sollten Nutzer mit passenden Berechtigungen bereitgestellt werden. Ungenutzte Accounts sollten abgeschaltet werden.

5. Security-Hygiene bleibt wichtig

Cloud-Umgebungen sollten durch den koordinierten Einsatz mehrerer Sicherheitsmaßnahmen (Defense in depth) geschützt werden. Sollte eine Kontrollinstanz ausfallen, können andere Security-Funktionen greifen und die Anwendung, das Netzwerk und die Daten weiterhin schützen.

Multi-Faktor-Authentifizierung liefert eine weitere Schutzschicht über das Name-Passwort-Paar und macht es Angreifern schwerer, einzudringen. MFA sollte beim Zugriff auf Management-Konsolen, Dashboards und Privilegierte Accounts zur Anwendung kommen.

6. Sichtbarkeit verbessern

Große Cloud-Anbieter bieten verschiedene Arten von Logging-Tools. Mit Security-Logging und Monitoring können unautorisierte Zugriffe und andere Probleme sichtbar gemacht werden. Amazon bietet beispielsweise CloudTrail, um AWS-Umgebungen zu prüfen. Wird es eingeschaltet, protokolliert es alle AWS-API-Aufrufe inklusive der Identität und Quell-IP-Adresse des Callers, den Zeitpunkt der Anfrage, die Anfrage-Parameter und die Antwortelemente, die der AWS-Service zurückgegeben hat. Es erlaubt auch, das Tracking anzupassen und ermöglicht Ressourcen-Management, Security-Analysen und Compliance-Audits.

7. "Shift Left" in der Scurity

"Shift Left" bedeutet, bestimmte Maßnahmen früher in einem Prozess einzubauen. In der Security bezeichnet es den Trend, Sicherheitsbelange von Anfang in der Entwicklung zu berücksichtigen und nicht erst kurz vor der Fertigstellung. "Unternehmen sollten nicht nur überwachen, was in ihren IaaS-Plattformen passiert, sondern auch allen Code überprüfen, der für die Plattform bestimmt ist, bevor er in den Produktivbetrieb übergeht," sagt Flaherty von McAfee. Durch den Shift Left könnten potenzielle Fehlkonfigurationen gefunden und beseitigt werden, bevor sie zum Problem werden. Security-Tools, die in Jenkins, Kubernetes etc. integriert werden können, helfen dabei, die Fehlersuche und Korrekturen zu automatisieren.

Für Sam Bisbee, CSO beim Cloud-Security-Anbieter Threat Stack, ist der Shift Left allein nicht genug. Es gelte auch, die bereits laufenden Workloads auf ihren Compliance-Status hin zu überprüfen. Code, der einmal geprüft und eingesetzt wird, erfüllt zu einem bestimmten Zeitpunkt wahrscheinlich die Richtlinien. Bleiben die Workloads aber über Monate oder Jahre im Produktivbetrieb, können neue Schwachstellen auftauchen, die das Risiko steigern. Schutz bedeutet laut Bisbee auch kontinuierliches Monitoring.

Sichtbarkeit vor Kontrolle

Als grundlegende Sicherheitsmaßnahme sollten Unternehmen laut Bisbee ihre komplette Infrastruktur samt aller auf ihr laufenden Services kennen und verstehen. Für ihn bedeutet Security in erster Linie Sichtbarkeit und nicht Kontrolle. Zwar sei das in komplexen Multi-Cloud-Umgebungen nicht einfach, aber es erleichtere den Job der Security-Verantwortlichen. "Es ist einfacher zu verstehen, wie etwas funktionieren sollte und dann Veränderungen festzustellen, als ständig neue Löcher zu flicken," sagt Bisbee. Bedrohungen wie Fehlkonfigurationen ließen sich so leichter aufspüren und aktiv beheben.