Fallstudie: OCCRP

OCCRP migriert von GKE zu Constellation für Ende-zu-Ende-Verschlüsselung

Über OCCRP


Das Organized Crime and Corruption Reporting Project (OCCRP) ist eine internationale NGO, bestehend aus investigativen Journalisten, Medienorganisationen und Aktivisten, die zusammenarbeiten, um organisierte Kriminalität und Korruption weltweit aufzudecken.
Im Kampf gegen korrupte Banken, Anwaltskanzleien, Zulassungsbeamte und Lobbyisten, die sie als "Industrien der kriminellen Dienstleistungen" bezeichnen, arbeitet OCCRP in Regionen wie Südamerika, Osteuropa, Polynesien und Afrika. Als Organisation zeichnet sich OCCRP durch einige der wirkungsvollsten Untersuchungen der letzten Jahrzehnte aus, wie beispielsweise den Panama Papers und den Credit Suisse Leaks.


Um ihre anspruchsvollen Ziele zu erreichen, stützt sich OCCRP nicht nur auf die Arbeit ihres journalistischen Netzwerks und ihrer Partner wie die BBC und The Guardian, sondern auch auf ausgefeilte technische Tools. Das Projekt Aleph von OCCRP bietet ein "globales Archiv von Forschungsmaterial für investigativen Journalismus", wodurch OCCRP über viele Terabyte an sensiblen, vertraulichen Daten aus Quellen wie Whistleblowern, Untersuchungen und Archiven hostet.


Während für viele Unternehmen ein Datenleck oder der Verlust sensibler Informationen ein Vermögen kostet, könnte selbst ein kleines Datenleck für die Aktivisten und Journalisten, die mit OCCRP arbeiten, schwerwiegende Auswirkungen auf ihr Leben haben. Daher bemühen sich die Entwickler bei OCCRP sicherzustellen, dass die Journalisten und Aktivisten, die mit diesen Informationen in Verbindung stehen, geschützt sind.

Constellation stellt uns die benötigten Tools zur Verfügung, um die Ziele unserer Organisation zu erreichen: die Reduzierung von Risiken für unsere Journalisten. Wir verwenden Constellation bereits seit mehreren Monaten und sind nach wie vor beeindruckt von seiner Benutzerfreundlichkeit. Wir bedauern nur, dass wir es nicht früher gefunden haben.

Amran Anjum, Head of Infrastructure bei OCCRP

Herausforderung


Ursprünglich befanden sich die Daten auf einem GKE-Cluster. Die Security Engineers bei OCCRP waren sich der Sensibilität ihrer bearbeiteten Daten bewusst und benötigten daher eine bessere Lösung. Diese Lösung musste die Daten in allen Zuständen verschlüsselt halten, die Cluster von der zugrunde liegenden Infrastruktur isolieren und Zugriff durch den Cloud-Anbieter oder andere böswillige Dritte ausschließen.


Mit ihrer bestehenden Einrichtung hatten OCCRP drei Hauptprobleme:

  • Umständliche und lückenhafte Verschlüsselung

    - Zwar bietet GCP Verschlüsselung für Speicher, jedoch wird die Verschlüsselung im Backend erledigt und von Google verwaltet. OCCRP müsste implizit auf die Verschlüsselung von GCP vertrauen, was keine ausreichend starke Garantie darstellte.

    - Als OCCRP GKE noch nutzte, verschlüsselten sie manuell alle Volumes und Datenträger innerhalb des Clusters und kümmerten sich um das Management der Keys für diese Volumes. Wenn sie Daten zwischen Umgebungen verschieben wollten (zum Beispiel von On-Premise in die Cloud oder zwischen Clustern), musste dies manuell erledigt werden: die Schlüssel wurden verschoben, die verschlüsselten Volumes montiert, etc.

  • Fehlende Isolation gegenüber der Cloud-Infrastruktur

    - Bei Google Kubernetes Engine wird das Control Plane von GCP-Administratoren verwaltet und das Cloud-Deployment von OCCRP konnte zudem nicht vollständig von der Infrastruktur isoliert werden.

    - Der Zugriff auf das Control Plane ermöglicht ebenfalls die volle Kontrolle über Worker-Nodes mithilfe von kubelet. Dies wäre auch der Fall, wenn die Worker-Nodes auf vertraulichen virtuellen Maschinen laufen würden.

  • Begrenzte Attestierung

    - GKE bietet keine Möglichkeit, zu attestieren, dass das gesamte Cluster ausschließlich aus confidential Nodes besteht und dass dieser Zustand während der Lebensdauer des Clusters beibehalten wird.

    - Hätte OCCRP Vanilla Kubernetes auf GCP anstelle von GKE verwendet, wäre die manuelle Einrichtung und Wartung eines Clusters mit vertraulichen VMs sowie die individuelle Überprüfung jeder Node durch Remote-Attestierung eine überwältigende Aufgabe gewesen.

Vor der Migration zu Constellation waren OCCRP Entwickler bereit, die anspruchsvolle Aufgabe anzugehen, um ihre Kubernetes-Installation zu sichern. Constellation hat diesen mühsamen Prozess jedoch überflüssig gemacht.

