07.09.2020 Aufrufe

Whitepaper: Confidential Cloud

Wie bearbeite ich Daten sicher? Wie garantiere ich die Datensouverenität meiner Cloudinfrastuktur? Wie valide ist diese Garantie bei Angriffen? Wie Sie Confidential Computing einsetzen und für komplexe Szenarien skalieren, erfahren Sie im Whitepaper. Jetzt downloaden: https://www.t-systems-mms.com/expertise/downloads/whitepaper-confidential-cloud-native-computing.html

Wie bearbeite ich Daten sicher? Wie garantiere ich die Datensouverenität meiner Cloudinfrastuktur? Wie valide ist diese Garantie bei Angriffen? Wie Sie Confidential Computing einsetzen und für komplexe Szenarien skalieren, erfahren Sie im Whitepaper.

Jetzt downloaden:
https://www.t-systems-mms.com/expertise/downloads/whitepaper-confidential-cloud-native-computing.html

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>Whitepaper</strong> / Technical Report<br />

Enemy in the clouds: protecting your cloud<br />

assets from powerful adversaries<br />

<strong>Confidential</strong> <strong>Cloud</strong>-Native Computing in Large Kubernetes Clusters


Inhalt<br />

Management Summary 4<br />

Hintergrund und Problemstellung 6<br />

Intel® SGX: Technologische Relevanz und Einordnung 9<br />

Implementierung und Architektur 11<br />

Ergebnisse 12<br />

Schlussfolgerungen 13<br />

Weitere Anwendungsmöglichkeiten: Datenschutz im<br />

Blockchain-Umfeld 14<br />

Zusammenfassung 15<br />

Autoren 16<br />

Impressum<br />

<strong>Whitepaper</strong>-Publikation August 2020<br />

T-Systems Multimedia Solutions GmbH<br />

Riesaer Straße 5, 01129 Dresden<br />

Autoren<br />

Dominik Nägele, Dr. Ivan Gudymenko, Dr. Christof Fetzer,<br />

Heqing Zhu, Kapil Sood, James Greene, Paul O‘Neill<br />

Organisation<br />

Projektleitung: Julia Kunert<br />

Layout: Peter Brücker<br />

Aus Gründen der besseren Lesbarkeit wird auf die gleichzeitige<br />

Verwendung der Sprachformen männlich, weiblich<br />

und divers verzichtet. Sämtliche Personenbezeichnungen<br />

gelten gleichermaßen für alle Geschlechter.


Gefahr in der <strong>Cloud</strong>: Schützen Sie Ihre <strong>Cloud</strong> Ressourcen vor kritischen Bedrohungen<br />

Management Summary<br />

Management Summary<br />

Am Markt wird eine sichere und vertrauenswürdige Bearbeitung von Daten gefordert. Die Daten<br />

müssen nicht nur gemäß der Datenschutz-Grundverordnung verarbeitet werden, sondern<br />

auch unter der vollständigen Kontrolle des Datenbesitzers bleiben (Datensouveränität). Die<br />

Datensouveränität der Kunden soll selbst während und nach erfolgreichen Cyberangriffen<br />

auf die zugrunde liegende <strong>Cloud</strong>-Infrastruktur geschützt werden. Dieses Prinzip soll sowohl<br />

für externe Angriffe als auch bei Angriffen durch Insider (wie etwa Administratoren) mit vollem<br />

Software- und Hardwarezugriff valide sein. Eine solche Garantie kann praktisch nur durch<br />

die ununterbrochene Verschlüsselung und Integritätssicherung der Daten, der Programme<br />

und aller Schlüssel gegeben werden (<strong>Confidential</strong> Computing). Applikationen, die auf diesem<br />

Konzept basieren, adressieren somit direkt zwei der drei klassischen IT-Security-Schutzziele:<br />

Vertraulichkeit (<strong>Confidential</strong>ity, daher „<strong>Confidential</strong> Computing“) und Integrität (Integrity).<br />

Hochverfügbarkeit kann in diesem Kontext beispielsweise durch native Fähigkeiten von Kubernetes<br />

realisiert werden.<br />

