Cloud Security

Grundlagen

Der Begriff Cloud steht als Kurzform für Cloud Computing. Eine Cloud besteht aus räumlich entfernt stationierten Servern, auf die über eine gesicherte und geschützte Internetverbindung von jedem beliebigen Ort aus jederzeit zugegriffen werden kann.

Arten von Clouds

Cloud-Dienste können anhand der Organisationsform in verschiedene Arten unterteilt werden:

Arten Beschreibung Beispiel/ Anbieter
Public Viele Kunden teilen sich eine Infrastruktur; für sensible Daten weniger geeignet Speicher wie Dropbox und Google Drive; SaaS-Lösungen wie Microsoft Office 365
Private Infrastruktur wird beim Anbieter für einen einzelnen Kunden zur Verfügung gestellt oder im eigenen Haus betrieben; empfehlenswert bei hohen Ansprüchen an Sicherheit und Datenschutz Spezialisierte Anbieter für gemanagte und gehostete private Clouds; verfügbar auch bei einigen SaaS-Anbietern
Hybrid Mischung aus Private und Public Cloud z. B. Abbildung unkritischer Anwendungen in einer Public Cloud, Ablage sensibler Daten jedoch in einer Private Cloud

Cloud Services

Servicemodell Beschreibung
Software as a Service (SaaS) Bereitstellung von Software via Internet, auch „Software on demand“ genannt; Betrieb, Wartung und Updates werden durch den Anbieter vorgenommen
Platform as a Service (PaaS) Bereitstellung von Laufzeit- und Entwicklungsumgebungen; Speicher- und Rechenkapazitäten sind flexibel anpassbar
Infrastructure as a Service (IaaS) Bereitstellung von virtualisierten Hardware-Ressourcen wie Speicher, Rechner und Netzwerk

Datenschutz und Sicherheit in der Cloud

Sicherheit und Datenschutz sollten bei der Nutzung von Cloud-Diensten unbedingt gewährleistet sein. Dies gilt insbesondere für Unternehmen, die sicherstellen müssen, dass ausschließlich berechtigte Nutzer Zugriff auf ihre Dateien haben. Handelt es sich um personenbezogene Daten, sind darüber hinaus die strengen Vorgaben der EU-DSGVO zu beachten. Public-Cloud-Dienste, bei denen Dateien in Rechenzentren außerhalb der EU gespeichert werden, scheiden für Unternehmen damit komplett aus. Doch auch bei europäischen Standorten und privaten Clouds müssen Sicherungsmechanismen (z. B. Verschlüsselung der Übertragung, Zugriffsberechtigungen) vorhanden sein, um die Sicherheit der Daten zu gewährleisten.

Was ist Cloud Pentesting

Cloud-Penetrationstests sind eine Angriffssimulation, die durchgeführt wird, um Schwachstellen zu finden, die ausgenutzt werden können, oder um Fehlkonfigurationen in einem Cloud-basierten System zu finden. Mit Cloud-Penetrationstests lernen Unternehmen die Stärken und Schwächen ihres Cloud-Systems kennen, um dessen allgemeine Sicherheitslage zu verbessern.

Cloud-Pentesting-Tools

CloudBrute

AWS S3 ist ein Cloud-Speicherdienst. CloudBrute ist ein Open-Source-Tool, mit dem Sie die AWS S3-Buckets des Kunden aufzählen können. Das Tool ist modular und anpassbar und wird im Allgemeinen bevorzugt, weil es relativ schnell ist. Merkmale des Tools sind:

Cloud-Erkennung (IPINFO API und Quellcode)
Nicht authentifizierter Blackbox-Test
Fähigkeit, plattformübergreifend zu arbeiten
User-Agent-Randomisierung
Proxy-Randomisierung

Das Tool unterstützt alle großen Cloud-Anbieter. Die Liste der von CloudBrute unterstützten Cloud-Anbieter sind:

Microsoft: Speicher, Apps
Amazon: Speicher, Apps
Google: Speicher, Apps
DigitalOcean: Speicher
Vultr: Speicher
Linode: Lagerung
Alibaba: Lagerung

CloudSplaining

Cloudsplaining ist ein Open-Source-Tool, das Ihnen hilft, die Verletzung der geringsten Rechte bei AWS-IAM-Richtlinien herauszufinden, indem es alle Richtlinien im AWS-Konto scannt und Ihnen einen HTML-Bericht gibt. Es kann alle Richtlinien in einem AWS-Konto oder einer einzelnen Richtliniendatei scannen. Es hilft, den Behebungsprozess zu priorisieren, indem es IAM-Richtlinien kennzeichnet, die Risiken darstellen. Cloudsplainig kann auch die IAM-Rollen identifizieren, die von AWS übernommen werden können. Das Markieren dieser Rollen ist besonders nützlich für Penetrationstester oder Angreifer in verschiedenen Szenarien.

Enumerate-iam

Wenn AWS-Anmeldeinformationen von Kunden jemals gestohlen oder erfasst werden, würde es viel Zeit in Anspruch nehmen, herauszufinden, für welche Dienste diese Anmeldeinformationen autorisiert sind. Um diesen Prozess zu vereinfachen, kann ein Open-Source-Tool namens enumerate-iam verwendet werden. Es versucht, alle von der IAM-Richtlinie zugelassenen API-Aufrufe auf zerstörungsfreie Weise brutal zu erzwingen. Ein weiterer guter Teil dieses Tools ist, dass es bei Bedarf einfach in andere Tools integriert werden kann.

Herausforderungen

Cloud-Penetrationstest Vorgehen

