Specific Criticism of CVSS4
Marc Ruef
Cloud Computing ist seit dem Jahr 2007 zu einem zentralen Begriff der modernen Computertechnologie geworden. Die Greifbarkeit dessen ist aufgrund unterschiedlicher und schwammiger Definitionen nicht einfach. Verschiedene Implementierungen und Produkte führen zu einem undurchsichtigen Konstrukt, das damit ebenfalls in Bezug auf die gegebene Sicherheit schwierig handzuhaben ist.
Nach einer allgemeinen Einführung in das Thema werden in diesem Artikel unterschiedliche Implementierungen aufgezeigt. Dabei werden an konkreten Produkten die Möglichkeiten und Mechanismen dieser illustriert, um im dritten Teil die damit einhergehenden Sicherheitsmerkmale und Herausforderungen an die Informationssicherheit aufzeigen zu können.
Der Begriff des Cloud Computing und damit auch dessen Inhalt sind umstritten. Mitunter hat das Fehlen einer akkuraten Begriffsdefinition dazu geführt, dass das Thema oftmals eher als Marketing-Instrument denn als echte technologische Möglichkeit verstanden wird. Grundsätzlich ist Cloud Computing ansich nichts Neues, verbindet es doch in erster Linie klassische Aspekte von:
Und so sind es dann auch hauptsächlich wirtschaftliche Aspekte, die den Vorteil des Cloud Computing ausmachen. Skalierbarkeit und flexible Vertriebsmodelle sollen dabei helfen, die Kosten möglichst gering zu halten und ein Höchstmass an Flexibilität gewährleisten zu können. Dabei werden gerne grundlegende Aspekte der Informationssicherheit ausser Acht gelassen oder bewusst vernachlässigt. Dies ist in erster Linie auf das fehlende Verständnis für die zugrundeliegenden Mechanismen zurückzuführen.
Der Begriff des Cloud Computing ist nicht einheitlich definiert und so finden sich dann auch unterschiedliche Formulierungen, was konzeptionell und technologisch darunter zu verstehen ist. Vielerorts wird gerne die Begriffsdefinition von Forrester Research zitiert:
Cloud Computing steht für einen Pool aus abstrahierter, hochskalierbarer und verwalteter IT-Infrastruktur, die Kundenanwendungen vorhält und falls erforderlich nach Gebrauch abgerechnet werden kann.
Diese Formulierung zeigt das grundlegende Problem des Cloud Computing auf: Es ist nicht einfachso greifbar. Sie fasst jedoch die allgemeinen Konzepte eines solchen Systems zusammen. Im Mittelpunkt steht ein Dienst, der Funktionen zur Verfügung stellt. Diese Funktionen sind modular aufgebaut, so dass sie nur bei Bedarf durch einen Kunden genutzt werden können. Damit wird es möglich, dass nur die effektive Nutzung abgerechnet wird. Der Kunde muss damit nicht für etwas bezahlen, das er nicht benutzt. Dies ist tendenziell bei eigens angeschaffter Hardware und bereitgestellten Systemen nicht der Fall.
Die administrativen Aspekte der über Cloud Computing bezogenen Dienstleistungen verschieben sich damit im Normalfall gänzlich zum Anbieter. Der Kunde muss sich nicht um die Anschaffung neuer Hardware sowie das Aufsetzen und Betreuen der Systeme kümmern. Gerade bei kleineren Unternehmen (KMU), die keine eigenständige IT-Abteilung haben oder der Unterhalt einer solchen finanziell nicht gerechtfertigt ist, können damit direkte wirtschaftliche Vorteile für sich erschliessen.
Wir pflegen eine sehr reduzierte und einfache Definition von Cloud Computing zu vertreten. Diese lautet wie folgt:
Cloud Computing ist ein modulares System, in dem Ressourcen für den Endanwender transparent sowie dynamisch zugewiesen und verarbeitet werden.
Im Rahmen des Cloud Computing werden drei verschiedene Vertriebsmodelle unterschieden, die nachfolgend im Detail vorgestellt werden sollen:
Das Akronym SaaS steht für Software as a Service. Es handelt sich dabei um eine Dienstleistung, die ebenfalls unter dem Namen ASP (Application Service Provider) bekannt ist. Sie stellt eine im Zeitalter des Mobile Computing immer stärker vorangetriebene Art des Software-Vertriebs dar. Eine Software soll damit zentral bereitgestellt und möglichst vielen Benutzern zugänglich gemacht werden.
Der Hauptnutzen von SaaS ist das Anbieten des Zugriffs auf eine Applikationsplattform. Der zentrale Aspekt dieses Modells ist, dass der Kunde keine Kosten für Systeme, Lizenzen und Personal (Administration) aufwenden muss. Es obliegt gänzlich der Pflicht des Anbieters, dass die Plattform fachgerecht bereitgestellt werden kann. Damit wird eine klare Trennung zwischen dem traditionellen Outsourcing vorgenommen, bei dem der Kunde für Hardware und Wartung sowie weiterführende Investitionen verantwortlich bleibt.
SaaS-Clouds sind sowohl bei Anbietern als auch Kunden besonders beliebt, da sie ein minimales Mass an Komplexität erwarten. So gibt es mittlerweile eine Vielzahl populärer Dienste, die diesem Modell zuzuordnen sind. Beispielsweise können mit Apple MobileMe, Dropbox und Evernote sehr einfach und komfortabel Daten auf unterschiedlichen Systemen genutzt und bearbeitet werden.
Zur Nutzung dieser Dienste sind in der Regel proprietäre Clients erforderlich. Diese werden je nachdem für verschiedene Plattformen zur Verfügung gestellt. Die drei zuvor genannten Beispiele bieten Clients im Web (browserbasiert), als eigenständige Applikationen und für verschiedene mobile Plattformen (iPhone, Android, BlackBerry, etc.). Beim Aufstarten eines Clients wird durch diesen automatisch und für den Benutzer weitestgehend Transparent eine Synchronisation des lokalen Datenbestands des Clients und des zentralen Datenbestands beim Cloud-Anbieter vorgenommen. Fehlende Objekte werden ausgetauscht und kürzlich bearbeitete Objekte aktualisiert. Dadurch wird auf allen Endpunkten stets der gleiche aktuelle Datenbestand bereitgestellt. Im Falle von Apple MobileMe sind dies verschiedene Daten, wie zum Beispiel Adressbuch und Kalender. Dropbox gewährt die Synchronisation beliebiger Dateien. Und Evernote fokussiert sich auf multimediale Notizen (Text, Bilder, Audio, etc.).
PaaS steht für Platform as a Service. Dadurch wird eine ganzheitliche Plattform bereitgestellt, auf der eigene Software ausgeführt oder im Rahmen der dargebotenen Entwicklungsumgebung betrieben werden kann. Es wird also ein zusätzliches Fundament zum zuvor genannten SaaS gewährleistet.
Zwar kann auch hier der Benutzer keinen Einfluss auf die darunterliegende Infrastruktur ausüben. Jedoch erschliessen sich ihm im Gegensatz zu SaaS zusätzliche Kontrollmöglichkeiten der eingesetzten Software. Damit wird dann vor allem bei Software-Entwicklung ein Mehr an wirtschaftlicher Effizienz erreicht, denn es kann auf den Aufbau und die Betreuung umfangreicher Entwicklungsplattformen verzichtet werden. Entwickler müssen nur noch über einen Netzwerkzugang zur Cloud verfügen, um ihrer Tätigkeit nachgehen zu können. Das ständige Warten der Entwicklungsumgebung und das eigenständige Synchronisieren der Codebasis fallen damit weg. Zudem kann auf die Anschaffung kostenintensiver Client-Hardware (z.B. zur aufwendigen Kompilierung) verzichtet und stattdessen auf kostengünstige Endpunkte (Thin-Clients) gesetzt werden.
Populäre PaaS-Lösungen werden durch Microsoft Azure und Google App Engine (GAE) bereitgestellt. Microsoft sieht für ihre Umgebung die Nutzung von .NET vor, um eigene Applikationen entwickeln und ausführen zu lassen. Damit wird es für bestehende Windows-Entwickler besonders einfach, auf diese Plattform zu wechseln. Im Gegenzug fokussiert sich Google auf hochskalierbare Webapplikationen, die hauptsächlich in Python geschrieben werden oder auf Java VM lauffähig sind.
IaaS steht für Infrastructure as a Service. Und so wird dann auch die effektive Infrastruktur durch den Cloud-Anbieter zur Verfügung gestellt. Der Kunde kann auf grundlegende Komponenten wie Rechenzeit, Speicherplatz oder Netzwerkanbindung zurückgreifen, um beispielsweise eigene Betriebssysteme und Applikationen zu betreiben.
Damit wird ein Höchstmass an Eigenverantwortung im Cloud-Umfeld verlangt. Im Gegenzug kann der dedizierte Ressourcen-Bezug in klar definierter Weise abgerechnet werden.
Der bekannteste IaaS-Dienst ist Amazon Web Services (AWS), in dem verschiedene Betriebssysteme aufgesetzt und betrieben werden können. Die Cloud wird damit quasi als dynamische _Housing_-Umgebung wahrgenommen, in der die eigenen Systeme integriert werden können.
Unabhängig der Vertriebsmodelle gibt es verschiedene Arten von Clouds. Dabei kann zwischen drei Varianten unterschieden werden:
Sie definieren die Art und Weise sowie welche Benutzergruppen in welcher Form auf die Dienste zugreifen können. Hierbei wird unterschieden zwischen:
Als intern werden alle Benutzergruppen angesehen, die in einer direkten Geschäftsbeziehung mit dem Unternehmen stehen. Dazu gehören alle Mitarbeiter, aber auch vertraglich gebundene Partnerunternehmen. Als extern werden alle Benutzer angesehen, die in keiner direkten Geschäftsbeziehung stehen. Die Kombination dieser Infrastrukturvarianten und der verschiedenen Benutzergruppen wird nachfolgend im Detail erklärt.
Private Clouds bieten ausschliesslich Dienste für interne Benutzer an, wobei die Prinzipien des Cloud Computings durchgängig berücksichtigt werden (z.B. Skalierbarkeit, Transparenz). Sie werden entweder unternehmensintern durch eine eigene Abteilung oder durch ein nahes Partnerunternehmen bereitgestellt. So befindet sich die genutzte Hardware physisch im Besitz des Unternehmens (Inhouse) oder Partners.
Der Vorteil privater Clouds ist, dass sich die Benutzergruppe sehr klar definieren lässt. Zudem besteht – mindestens vertraglich – eine enge Vertrauensbeziehung zwischen Cloud-Anbieter und Nutzern.
Traditionsgemäss ist diese Vertrauensbeziehung aber auch als latentes Risiko zu werten, denn so wird gerne darauf verzichtet, ausserhalb und innerhalb der Cloud zusätzliche Schutzmechanismen zu implementieren. Es wird angenommen, dass die vertrauenswürdigen Benutzer sich zu benehmen wissen und keine Gefahr darstellen. Dies ist jedoch äusserst zweifelhaft und spätestens dann widerlegt, wenn die Kompromittierung eines legitimen Kontos stattgefunden hat und dieses zur Weiterführung eines Angriffs (Hopping-Attacken) missbraucht wurde.
In privaten Clouds muss also mindestens das gleiche Sicherheitsniveau erreicht werden, wie dies auch bei einer traditionellen internen Netzwerkumgebung (DMZ) der Fall war. Eine Netwzerksegmentierung samt Firewalling ist genauso wünschenswert wie eine strenge Authentisierung und umfassendes Logging für unternehmenskritische Dienste.
Öffentliche Clouds bieten in erster Linie Dienste für externe Benutzer an, wobei auch hier die Prinzipien des Cloud Computings eingehalten werden. Derlei Clouds werden ebenfalls unternehmensintern oder durch ein Partnerunternehmen betrieben, wodurch sich die Hardware in ihrem physischen Besitz befindet.
Öffentliche Clouds sollten gleich wahrgenommen werden, wie alle anderen öffentlichen Dienste auch (z.B. Webseiten, Mailserver). Entsprechend findet auch hier eine Erweiterung des Perimeters statt. Dies ist natürlich mit zusätzlichen Aufwänden verbunden, die gerade bei einem komplexen und schwierig zu definierenden Konstrukt wie einer Cloud nicht einfach ausfällt.
Das Etablieren von Zugriffskontrollen (z.B. Firewalling, Authentisierung, Access Control Lists) ist zwingend erforderlich, um öffentliche Clouds in sicherer Weise betreiben und nutzen zu können. Die erfolgreiche Umsetzung einer sicheren öffentlichen Cloud erfordert deshalb ein hohes Verständnis für die eingesetzten Technologien sowie ein gewisses Mass an Flexibilität dieser. Weitsichtige Entscheide auf strategischer Ebene sind dabei also genauso wichtig wie die Berücksichtigung der zukünftigen technischen Anforderungen.
Hybride Clouds kombinieren die Funktionalität von privaten und öffentlichen Clouds, wodurch die Dienste sowohl für externe als auch für interne Benutzer bereitgestellt werden.
Derlei hybride Konstrukte sind sicherheitstechnisch schwierig zu rechtfertigen, ja eigentlich gar zu vermeiden. So müssen in der gleichen Infrastruktur Benutzer unterschiedlicher Einstufungen zugelassen werden. Da diese voraussichtlich nicht die gleichen Zugriffsrechte beigemessen bekommen sollen, müssen unterschiedliche Regulierungen durchgesetzt werden. Dies schafft die paradoxe Situation, dass innerhalb eines Konstrukts zur Vermengung eine Trennung eingeführt wird. Eigentlich müssten also zwei Clouds – sowohl eine private als auch eine öffentliche – betrieben und klare Übergänge zwischen diesen definiert werden. Dies ist jedoch oftmals aus kostengründen nicht gewollt und deshalb die potentiellen Sicherheitsrisiken des hybriden Ansatzes bewusst in Kauf genommen. Ein Phänomen, das leider auch Voice-over-IP (VoIP) tendenziell zu schaffen macht.
Vor der Umsetzung bzw. Nutzung einer hybriden Cloud sollte eine umfassende Risikoanalyse angestrebt werden, um die potentiellen und effektiven Risiken frühstmöglich ausmachen, kalkulieren und adressieren zu können. Gerade bei grossen und schwerfälligen Konstrukten wird es sehr wichtig, die mitgeführten Sicherheitsaspekte frühstmöglich adequat zu berücksichtigen.
Bei extern verwalteten Clouds handelt es sich um eine spezielle Form der vorgestellten Infrastrukturtypen. Zwar befinden sich die Clouds noch immer im Besitz eines Unternehmens, wodurch in direkter oder indirekter Weise der physische Zugriff auf die Hardware gewährleistet wird. Jedoch werden die jeweiligen Komponenten durch ein externes Unternehmen betreut. Es erfolgt also ein Outsourcing des Cloud-Dienstes.
Das Angehen einer externer Verwaltung eines Cloud-Dienstes ist mit den gleichen Anforderungen verbunden, wie ein anderweitiges Outsourcing auch. Auch hier müssen vertragliche Einigungen erzielt werden, die ebenfalls technische, sicherheitsbezogene und juristische Aspekte zu berücksichtigen in der Lage sind.
Wie gezeigt wurde, kombiniert Cloud Computing eine Vielzahl unterschiedlicher, bisweilen altbekannter Konzepte. In der Euphorie der damit erschlossenen Möglichkeiten werden gerne die sicherheitstechnischen Aspekte entsprechender Lösungen vernachlässigt. Entweder werden die Risiken unbewusst übersehen oder absichtlich übergangen.
Dies ist ein grosser Fehler, denn sowohl die einzelnen Teilkonzepte als auch die Cloud als Ganzes müssen den klassischen Anforderungen der Informationssicherheit Folge leisten. Nachfolgend sollen einzelne Aspekte, ihre Gefahren und mögliche Massnahmen betrachtet werden. Dabei wird sich teilweise am Beitrag 10 sicherheitsrelevante Gründe gegen Cloud Computing orientiert.
Cloud Computing ist eine spezielle Form des Outsourcings. Bei diesem werden gewisse Ressourcen oder Prozesse an den Cloud-Partner ausgelagert. Eine in zentraler Weise sicherheitskritische Eigenschaft des Outsourcings ist der Verlust der Kontrolle über die Weiterverarbeitung (z.B. Auswertung und Verkauf der anfallenden Daten).
Man sieht sich einerseits nicht mehr in der Lage, die eigenen Erwartungen durchzusetzen. Die hohen Anforderungen einer spezifischen Branche des Kunden müssen nicht zwingend denen des Cloud-Anbieters entsprechen. Eine Verschiebung der Anforderungen kann zu einer unliebsamen Angleichung und damit zur Verringerung des erwarteten Sicherheitsstands führen. Dies passiert sehr schnell, wenn der Kunde aus einem Hochsicherheitsumfeld stammt (z.B. Finanzbranche).
Andererseits hat man auch keine Möglichkeit, eine direkte Prüfung des Einhalts von Erwartungen und Abmachungen vorzunehmen. Ein Cloud-Anbieter kann sich zwar auf das Einhalten vordefinierter Anforderungen einigen. Ob und inwiefen diesen wirklich Folge geleistet wird, ist nur mit Hilfe des Dienstleisters zu eruieren. Und gerade in kritischen Situationen kann man nicht erwarten, dass sich diese in kooperativer Weise um eine Aufklärung bemühen wird.
Sollen beispielsweise in regelmässigen Abständen Sicherheitsüberprüfungen der genutzten Cloud-Infrastruktur umgesetzt werden, kann sich das als enorm aufwendig herausstellen. Auf technischer Ebene können die Komplexität der Infrastruktur und der schwierig nachvollziehbare Datenfluss dafür verantwortlich sein. Bei der Analyse von Prozessen, bei denen beispielsweise Interviews mit den zuständigen Personen geführt werden sollen, kann die fehlende Unterstützung ebenfalls zu einer schwierig überwindbaren Hürde führen.
Ein grundlegendes Risiko des Outsourcings ist, dass einem Partner Vertrauen entgegengebracht werden muss. Diesem wird Kompetenz beigemessen und zwecks Interaktionsmöglichkeiten Schnittstellen definiert. Da die Einsicht der Objekte bzw. Prozesse nur noch bis zu diesen Schnittstellen funktioniert, verliert die Zusammenarbeit bzw. die Weiterverarbeitung an Transparenz (z.B. Kommunikation von Incidents). Die Cloud muss ebenfalls als spezielle Form des Outsourcings von Ressourcen bzw. weiter zu verarbeitenden Daten verstanden werden.
Der Kunde sollte darum bemüht sein, ein Höchstmass an Transparenz im Zusammenhang mit der bezogenen Dienstleistung erreichen zu können. Einerseits sollten klare Anforderungen an den Cloud-Partner gestellt werden, in welcher Form und wie Einsicht in die Verarbeitung gehalten werden kann. Dazu gehören ebenfalls Einsichten in die Bereiche:
Andererseits sollten die vereinbarten Schnittstellen klar geregelt sein, um die Übergänge wohldefiniert etablieren und sich derer sowie ihrer Einschränkungen bewusst zu sein. Nur so kann eine durchdachte Risikokalkulation umgesetzt werden.
Durch das Auslagern von Aufgaben und Prozessen büsst man stets ein gewisses Mass an Unabhängigkeit ein. Man ist nicht mehr alleiniger Herr über den Sachverhalt und stattdessen auf die Zuwendigkeit des Partners angewiesen. Situationen, die ein hohes Mass an Flexibilität und Dynamik erwarten, werden damit schwieriger zu bewältigen. Strategische Entscheidungen des Managements, die auf einen langfristigen Horizont ausgerichtet sind, lassen sich voraussichtlich planen. Der Umgang mit hektischen Situationen lässt sich hingegen nicht voraussagen. Zu diesen gehören beispielsweise:
Durch das klare Definieren der Schnittstellen wird es möglich, diese möglichst effizient auszuwerten. Gerade für Szenarien, die ein hohes Mass an Flexibilität erfordern, sollten klare Abmachungen bezüglich Kompetenzbereichen samt Service Level Agreement (SLA) getroffen werden.
Diese Szenarien sollten zudem regelmässig durchgespielt und den aktuellen Geschehnissen (laufende wirtschaftliche und technische Entwicklungen) angepasst werden. Durch eine solche regelmässige Prüfung wird verhindert, dass die in den jeweiligen Situationen erforderliche Qualität nicht gewährleistet werden kann.
Innerhalb der Cloud können verschiedene Objekte miteinander vermengt sein. Dabei kann es sich um Daten, Systeme oder gar Kunden handeln. Eine klare Trennung von Objekten ist nicht per se ohne zusätzliche Aufwände durchgesetzt. Dies führt dazu, dass unbeabsichtigt sicherheitstechnisch unterschiedlich klassifizierte Objekte miteinander vermengt werden können.
Sind zum Beispiel Computersysteme mit unterschiedlicher Exponiertheit und Kritikalität in der gleichen Cloud gehostet und es findet die Kompromittierung eines Hosts (Sicherheitsstufe 2) statt, kann dies direkten Einfluss auf die Sicherheit des anderen Hosts (Sicherheitsstrufe 1) haben. Diese Vermengung unterschiedlicher Einstufungen resultiert in einem Herabstufen der höher gewichteten Objekte. Damit kann im schlimmsten Fall für alle Objekte lediglich das Sicherheitsniveau des am schlechtesten geschützten Objekts garantiert werden.
Um diesen Effekt der Herabstufung durch das schwächste Glied zu verhindern, sollten eine klare Formulierung der Einstufungen sowie eine strikte Umsetzung dieser stattfinden. Objekte unterschiedlicher Einstufungen sollten nicht in den gleichen Objektgruppen zusammengefasst werden. Hierbei gilt es dem gleichen Credo der hybriden Clouds zu folgen, die ihrerseits auch das Risiko einer unerwünschten Vermengung – in jenem Fall jedoch bezüglich privater und öffentlicher Benutzergruppen – mit sich führt. Als Grundsatz gilt, dass Objekte unterschiedlicher Einstufungen in Bezug auf Kritikalität und Exponiertheit nicht in ein und der Selben Objektgruppe zusammengefasst werden sollten.
Das Umsetzen einer Datensicherung wird beim Cloud Computing oftmals direkt durch den Anbieter selbst angeboten. Dieser ist sowohl für das Erstellen der Datensicherung (Backup) als auch für die Wiederherstellung bei einem Datenverlust (Restore) verantwortlich. In der Vergangenheit sind jedoch immerwieder Ausfälle von Cloud-Diensten bekannt geworden, bei denen sich ein Anbieter nicht oder nur ungenügend um die Datensicherung bemüht hat. Zudem kann es durch einen Kunden wünschenswert sein, dass dieser zusätzlich eine eigene Datensicherung anfertigen kann.
Die Sicherung der Daten in einer Cloud kann sich jedoch als relativ schwierig herausstellen. Dies kann schon nur alleine damit beginnen, dass oftmals nicht ganz klar ist, wo in einer Cloud die Daten genau abgelegt sind. Zusätzlich bieten viele Cloud-Dienste gar keine klaren Schnittstellen, um ein externes oder gar autonomes Backup/Restore durchzuführen.
Verschiedene Anbieter auf dem Markt haben diese Schwierigkeiten erkannt und bieten zusätzliche Sicherungsdienste für verschiedene Cloud-Produkte und -Technologien an. Dadurch ist natürlich ein Mehr an Ausgaben zur Gewährleistung der zusätzlichen Bedürfnisse erforderlich, deren Ausbleiben in erster Linie die Umsiedlung der Daten in die Cloud gerechtfertigt hatten. Spätestens hier wird also der wirtschaftliche Vorteil der Kerndienste durch zusätzliche Bedürgnisse negiert. Zudem wird mit dem Einspannen einer neuen Lösung wiederum die unliebsame Komplexität des gesamten Konstrukts erhöht.
Es ist deshalb wichtig sich darüber Gedanken zu machen, ob und inwiefern eine eigene Datensicherungs-Strategie innerhalb einer Cloud verfolgt werden will und technologisch auch verfolgt werden kann. Mehrkosten, die bei einer solchen Lösung anfallen können, müssen in die initiale Kalkulation miteinbezogen werden, um sich vor unliebsamen zukünftigen Betriebskosten schützen zu können. Viele Lösungen, die in Bezug auf die Kostenersparnis sehr attraktiv angeboten werden, beinhalten nämlich versteckte Mehrkosten, die sich erst bei einer längeren Nutzung des Dienstes als solche zu erkennen geben.
In eine ähnliche Kategorie wie das Herstellen und Wiedereinspielen von Datensicherungen ist die Möglichkeit einer Migration. Bei einer solchen wird sich darum bemüht, von einem Cloud-Anbieter oder –System zu einem anderen zu wechseln bzw. eine eigene Lösung wiederzubetreiben (Insourcing). Zu diesem Zweck müssen die in der alten Cloud abgelegten Objekte ähnlich wie bei einer Datensicherung extrahiert werden, um sie dann in der neuen Cloud wieder einzuspielen. Auch hier besteht nun das Problem, dass fehlende Schnittstellen diesen Prozess massgeblich erschweren können.
Ein Cloud-Anbieter ist im Grunde gar nicht darum bemüht, für diese Zwecke effiziente Mechanismen, klare Schnittstellen und kompatible Technologien anzubieten. Denn durch das Ausbleiben dieser kann er eine Kundenbindung auf technischer Ebene erzwingen. Die Trägheit des Kunden wird verhindern, dass dieser beim Auftauchen des ersten Bedürfnisses die bestehende Geschäftsbeziehung löst und zu einem anderen Anbieter wechselt. Stattdessen wird der damit einhergehende Aufwand immensen Ausmasses gescheut werden. Dadurch erhält der Anbieter ein Mehr an Handlungsspielraum, um im Rahmen der Kundenbeziehung die zu seinen Gunsten arbeitenden Modalitäten zu diktieren. Dies kann sich also im schlimmsten Fall langfristig auf die Qualität eines Angebots (z.B. Reaktionszeiten, Kooperationsbereitschaft) niederschlagen.
Auch hier gilt es deshalb frühzeitig abzuklären, ob und inwiefern Migrationsmöglichkeiten bestehen. Nur dadurch kann ein Mindestmass an Unabhängigkeit gewährleistet werden, das dringend erforderlich ist, um den eigenen Handlungsspielraum nicht vollends zu beschneiden.
Ein Hauptmerkmal des Cloud Computings ist, dass durch dieses eine transparente Dezentralisierung der Objekte (in den meisten Fällen hauptsächlich Daten) stattfinden kann. Für den Benutzer wird es irrelevant zu wissen, wo sich die von ihm bearbeiteten Daten gerade befinden. Dieses fehlende Wissen um die grundlegenden Gegebenheiten führt jedoch das Risiko der Verletzung juristischer Anforderungen mit sich. In verschiedenen Belangen ist die Verarbeitung von Daten gesetzlichen Bestimmungen unterworfen. So betrifft zum Beispiel das Thema Datenschutz sämtliche Unternehmen. Manche von ihnen sind branchenspezifischen Anforderungen unterworfen (z.B. im Finanzsektor).
Eine geografisch verschiedene Länder umfassende Cloud führt zum Beispiel das Risiko ein, dass hier plötzlich unterschiedliche juristische Rahmenbedingunen für die gleichen Datensätze gelten können. Die Datenschutzbestimmungen sind voraussichtlich nicht gleich, je nachdem in welchem Land sich die Daten gerade befinden. Alleine Deutschland und die Schweiz pflegen gänzlich unterschiedliche Anforderungen an den Schutz persönlicher Daten zu stellen.
Oder gewisse Datenschutzbestimmungen verbieten gar, dass Daten ein bestimmtes Land verlassen dürfen. Dies ist zum Beispiel oftmals bei kundenbezogenen Daten – vor allem im Finanzumfeld – der Fall. So ist es nicht ohne weiteres erlaubt, dass diese im Ausland gelagert oder über einen externen Server weitergereicht werden.
Es gilt also vor der Nutzung eines geografisch verteilten Dienstes zu klären, ob und inwiefern dessen Nutzung mit den auferlegten juristischen Bestimmungen vereinbar ist. Die Anbieter weltweit umspannender Clouds haben diese Problematik erkannt und bieten bisweilen technologische Möglichkeiten an, die geografische Verteilung der Daten zu limitieren. Amazon hat zu diesem Zweck die Availability Zones eingeführt.
Besteht keine Möglichkeit, die geografische Ausbreitung sensitiver Daten durch die Konfiguration der Cloud-Struktur einzuschränken, müssen prozesstechnische oder zusätzliche technische Mechanismen genutzt werden, um keine Verletzung der Sorgfaltspflicht anzugehen. Dies kann beispielsweise das Anonymisieren oder Verschlüsseln von Daten bei der Übermittlung in andere Länder (z.B. bei Test-Daten) der Fall sein.
Die juristischen Schwierigkeiten sind nicht nur in Bezug auf die Anforderungen an den Datenschutz beschränkt. Oftmals wird davon ausgegangen, dass mit einer Auslagerung in eine Cloud die juristische Eigenverantwortung vollumfänglich an den Anbieter übertragen wird. Von nun an sei dieser dazu verpflichtet, wie nationalen und branchenspezifischen Anforderungen zu erfüllen.
Dies ist jedoch Wunschdenken, denn die juristische Eigenverantwortung lässt sich oftmals nicht einfach so auf eine andere (juristische) Person übertragen. Nur weil ein Kunde (z.B. Finanzunternehmen) durch eine vertragliche Regelung ein Outsourcing zentraler Dienste an einen Cloud-Partner vornimmt, ist von nun an der Kunde nicht mehr nicht für die Sorgfaltspflicht der Datenverarbeitung verantwortlich bzw. mitverantwortlich. Jenachdem ist es dem Kunden gar nicht erlaubt, die Herrschaft über die Daten ohne weiteres weiterzugeben. Und falls eine Weitergabe dennoch möglich ist, dann muss sich je nachdem der Kunde um die Einhaltung und Prüfung der auferlegten Regeln bemühen.
Doch gerade das Durchsetzen und Kontrollieren von Anforderungen ist aufgrund der fehlenden Transparenz und Schnittstellen vieler Cloud-Anbieter nicht oder nur mit erheblichem Aufwand durchführbar. Unter dem Strich ist es in Bezug auf diese weiterführenden Probleme oftmals unbestritten, dass eine eigenständige Bearbeitung der Daten einfacher und kostengünstiger umsetzbar bliebe.
In den allermeisten Fällen wird die Auslagerung eines Dienstes vorgenommen, um dadurch Kosten zu sparen. So kann auf die Anschaffung teurer Hardware und den Einsatz geschulten Personals verzichtet werden. Mit einer erfolgreichen Auslagerung geht also auch oftmals ein Stellenabbau in den betroffenen Bereichen einher. Im Fall des Cloud Computing wird somit jeweils in Bereichen der IT-Administration (Administratoren, Entwickler, Support) abgebaut.
Mit dem Abbau von Personal geht aber auch immer Knowhow verloren. Sind keine Administratoren oder Entwickler mehr zugegen, wird es für ein Unternehmen immer schwieriger, das Verständnis für die genutzten Technologien zu wahren. Die Zusammenarbeit mit einem Cloud-Partner kann dadurch massgeblich erschwert werden, da dieser mit seiner Übermacht an technischem Verständnis die Ausrichtung eines Gesprächs diktieren kann. Im schlimmsten Fall kann er durch falsche oder halbwahre Aussagen die Entscheidungen des Kunden zu seinen Gunsten beeinträchtigen. Der Kunde ist auf sich alleine gestellt und kann damit nicht mehr intelligent agieren oder reagieren.
Im besten Fall sollte also trotz Nutzung von Cloud-Diensten auf den rigorosen Abbau von fachtechnischem Personal verzichtet werden. Es sollte von jedem Fachbereich mindestens eine Person bestehen bleiben, die sich in technische Gespräche einschalten und zu Gunsten des Kunden argumentieren kann. Diese Person sollte als stabstechnische Kompetenzstelle agieren und andere Bereiche durch ihr Wissen und Verständnis profitieren können.
Ist das Aufrechterhalten eines solchen Knowhow-Pools nicht möglich, muss sich auf externe Berater verlassen werden. Diese sollten bei strategisch und technisch schwierigen Situationen herbeigezogen werden, um durch ihre Empfehlungen den Handlungsspielraum des Kunden aufrechterhalten oder erweitern zu können. Nur so lässt sich frühzeitig eine Einengung durch den Cloud-Partner, zum Beispiel durch das Einwilligen von unvorteilhaften Vereinbarungen, verhindert.
In vielen Fällen wird das Cloud Computing als Dezentralisierung verstanden. Damit wird die Möglichkeit erschlossen, dass die Datenbestände in unterschiedlichen Bereichen und verschiedenen geografischen Lokalitäten aufbewahrt bleiben. Dies wird als positiver Effekt wahrgenommen, da dadurch theoretisch eine erhöhte Ausfallsicherheit erreicht werden kann.
Dennoch entspricht Cloud Computing nicht per se einer Dezentralisierung. Genau genommen kann durch die Auslagerung in eine Cloud gar das Gegenteil stattfinden. Werden sämtliche Daten eines Unternehmens in die Cloud übertragen, stellt sie selbst einen Single Point of Failure dar. Ein Ausfall der Cloud führt nämlich ebenfalls zum kompletten Ausfall des Dienstes bzw. der Verfügbarkeit der Daten. Eine Cloud muss explizit so konstruiert sein, dass sie selbst in sich eine Dezentralisierung darbietet, um dennoch ein Mindestmass an Ausfallsicherheit (Fail-Over) gewährleisten zu können. Theoretisch kann ein als Cloud bezeichnetes Konstrukt lediglich aus einem einzigen Server (und dazugehörige transparente Schnittstellen) bestehen.
Für Angreifer wird eine Cloud als eigenständige Entität also umso interessanter. Denn weiss ein Angreifer darum, dass ein Kunde die Dienste eines spezifischen Anbieters nutzt, kann er sich auf den Angriff auf diese Cloud konzentrieren. Cloud-Anbieter tragen aus verkaufstechnischen Gründen gerne technische Details zu ihren Lösungen nach Aussen, was einem Angreifer entscheidende Vorteile verschaffen kann. Jenachdem wie die Vermengung von Kunden und die internen Zugriffsbeschränkungen des Cloud-Anbieters umgesetzt sind, kann ein Angriff dann gar einfacher ausfallen, als dies bei einer eigenständigen IT-Umgebung der Fall gewesen wäre.
Es ist deshalb wichtig abzuklären, wie die Struktur und Topologie einer Cloud genau aussieht. Dabei darf sich nicht einfach auf die Definition der undefinierten Wolke verlassen und dies als Vorteil für den Kunden – da einfacher zu verstehen – verstanden werden. Das Verständnis muss über diese PR-technische Simplifizierung hinausgehen.
Die Ausfallsicherheit innerhalb der Cloud muss sodann genauso gewährleistet sein, so wie dies bei einer dedizierten IT-Infrastruktur der Fall gewesen ist. Redundant betriebene Komponenten sind dabei genauso wichtig wie schnelle Reaktionszeiten bei Betriebsunterbrüchen.
Und auch hier ist es deshalb wichtig, dass die Vermengung von Objekten nicht rigoros zugelassen wird. Stattdessen sollte auf eine klare Trennung sowie strikte Zugriffslimitierungen gesetzt werden. Dadurch können Birthday- und Hopping-Attacken verhindert werden. Die Kompromittierung der Cloud eines Kunden hat damit nicht zwangsläufig die Kompromittierung der Cloud eines anderen Kunden zur Folge.
Cloud Computing ist ein komplexes Thema, das sich auf verschiedene Technologien abstützt. Dabei werden bisweilen teilweise altbekannte Mechanismen miteinander kombiniert, um einen modularen und transparenten Dienst gewährleisten zu können. Auf wirtschaftlicher Ebene wird ein flexibles Kostenmodell als entscheidender Vorteil verstanden.
Dabei gibt es verschiedene Vertriebsmodelle. Beim SaaS (Software as a Service) wird eine Applikation zur Verfügung gestellt, die sich oftmals durch verschiedene Clients auf unterschiedlichen Systemen nutzen lässt. Zum Beispiel können so Datenbestände zwischen verschiedenen Plattformen synchronisiert werden. Einen Schritt weiter geht PaaS (Platform as a Service), bei der ein ganzheitliches Framework zur eigenen Entwicklung und Nutzung von Software dargeboten wird. Dieser Ansatz ist vor allem bei Entwicklungsumgebungen interessant. Umfassende Kontrolle wird hingegen erst bei IaaS (Infrastructure as a Service) erlangt, bei der ein Kunde direkten Zugriff auf Hardware-Komponenten hat und somit im Sinne eines Housing seine eigene Server-Farm betreiben kann.
Dabei unterscheidet man zwischen verschiedenen Infrastrukturformen. Eine private Cloud bietet Dienste für interne Benutzer an. Hierbei handelt es sich in erster Linie um die Mitarbeiter eines Unternehmens, denen damit ihre Arbeitswerkzeuge bereitgestellt werden. Im Gegensatz können bei einer öffentlichen Cloud auch externe Benutzer auf die Dienste zugreifen. Dies ist vor allem dann wünschenswert, wenn damit ein spezifisches Produkt verkauft und verteilt werden will. Die Kombination privater und öffentlicher Clouds wird als hybride Clouds bezeichnet.
Grundsätzlich gibt es verschiedene Sicherheitsaspekte, die bei der Umsetzung und Nutzung von Cloud Computing berücksichtigt werden müssen. Greift man auf die Dienste eines externen Cloud-Partners zurück, entspricht dies einer speziellen Form des Outsourcings. Mit diesem gehen verschiedene altbekannte Risiken – wie zum Beispiel der Verlust von Transparenz und Kontrolle – einher. Es gibt aber auch technische Risiken, wie die Schwierigkeit der Umsetzung einer eigenständigen Datenwiederherstellung oder die Durchführung einer Migration. Hinzu kommen juristische Bedenken, die gerade bei globalem Cloud Computing und in bestimmten Branchen nicht zu vernachlässigen sind. Diese Risiken müssen frühzeitig berücksichtigt und entsprechende Massnahmen ergrifen werden, um sie berechenbar und eliminierbar zu machen. Die sichere Umsetzung von Cloud Computing vermag möglich zu sein, auch wenn damit ein hohes Mass an Aufwand eingehen wird.
Our experts will get in contact with you!
Marc Ruef
Marc Ruef
Marc Ruef
Marc Ruef
Our experts will get in contact with you!