Die breite Verwendung und Akzeptanz von <strong>Confidential</strong> Computing erfordert, dass dadurch<br />

weder die Nutzungs- noch die Entwicklungsfreundlichkeit beeinträchtigt wird. Einfachheit<br />

und geringer Zusatzaufwand stehen hier im Fokus. Trotz der bekannten Vorteile erweiterter<br />

Sicherheit dürfen sich für die meisten Organisationen weder die Kosten für Entwicklung noch<br />

für den Betrieb erhöhen. Moderne <strong>Cloud</strong>-Native-Anwendungen nutzen Container, Kubernetes,<br />

Microservices, Continuous Integration/Continuous Deployment, DevOps und eine<br />

Kombination von Open-Source- und Closed-Source-Software, die in verschiedenen Programmiersprachen<br />

entwickelt werden. <strong>Confidential</strong> <strong>Cloud</strong>-Native Computing nutzt die gleichen<br />

Methoden und bietet zusätzlich eine ununterbrochene Verschlüsselung, ohne dass eine Änderung<br />

des Quellcodes der Anwendung erforderlich wäre. Die in der <strong>Cloud</strong> laufenden Workloads<br />

können damit zusätzlich transparent abgesichert werden, mit einem für den Endanwender<br />

minimalen Aufwand.<br />

Methodology<br />

Tools<br />

Service-<br />

Based<br />

Development<br />

API-Driven<br />

<strong>Confidential</strong><br />

Computing<br />

Abbildung 1: Entwicklung von <strong>Confidential</strong> <strong>Cloud</strong>-Native Applications<br />

Containers<br />

Deployment / operations<br />

IDE (VC), Git, … SCONE Kubernetes, Docker<br />

DevOps<br />

Im Verlauf der letzten Monate wurde durch T-Systems, Intel und Scontain ein Proof of Concept<br />

(PoC) für <strong>Confidential</strong> <strong>Cloud</strong>-Native Computing durchgeführt. Hierbei wurde untersucht,<br />

wie die optimale Skalierung einer Container-basierten Microservice-Architektur realisiert<br />

werden kann, bei gleichzeitiger Verschlüsselung der Daten und der Programme während deren<br />

Verarbeitung. Dies wird unter Verwendung von Intel® Software Guard Extensions (Intel®<br />

SGX) realisiert, da es die einzigartige Fähigkeit besitzt, ausgewählten Anwendungscode und<br />

Daten im Hauptspeicher zu isolieren. Intel® SGX ermöglicht dies mit hardwarebasierter Speicherverschlüsselung,<br />

so dass Anwendungsentwickler ihre Anwendungen in CPU-gehärtete<br />

„Enklaven“ d.h. verschlüsselten Ausführungsbereichen im Speicher partitionieren können.<br />

Um diese performant, sicher und ohne Anpassungen am Quellcode der in der <strong>Cloud</strong> laufenden<br />

Applikationen zu realisieren, wurde die SCONE-Plattform eingesetzt.<br />

Ziel des PoC war es, darzustellen, wie unter Berücksichtigung verschiedener Lastprofile der<br />

Betrieb einer Intel®-SGX-basierten Container-Plattform effizient skaliert werden kann. Hierzu<br />

wurden Last- und Performancetests mit unterschiedlichen Aufrufprofilen eingesetzt. Diese<br />

lieferten belastbare Aussagen zur möglichst performanten und ressourcenoptimierten Skalierung<br />

einer künftigen Betriebsplattform.<br />

Die Erkenntnisse ermöglichen eine effiziente und optimale Nutzung der Hardware bei unterschiedlichen<br />

Lastprofilen. Hierzu war eine der zentralen Zielgrößen, die Zahl paralleler<br />

Microservices pro physischen Knoten zu maximieren, bei gleichzeitiger Einhaltung im Voraus<br />

definierter Performance-Charakteristiken.<br />

Hierzu wurde ein sicheres Dokumentenmanagement auf der T-Systems-Container-Plattform,<br />

einschließlich zugehöriger Monitoring-Tools und -Skripte, implementiert. Insgesamt liefert<br />

dies belastbare Aussagen für das stabile und skalierbare Verhalten der Container-Plattform<br />