Without Constellation

Lösung:


Vor dem Hintergrund der hohen Belastung ihrer Sicherheitsanforderungen suchten die Entwickler von OCCRP nach einer dedizierten Lösung. Diese Suche führte sie direkt zu Constellation und der Erkenntnis, dass es alle ihre technischen Anforderungen erfüllte.


Die Entwickler von OCCRP verwendeten die Open-Source-Version von Constellation, um schnell eine Kubernetes-Umgebung auf GCP einzurichten.


Aufgrund der Verwendung ihres bestehenden Infrastrukturanbieters und der nahtlosen Integration von Constellation mit den GCP-Angeboten führte die Migration ihrer sensiblen Daten nur zu minimaler Ausfallzeit oder Störungen für die Benutzer. Nach der Implementierung von Constellation, erlebten die Entwickler von OCCRP sofort drei konkrete Vorteile:

  • Benutzerfreundlichkeit und durchgehende Verschlüsselung

    - Mit Constellation verwaltet OCCRP die Verschlüsselung im Speicher und das Key Management problemlos.

    - Die Plattform verschlüsselt automatisch Volumes innerhalb des Clusters. Somit ersetzt und automatisiert Constellation den Prozess, den OCCRP zuvor manuell mit GKE durchführen musste.

    - Bei der Anforderung von Speicher über das Kubernetes Container Storage Interface (CSI) stellt Constellation Workloads mit bereits verschlüsselten Volumes zur Verfügung und kümmert sich um das Key Management. OCCRP muss nur ihre Anwendungen implementieren und der Rest geschieht automatisch.

    - Daten können immer noch entschlüsselt und in anderen Umgebungen, wie On-Prem oder verschiedenen Clustern, verwendet werden mithilfe desselben "Master-Key“ und den "Key Derivation Functions“ für die relevanten Volumes.

  • Isolation gegenüber der Cloud-Infrastruktur

    - Mit Constellation kann der Cloud-Anbieter (in diesem Fall GCP) aus dem Loop genommen werden. Im Gegensatz zu GKE ist das Control Plane von Constellation ebenfalls isoliert und als Teil des vertraulichen Clusters geschützt.

    - Constellation schützt vor unbefugtem Zugriff durch Dritte auf das Cluster und die darin befindlichen Daten, sei es direkt oder durch Kompromittierung, beispielsweise durch einen Cloud-Administrator.

    - Constellation verschlüsselt die Netzwerkverbindungen zwischen den Nodes automatisch, wodurch eine transparente Abschirmung erreicht wird. Es ist nicht notwendig, der Infrastruktur oder GCP zu vertrauen, um die Verbindung zu sichern.

  • Vollständig verifizierbare Sicherheit

    - Constellation ermöglicht es OCCRP, die Vertraulichkeit und Integrität des gesamten Clusters, der bereitgestellten Workloads sowie der verarbeiteten Daten und des Speichers zu überprüfen. Diese Funktion ist in eine benutzerfreundliche Oberfläche integriert, die reibungslos in die Day-2-Operationen integriert ist. Dadurch kann OCCRP auf eine sichere Art und Weise ihre Cluster aktualisieren, speichern und migrieren.

    - Constellation bietet ein umfassendes Modell zur Sicherung der Lieferkette, das die Verteilung von signierten und reproduzierbaren Attestationsnachweisen sowie sämtlicher Komponenten von Constellation umfasst. Dies gewährleistet, dass Kompromittierungen in der Lieferkette, selbst innerhalb von Edgeless Systems, bis hin zu Quellcodeänderungen erkannt und verifiziert werden können.

    - Diese Funktionalität ist für OCCRP entscheidend, da sie mit sensiblen Informationen und besonders gefährdeten Personen wie Whistleblowern arbeiten. Das Maß an Vertrauen, das dieses Sicherheitsmodell bietet, ist entscheidend, um die Risiken ihrer Arbeit zu minimieren.


Nach der Migration waren die Daten sicher und durch die automatische Aktualisierung und Skalierung von Constellation war es für Hacker oder andere bösartige Akteure praktisch unmöglich auf Daten zuzugreifen.

Confidential Cloud with Constellation

Ergebnis


Nach sechs Monaten Einsatz von Constellation auf GCP zieht OCCRP eine positive Bilanz. Es gab keine unbefugten Zugriffe oder Hacks auf die Daten. Die Entwickler von OCCRP konnten ihren gewohnten Cloud-Anbieter weiterhin nutzen.


Durch die Benutzerfreundlichkeit von Constellation konnten die Entwickler bei OCCRP sich weiterhin auf andere technische Tools konzentrieren, um die Arbeit ihrer Journalisten zu unterstützen. Die Organisation konnte sicher sein, dass ihre wertvollsten und hart umkämpften Informationen zu jeder Zeit sicher für die Nutzung durch internationale Journalisten sind.

Hie können Sie die vollständige Fallstudie downloaden