1: Verstehen Sie die Richtlinien des Cloud-Anbieters

Jeder Cloud-Anbieter hat eine Pentesting-Richtlinie, die erlaubte und verbotene Dienste und Aktivitäten zum Testen enthält. Bevor wir beginnen, müssen wir sicher sein, welche Cloud-Dienste in der Umgebung des Kunden verwendet werden und welche Dienste von Cloud-Pentestern getestet werden können. Weitere Informationen finden Sie im Microsoft Azure-Cloud-Pentest-Ansatz .

2: Erstellen Sie einen Cloud-Pentesting-Plan

Wenn wir mit Cloud-Penetrationstests beginnen, müssen wir ein paar Dinge überprüfen:

3: Wählen Sie Ihre Cloud-Pentest-Tools

Cloud-Pentest-Tools sollten einen tatsächlichen Angriff simulieren. Viele Hacker verwenden automatisierte Prozesse, um Schwachstellen zu finden, wie das wiederholte Erraten von Passwörtern oder die Suche nach APIs, die einen direkten Zugriff auf die Daten ermöglichen. Was wir tun sollten, ist zu versuchen, diese Art von Verfahren zu simulieren. Wenn unsere Cloud-Pentest-Tools unsere Anforderungen für Angriffsszenarien nicht erfüllen können, könnten wir unsere eigenen Systeme, Tools oder Skripte für Cloud-Pentesting schreiben.

4: Analysieren

Ohne die Analyse der Ergebnisse und Antworten wäre Cloud-Pentest sinnlos. Nachdem wir die automatisierten Tools verwendet und manuelle Tests durchgeführt haben, müssen wir die Antworten analysieren. Alle Antworten sollten dokumentiert werden. Wir sollten entscheiden, ob diese Ergebnisse falsch positive Ergebnisse oder erwartete Cloud-Antworten sind. Wenn nicht, sollten diese Feststellungen gemeldet werden. Dieser Schritt ist einer von denen, bei denen unsere Informationen und Erfahrungen in der Cloud wichtig sind.

5: Schwachstellen finden und beseitigen

Dies ist der letzte Schritt des Cloud-Pentesting-Prozesses. Nachdem alle Cloud-Tests und -Prüfungen durchgeführt wurden, sollten der Schweregrad und die Auswirkungen von Schwachstellen mit dem Cloud-Pentesting-Team besprochen und untersucht werden. Ein abschließender Cloud-Schwachstellenbericht sollte mit Empfehlungen und Abhilfemaßnahmen erstellt werden.

Cloud-Sicherheitsbedrohungen

Cloud-Modell der geteilten Verantwortung für Pentesting

Anbieter von Cloud-Diensten müssen sich an ein Modell der gemeinsamen Verantwortung für die Sicherheit halten. Wir sind für die Sicherheit in der Cloud verantwortlich, beispielsweise für die Sicherheit unserer Betriebsumgebung, einschließlich unserer Anwendungen, Server und Benutzersteuerungen. Der Cloud-Diensteanbieter ist für die Sicherheit der Cloud verantwortlich. Im AWS - Modell der geteilten Verantwortung übernimmt AWS die Verantwortung für den Schutz der Infrastruktur, die alle in der AWS Cloud angebotenen Services ausführt. Diese Infrastruktur besteht aus Hardware, Software, Netzwerken und Einrichtungen, die AWS Cloud-Services ausführen.

Autorisierung und Richtlinien

Wir sollten immer die Dienstrichtlinien der Cloud-Anbieter überprüfen. Die folgenden Tabellen veranschaulichen die Richtlinien von AWS dazu, was wir testen können und was nicht: AWS erlaubt Penetrationstests für:

Amazon EC2-Instances, NAT-Gateways und Elastic Load Balancer
Amazon RDS
Amazon CloudFront
Amazonas-Aurora
Amazon API-Gateways
AWS Lambda- und Lambda Edge-Funktionen
Amazon Lightsail-Ressourcen
Amazon Elastic Beanstalk-Umgebungen

Benutzer können problemlos Penetrationstests für diese Dienste durchführen. Die Aktivitäten, die AWS nicht zulässt, sind in der folgenden Tabelle dargestellt:

Benutzer können die folgenden Tests nicht durchführen:

DNS-Zonenwandern über Amazon Route 53 Hosted Zones
Arten von Denial-of-Service (DoS)-Angriffen
Hafenüberschwemmung
Protokollflutung
Request Flooding (z. B. Login Request Flooding, API Request Flooding)

Einige der verbotenen Aktivitäten können nach Benachrichtigung von AWS durchgeführt werden. Wenn ein Kunde beispielsweise einen Netzwerk-Stresstest oder einen DDoS-Simulationstest durchführen möchte, sollte er die AWS-Richtlinie zu Stresstests und DDoS-Simulationstests lesen . Nachdem AWS die Tests autorisiert hat, können sie durchgeführt werden.

Die zehn größten Sicherheitsbedrohungen

Laut der Cloud Security Alliance sind die zehn größten Bedrohungen für Cloud-Umgebungen, die während des Pentests bewertet werden müssen:

Datenschutzverletzungen (sensible Daten, zum Beispiel Gesundheit, Finanzen, personenbezogen Daten etc.)
Unzureichendes IAM
Unsichere Schnittstellen und APIs
Anfälligkeit des Systems
Konto-/Service-Entführung
Böswilliger Insider
Datenverlust
Mangelnde Sorgfaltspflicht
Missbrauch und ruchlose Nutzung von Cloud-Diensten
Gemeinsame Technologie-Schwachstellen