(inkl. des Dokumentenhandlings) für ca. 6.000 parallele Microservices, verteilt über 75 physische<br />

Knoten.<br />

4<br />

5


Gefahr in der <strong>Cloud</strong>: Schützen Sie Ihre <strong>Cloud</strong> Ressourcen vor kritischen Bedrohungen<br />

Hintergrund und Problemstellung<br />

Hintergrund und Problemstellung<br />

Unsere Problemstellung war es, die Praktikabilität einer realistischen <strong>Confidential</strong> <strong>Cloud</strong>-Native<br />

Applikation zu untersuchen.<br />

<strong>Confidential</strong> <strong>Cloud</strong>-Native Applikation erfordert darüber hinaus, dass alle Daten,<br />

der Programmcode und alle Schlüssel ununterbrochen verschlüsselt bleiben:<br />

Security<br />

Focus<br />

<strong>Confidential</strong> <strong>Cloud</strong>-Native Application Development<br />

data, code, and keys are always encrypted<br />

- at rest, in transit, in memory -<br />

Speed to market<br />

• at rest – persistent gespeichert auf Disks,<br />

• in transit – während der Datenübertragung über das Netzwerk und<br />

• at runtime – während der Datenverarbeitung im Hauptspeicher.<br />

Development Methodology<br />

Teams<br />

Delivery Cycle<br />

Application Architecture<br />

Infrastructure<br />

Enterprise-grade SLAs<br />

Abbildung 2: Eigenschaften von <strong>Confidential</strong> <strong>Cloud</strong>-Native Applications<br />

Die Applikation soll horizontal mit den Lastanforderungen skalieren und alle Aspekte von<br />

<strong>Cloud</strong>-Native-Applikationen müssen unterstützt werden:<br />

• Container-basiertes Deployment,<br />

• Continuous Integration und Continuous Deployment,<br />

• Microservice-basiert,<br />

• freie Wahl der Programmiersprache per Microservice,<br />

• Unterstützung von DevOps-Teams und<br />

• Orchestrierung mittels Kubernetes.<br />

Agile development, DevOps<br />

Collaborative DevOps team<br />

Short and continuous<br />

Loosely coupled, service-based, API-based communication<br />

Container-centric, portable, scales horizontally,<br />

on-demand capacity<br />

ensuring end-to-end performance, stability and availability<br />

Die ersten beiden Punkte werden generell gut verstanden und implementiert. Der dritte<br />

Aspekt birgt jedoch einige Herausforderungen – v. a. durch die verstärkte Nutzung von<br />

<strong>Cloud</strong>diensten oder anderweitig durch mehrere Organisationen gemeinsam genutzte Infrastrukturen.<br />

Die Daten, der Code und die Schlüssel dürfen also niemals im Klartext vorliegen<br />

oder anderweitig zugänglich sein.<br />

Personenbezogene Informationen werden in der heutigen Zeit als besonders schützenswerte<br />

Daten klassifiziert. Vor diesem Hintergrund wurde in diesem PoC das Management von Dokumenten<br />

inkl. deren Metadaten untersucht. Mögliche Anwendungsfälle finden sich u. a. im<br />

Finanz-, Versicherungs- und Gesundheitssektor.<br />

Als Applikation haben wir demnach eine sichere Dokumentenverwaltung gewählt. Mandanten<br />

können ihre Dokumente verschlüsselt in die <strong>Cloud</strong> übertragen (bspw. TLS). Die Daten werden<br />

verschlüsselt in einer Datenbank gespeichert und auch die Metadaten sind ununterbrochen<br />

verschlüsselt.<br />

encrypted with random,<br />

always-encrypted key<br />

Proxy<br />

Secure<br />

Doc<br />

Service<br />

CACHE<br />

DB<br />

Kubernetes,<br />

Operating Systems,<br />

Hypervisor<br />

Administrator<br />

(root)<br />

adversary<br />

(root)<br />

files<br />

Abbildung 3: SCONE stellt sicher das Daten, Code, und Schlüssel ununterbrochen verschlüsselt sind<br />

6<br />

7

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!