Kitabı oku: «Cloud Security: Praxisorientierte Methoden und Lösungen für sicheres Cloud Computing», sayfa 2
Herausforderung Cloud Security: Wandel in Technologie und Organisation
Tino Hirschmann und Marcel Reviol
1 Wandel der IT
1.1 Historie
Für ein gutes Verständnis von modernen Cloud-Plattformen sowie den damit verbundenen Sicherheitskonzepten auf technischer und organisatorischer Seite ist es wichtig, eine kurze Zeitreise zu den Anfängen der IT in Unternehmen zu starten. Bei einer Nutzung von Cloud-Diensten wird jede darunterliegende Computer-Hardware im Rechenzentrum des Cloud-Anbieters automatisch für den Anwender durch die Virtualisierung unsichtbar. Allerdings werden diese Technologien immer noch verwendet. Für jeden jüngeren „Digital Native“ lohnt sich daher z.B. ein Besuch im Deutschen Museum in München, wo auch verschiedene Generationen von Computern angeschaut werden können.
Mainframe / Großrechner
Großrechner zeichneten sich durch hohe Zuverlässigkeit sowie einen hohen Datendurchsatz bei der Ein- und Ausgabe aus. Eine Wartung konnte ohne Unterbrechung oder Beeinträchtigung des Betriebes durchgeführt werden. Diese Eigenschaften wurden durch eine herstellerspezifische Abstimmung der Hardwarekomponenten und Betriebssysteme sowie einer integrierten Redundanz ermöglicht.
Der Betrieb der Großrechner sowie die Datenhaltung erfolgten entweder im Rechenzentrum des Herstellers, dem eines IT-Dienstleisters oder in einem firmeneigenen Rechenzentrum des Unternehmens, insofern Ressourcen und Kompetenzen vorhanden waren.
Der Zugriff erfolgte über Hardwareterminals, während die Benutzerverwaltung zentral auf dem Großrechner durchgeführt wurde.
Firmeneigenes Rechenzentrum ab dem Jahr 1980
In den Jahren ab 1980 gab es in den Büros der Unternehmen erste lokale Installationen von auf x86 basierenden Personal Computern (PCs), welche durch interne IT-Teams verwaltet wurden.
Gleichzeitig waren Großrechner in den Rechenzentren immer noch stark verbreitet, und es war eine Koexistenz zwischen beiden Technologien vorhanden. Die zentrale Verwaltung von Rechten erfolgte weiterhin auf dem Großrechner. Eine weitere Absicherung gegen Ausfälle neben den integrierten Hardwareredundanzen der Großrechner erfolgte durch ein Backup-Rechenzentrum beim Hersteller/Dienstleister.
Anbindungen an das damals noch nicht weit verbreitete Internet waren zu dieser Zeit nur in den Bereichen Forschung oder Verteidigung vorhanden. Üblich war hingegen die Verbindung von Bedienterminals z. B. in Unternehmensaußenstellen zum Großrechner über Telefoneinwahlverbindungen bzw. Standleitungen.
Die ersten Serverbetriebssysteme zur Bereitstellung von Dateisystemen, Druckern und Verzeichnisdiensten in einem Rechnernetz wurden verfügbar, welche unabhängig von der darunterliegenden Hardware eingesetzt werden konnten. Diverse Netzwerktechnologien wurden bereits unterstützt.
Eigenes Rechenzentrum ab dem Jahr 1990
Erste Betriebssysteme mit einer grafischen Oberfläche, welche auf unterschiedlichen Prozessorarchitekturen lauffähig waren, kamen auf den Markt und verbreiteten sich in den Unternehmen. Parallel dazu wurde die Zuverlässigkeit verbessert und dadurch ein Einsatz von systemkritischen Anwendungen attraktiv. Die Sicherheit stand zunehmend im Fokus, und eine Zuweisung von Rechten war nun auch im Bereich der Personal Computer, wie bereits zu früheren Zeiten bei Großrechnern, möglich. Eine zentrale Verwaltung in einem Verzeichnisdienst ermöglichte die Kontrolle der Anmeldungen an größere Umgebungen vom vernetzten Personal Computer. Eine Funktionalität für die Hochverfügbarkeit von Netzwerkbetriebssystemen wurde durch die Hersteller bereitgestellt. Zum Einsatz kamen überwiegend physische Server verschiedener Hersteller mit einer dedizierten Funktion (Betriebssystem und Anwendung).
Client-Server-Architekturen ermöglichten den Einsatz von Personal Computern (PCs) in Unternehmensnetzwerken. Großrechner waren immer noch bei den Unternehmen für geschäftskritische Anwendungen verbreitet. Allerdings erfolgte der Zugriff mittlerweile mit softwarebasierenden Terminals und neueren Netzwerktechnologien.
Die Anbindung an andere Standorte der Unternehmen erfolgte über Standleitungen oder gebündelte ISDN-Leitungen. Computerviren verbreiteten sich über Dateien und Wechselmedien, da eine Anbindung an das Internet noch nicht weit verbreitet war.
Gegen Ende des Jahrzehnts wurde das Internet verstärkt durch die Unternehmen verwendet. Die ersten Computerwürmer breiteten sich durch infizierte Dateien über PCs und Server aus, welche an das Internet angebunden waren.
Die ersten Softwareprodukte zur Virtualisierung von physischen Computersystemen auf der x86-Prozessortechnologie kamen gegen Ende des Jahrzehnts auf den Markt. Durch diese Technologie war es möglich, eine oder mehrere virtuelle Maschinen auf einer physischen Hardware zu betreiben. Erweiterungen der x86-Prozessorarchitekturen für eine Hardwareunterstützung der Virtualisierungsfunktionen waren zu diesem Zeitpunkt noch nicht verfügbar und wurden durch die Prozessorhersteller erst im Folgejahrzehnt bereitgestellt.
Der Betrieb der IT-Umgebungen in Unternehmen wurde überwiegend durch interne IT-Teams verantwortet, wobei auch erste Unternehmen ihre IT durch externe Dienstleister betreiben ließen. Der Begriff „Outsourcing“ wurde geboren.
Eigenes Rechenzentrum ab dem Jahr 2000
Der Trend zum Outsourcing verstärkte sich bei den Unternehmen, da eine Fokussierung auf der Kernkompetenzen im Vordergrund stand. Erste Verlagerungen von IT-Aufgaben an externe Dienstleister – auch bereits mit Personalressourcen in Ländern wie Indien – zur Einsparung von Kosten waren auf der Agenda von vielen Unternehmen. Jedoch war es für Unternehmen notwendig, dass ein interner IT-Bereich mit verschiedenen fachlichen Ausprägungen zur Steuerung der externen Dienstleister weiterhin vorhanden war.
Die verstärkte Anbindung an das Internet durch Unternehmen (für E-Mail-Dienste etc.) brachte neue Herausforderungen für die IT-Sicherheit in den Bereichen der Clients sowie der Netzwerkübergänge zum Internet Provider (über Wählverbindung/ Standleitung). Neue Technologien wie Firewalls, Proxy-Server, Anti-Virus-Gateways und Intrusion Detection waren nun bei den Unternehmen im Rechenzentrum vorhanden. Das Rechenzentrum mit seinen Grenzen galt als sicheres Perimeter. Jeder eingehende und ggf. auch ausgehende Datenverkehr wurde zur Absicherung gegen Angriffe kontrolliert.
Die Absicherung der Clients und Server erfolgte durch zentral verwaltete Anti-Virus-Lösungen sowie mit gehärteten Betriebssystemen.
Der erste Computerwurm Love Letter verursachte im Jahr 2000 geschätzte Schäden von bis zu 10 Milliarden Dollar. Bei weiteren darauffolgenden Infektionen durch Computerwürmer wurden Schwachstellen in Betriebssystemen und Anwendungen ausgenutzt.
Ein erster Einsatz von Produkten zur Server-Virtualisierung erfolgte in den Produktivumgebungen der Unternehmen. Hierbei wurden eine bessere Auslastung und Nutzung der x86-Hardware ermöglicht. Durch die Virtualisierung war es nun einfacher, Unternehmen gegen Szenarien wie den Ausfall eines Rechenzentrums abzusichern.
Durch den Einsatz von Multi-Tier-Architekturen wurde für Unternehmen die sichere Bereitstellung von Anwendungen mit Web-Technologien vereinfacht. Dazu wurden komplexe DMZ-Umgebungen2 mit verstärkten Sicherheitssystemen aufgebaut. Ein besonderer Fokus auf IT-Sicherheit ergab sich durch die Bereitstellung von geschäftskritischen Anwendungen im Internet, da Serviceausfälle durch externe Angriffe oder fehlerhafte Hardware verhindert werden sollten.
Einige Vorhaben zur Ablösung von Großrechnern durch neue Client-Server-Technologien und verteilte Systeme wurden gestartet, um die teuren Lizenzkosten einzusparen und die Flexibilität bei der Auswahl der Hersteller zu verbessern.
Outsourcing
Zur Einsparung von Kosten und Freisetzung von Ressourcen übertrugen einige Unternehmen (vollständig oder teilweise) die Verantwortung für den IT-Betrieb an externe Dienstleister. Durch ein Transformationsprojekt wurde in vielen Fällen mit externer Expertise die gesamte IT eines Unternehmens modernisiert bzw. konsolidiert. Hierbei musste sich das Unternehmen auf die Zuverlässigkeit sowie Vertrauenswürdigkeit des Dienstleisters verlassen. Die Einhaltung der Regeln und Prozesse durch den externen Dienstleister musste regelmäßig durch das Unternehmen überprüft werden. Das Modell der Teilung der Verantwortlichkeit zwischen Provider und Kunden bewährte sich und wurde die Vorlage für spätere Zusammenarbeitsmodelle in der Cloud (vgl. Kapitel 1.1.2). Auch beim IT-Outsourcing war bereits die Qualität des Vertrages sehr entscheidend für die klare Regelung von Verantwortlichkeiten zwischen Provider und Kunden, um die damit verbundenen Probleme zu vermeiden.
Die Definition von Grundregeln der IT- und Datensicherheit basierend auf vorhandenen Standards sowie klar strukturierte Sicherheitsprozesse führen bei einem IT-Outsourcing teilweise zu einem höheren Sicherheitsniveau als bei einem internen Betrieb.
Virtualisierung (Compute, Netzwerk, Speicher, Hyperconverged)
Bereits bei den Mainframes / Großrechnern in den 1960er Jahren wurden die vorhandenen Ressourcen zwischen verschiedenen Anwendungen aufgeteilt. Im UNIX-Bereich war Hardwarevirtualisierung bereits bei sehr teuren High-End- und Midrange-Systemen vorhanden. Ab dem Jahr 2005 wurde durch die führenden CPU-Hersteller die Hardwarevirtualisierung unterstützt. Durch Verfügbarkeit von nativen Typ 1 Hypervisor („Bare-Metal-Hypervisor“, ohne darunterliegendes Betriebssystem) wurde die Virtualisierung von Servern für viele Unternehmen bezahlbar. Die Absicherung gegenüber Ausfällen von Rechenzentren erfolgte mit der Hardwarevirtualisierung.
Ein virtuelles Netzwerk teilte physische Netzwerke in logische Netzwerke auf, und ermöglichte somit eine Unterteilung in verschiedene Bereiche. Hierbei konnten flexible Anforderungen, die Performance sowie die Anforderungen zur Sicherheit berücksichtigt werden. Moderne Hypervisoren unterstützten gleichzeitig die Virtualisierung von Hardwareressourcen (z. B. CPUs, Speicher, Netzwerkschnittstellen etc.) sowie Netzwerken und ermöglichten somit eine Integration in vorhandene physische Netzwerkumgebungen.
Bei der Speichervirtualisierung wurden die physischen Eigenschaften der Speichersysteme gegenüber dem Benutzer abstrahiert. Physikalische Grenzen der Speichermedien mussten nicht mehr verwaltet werden und erschienen dem Benutzer demnach virtuell. Der Auslastungsgrad des physischen Speichers wurde dadurch verbessert. Außerdem konnten hierbei Redundanzen im Speichersystem (z. B. RAID, Reservekomponenten) vorgesehen werden, um die Ausfallsicherheit zu erhöhen, die hierdurch entstehenden Mehrkosten auf die Nutzer zu verteilen und dadurch zu minimieren.
Erste kritische Schwachstellen in den führenden Produkten zur Server-Virtualisierung wurden für unerlaubte Systemzugriffe ausgenutzt.
Eine hyperkonvergente Infrastruktur vereinte die verschiedenen Techniken zur Virtualisierung (Hypervisor, Speichervirtualisierung, Netzwerkvirtualisierung) in einer softwarezentrierten Architektur. Zusätzlich waren noch Werkzeuge zur Steuerung und Überwachung vorhanden. Andere Konzepte zur Anbindung an eine Cloud-Plattform sowie für die Schaffung von Redundanzen mit ggf. einem weiteren Rechenzentrumsstandort waren ebenfalls vorhanden. Die Vorteile lagen bei der Steigerung der betrieblichen Effizienz der IT, besseren Skalierbarkeit sowie schnelleren Bereitstellungszeiten. Die Betriebsverantwortung für eine hyperkonvergente Infrastruktur konnte bei einem internen IT-Team sowie auch bei einem externen Dienstleister liegen.
1.2 Cloud
Wie jeder Wandel in der IT liegt auch die zunehmende Nutzung von Cloud-Lösungen zumindest teilweise in betriebswirtschaftlichen Aspekten begründet. Beim Wechsel in die Cloud entsteht für den Benutzer unmittelbar ein Effekt in der Art der Kosten. Es fallen keine Investitionsausgaben (CAPEX – Capital Expenditures) für genutzte Hardware mehr an, es werden vielmehr nur noch die Nutzungs- und Betriebskosten (OPEX – Operational Expenditures) gezahlt. Dies kann einen Umstieg in die Cloud zum Beispiel bei zu erwartenden hohen Investitionskosten (Hardware-Refresh, RZ-Modernisierung) und schwierigem Marktumfeld weiter beschleunigen. Durch die Zusammenführung einer großen Zahl von gleichartigen Cloud-Ressourcen in gemeinsame Rechenzentren des Cloud Providers lassen sich Skalierungseffekte erzielen und die fixen Infrastrukturkosten (Gebäude, Klimatisierung, Perimeterschutz etc.) auf eine größere Zahl von Nutzern verteilen, wodurch die individuellen Kosten sinken. Eine deutliche Reduzierung der IT-Ausgaben ist allein durch die Umwandlung von CAPEX in OPEX in der Regel aber nicht zu erwarten.
Daneben gibt es jedoch weitere Motivatoren für die Nutzung von Cloud-Ressourcen. Hierzu zählt zum Beispiel eine verbesserte Flexibilität, die dadurch gewonnen werden kann. Langwierige Beschaffungs- und Abschreibungskosten von Hardware entfallen fast vollständig, und neue Ressourcen können statt durch lange dauernde Bestell- und Aufbauprozesse mit simplen „Mausklicks“ bereitgestellt werden. Durch die von Cloud Providern bereitgestellten Schnittstellen (API) ist zudem eine schnellere Entwicklung von Anwendungen und die automatisierte Bereitstellung ganzer Systemlandschaften (Stichwort: Infrastructure as Code – IaC) mit einer nahezu unbegrenzten Skalierung möglich.
Zur Erhöhung der Verfügbarkeit und zur Verbesserung der Ausfallsicherheit kritischer Anwendungen können Cloud-Ressourcen des Cloud Providers an unterschiedlichen Geolokationen genutzt werden. Auch für eine Bereitstellung der Services im globalen Rahmen stellt die zielmarktnahe Standortnutzung des Cloud Providers eine Option dar. So können Laufzeiten bei der Datenübertragung optimiert und damit für die Nutzer spürbare Performance-Einbußen vermieden werden. Die Cloud beschleunigt somit klassische IT-Abläufe und reduziert Abhängigkeiten von Inhouse IT-Abteilungen. Unter dem Gesichtspunkt der IT-Security ist „Shadow IT“, also IT-Systeme, die nicht in die Regelprozesse zum IT-Service Management einer Organisation eingebunden sind, jedoch kritisch zu sehen. Etablierte IT-Security-Prozesse und Kontrollen werden dabei häufig nicht berücksichtigt und umgesetzt.
Aus Sicht des Unternehmens bietet der Wechsel in die Cloud grundsätzlich auch Einsparungspotenzial z.B. bei den Personalkosten, da der klassische Infrastrukturbetrieb deutlich reduziert wird. Der Fokus der IT kann dadurch mehr auf die Anforderungen der Geschäftsprozesse und der Anwendungsebene konzentriert werden. Ähnliche Effekte sind jedoch auch im Rahmen des klassischen Outsourcings zu beobachten.
Auch für die Softwarehersteller von Cloud-Plattformen und insbesondere von Software as a Service (SaaS)-Diensten (wie z. B. Commerce- oder IT-Service-Management-Lösungen) bietet das Modell einen Vorteil. Durch die leichte Zugänglichkeit von Ressourcen wird dem Kunden deren Nutzung leicht gemacht, was auch direkt zu Mehreinnahmen beim Anbieter führt. Beim SaaS-Modell hat der Hersteller kontinuierliche Einnahmen, anders als beim Erwerb von Software durch den Kunden, da es nicht mehr möglich ist, die Software auch über das Ende der Supportzeit hinaus zu nutzen. Zudem entfallen aufwendige Vertriebs- und Lieferinfrastrukturen beim Software- oder SaaS-Diensteanbieter, da dieser gleichfalls die Cloud als Absatzweg nutzt.
Die Nutzung von Cloud-Lösungen bedeutet aber nicht, dass die IT-Security für den Kunden automatisch als gegeben betrachtet werden kann. Der Kunde ist auch in der Cloud abschließend für die Sicherheit seiner Daten verantwortlich.
Die Verantwortung des Cloud-Nutzers wird in der Regel im sogenannten „Shared Responsibility Model“ (Abbildung 1) abgebildet.
Abbildung 1: Verantwortungsschnitt IT-Security im Shared Responsibility Model
Maßgeblich hierbei ist die Art des vom Benutzer konsumierten Cloud-Dienstes und dessen Fertigungstiefe. Hierbei wird im Wesentlichen zwischen den folgenden Modellen unterschieden:
• Infrastructure as a Service (IaaS) Bei IaaS bezieht der Kunde im Wesentlichen virtuelle „Hardware“ bestehend aus Netzwerk, Storage- und Compute-Anteilen. Dies wird über ein Cloud-Portal bereitgestellt und kann zusätzlich über die angebotene API vollständig automatisiert provisioniert werden. Dies wird sehr häufig auch als Infrastructure as a Code bezeichnet. Es besteht hierbei jedoch kein wesentlicher Unterschied zu modernen Virtualisierungslösungen, die dies in ihren aktuellen Versionen meist ebenfalls enthalten. Aus dem Blickwinkel der IT-Sicherheit eröffnen sich jedoch einige neue Möglichkeiten. So kann eine Filterung im Netzwerk leichter und konsistenter umgesetzt werden. Eine Filterung kann dabei sowohl auf Netzwerkebene als auch direkt am virtuellen Netzwerkadapter eines Systems erfolgen. Weiterhin können Systeme leichter vereinheitlicht werden, und eine automatisierte Bereitstellung reduziert mögliche Fehler. Wie in Abbildung 1 ersichtlich, übernimmt der Cloud-Anbieter dabei die Verantwortung für die darunterliegenden Schichten. Die Attestierung eines entsprechenden Sicherheitslevels erfolgt durch typische IT-Security-Standards wie ISO270xx sowie ergänzende Standards, mit denen der Cloud-Anbieter seinen Kunden die Einhaltung der Prüfkriterien belegt.
• Platform as a Service (PaaS) Eine weitere Steigerung der Fertigungstiefe stellt PaaS dar. Hier stellt der Cloud-Anbieter fertig nutzbare Middleware-Komponenten bereit, z. B. gemanagte Datenbanken oder Kubernetes (K8s) Container-Cluster. Betriebssysteme und Middleware-Software werden vom Cloud-Anbieter selbst verwaltet und aktualisiert. Einen Zugriff auf dieser Ebene erhält der Kunde nicht. Es obliegt dem Kunden, primär die Zugriffe auf die Daten in der Middleware einzuschränken, sicherheitsrelevante Parameter anzupassen bzw. erweiterte Sicherheitsfunktionen zu aktivieren (z. B. Datenverschlüsselung). Auch diese Einstellungen können durch die API automatisiert werden. Speziell in diesem Szenario muss jedoch beachtet werden, dass Middleware-Software regulären Versionswechseln unterliegt. Dies muss der Kunde, wie in bisherigen IT-Umgebungen, weiterhin berücksichtigen, da die Versionswechsel beispielsweise auch Änderungen an der Funktionalität oder den Softwareschnittstellen hervorrufen könnten. Als Sonderform von PaaS sind Container sowie Serverless-Lösungen zu sehen. Der Cloud-Anbieter stellt hierfür eine automatisierte Container-Orchestrierungslösung bereit, welche der Kunde zum Ablauf seiner Anwendung nutzen kann. Im Fall von Serverless geht dies noch etwas weiter. Der Kunde erhält zusätzlich eine standardisierte, temporäre Runtime-Umgebung, in welcher er seinen Code zur Ausführung bringen kann. Eine Bezahlung erfolgt dabei auf Basis der Anzahl der Aufrufe, der Laufzeit des Codes, ggf. konsumierter Ressourcen (z. B. Netzwerk, Storage), der Lokation sowie der Verfügbarkeit.
• Software as a Service (SaaS) Die höchste Fertigungstiefe bildet SaaS. Hier bezieht der Kunde eine komplette Anwendung beziehungsweise einen Anwendungsservice, z. B. ein CRM-System, eine Kollaboration-Plattform oder Ähnliches. Der Cloud-Anbieter ist hierbei für den gesamten Stack bis zur Anwendung verantwortlich. Für den Kunden bleibt aus Sicht der IT-Sicherheit hier nur noch die direkte Zugriffssteuerung auf Daten, die Überwachung der Zugriffe anhand von Logdaten sowie ggf. die Verschlüsselung der Daten. Der notwendige administrative (IT) Aufwand für die Nutzung einer Anwendung sinkt dadurch für die Kunden deutlich. Gleichzeitig steigt jedoch die Abhängigkeit vom Cloud-Anbieter (Vendor Lock-in) und das notwendige Vertrauen, das einem Dienstleister entgegengebracht werden muss. Ein großer Teil des IT-Betriebs wird aus Sicht der IT-Sicherheit zur Blackbox für den Kunden, und es bleibt, wie bereits oben aufgeführt, im Wesentlichen die Prüfung über Dritte (Zertifikate) als „Qualitätskontrolle“ der IT-Sicherheit.
In der Cloud muss neben den Arten der angebotenen Leistungen das jeweilige Bereitstellungsmodell unterschieden werden. Diese Modelle unterscheiden sich zum Teil deutlich hinsichtlich ihrer Bedrohungsszenarien.
Im Fall der Private Cloud erfolgt eine Bereitstellung klassisch im eigenen Rechenzentrum bzw. in dem eines Outsourcing-Anbieters. Der Kunde ist der alleinige Nutzer der Cloud-Ressourcen. Als Sonderform davon kann das Modell der Community Clouds gesehen werden. Hier teilt sich der Kunde die Ressourcen mit gleichartigen Kunden (z. B. Banken, Öffentliche Verwaltung oder spezifische Branchen). Diese besitzen in der Regel ein ähnliches Anwendungs- und Risikoprofil. Wesentliche Ressourcen, z. B. das Cloud-Management (API), sind nur aus privaten Netzen erreichbar.
Die Public Cloud unterscheidet sich hiervon grundlegend. Alle Management-Schnittstellen sind über das Internet erreichbar. Die Cloud-Ressourcen sind regulär ebenfalls im Internet erreichbar, und der Zugriff muss erst durch entsprechende Konfiguration eingeschränkt werden. Die Public Cloud kann zudem in der Regel von jedem genutzt werden, d. h., Ressourcen einer Privatperson können sich ggf. direkt auf demselben physischen System wie die Ressourcen eines Großkonzerns befinden. Eine entsprechende Abschottung, z. B. durch die Nutzung von exklusiv reservierten Ressourcen, muss zusätzlich bezahlt werden.
Im Modell Hybrid Cloud werden Private- und Public-Cloud-Ressourcen kombiniert. So kann z. B. auf Basis von Sicherheitsanforderungen definiert werden, wo eine Anwendung ausgeführt wird. Weiterhin ist es möglich, die Public Clouds in diesem Szenario als Zusatzkapazitäten zu nutzen (Burst).