Projektstatus: Im Einsatz

SiC – Abgesicherte Verwaltungsvorgänge durch signierte Container

Wir ermöglichen Automatisierung von Container-Signaturen – für mehr Sicherheit in der Software-Lieferkette.

Lucas Humfeldt, Thomas Fricke, Bianca Kastl, Gregor Bransky
#Runde13 #Datenschutz/Souveränität #Softwareinfrastruktur

Welche gesellschaftliche Herausforderung adressiert euer Prototyp?

Immer mehr Anwendungen aus Verwaltung oder Gesundheitswesen werden inzwischen in der Cloud ausgeführt oder sollen in die Cloud verlagert werden. Dabei ist nicht immer sichergestellt, dass in der Cloud auch nur der Code läuft, der dort laufen soll. Hierzu erarbeiten wir eine Lösung, mit der überprüft werden kann, dass nur vorher authentifizierter Code genutzt wird. Dies erhöht die Sicherheit und die Vertrauenswürdigkeit von Cloudanwendungen z.B. der Verwaltung und ist somit in unser aller Interesse. Als Teil der cloudbasierten Verwaltungsarbeit gibt es dazu bereits technische Anforderungen im Rahmen der Deutschen Verwaltungsstrategie (DVS). Dabei ist es zwingend notwendig, dass nur vorher geprüfter und entsprechend signierter Code in sogenannten Container-Images genutzt wird. Beim Signieren von Containern werden diese mit einer “digitalen Unterschrift” versehen, die nachvollziehbar macht, ob der Inhalt zum vorher festgelegten Fingerabdruck passt. So können Fehler und absichtliche Manipulation entdeckt werden. Bisher wird die Integrität nur bei der Einrichtung eines Containers überprüft. Ob beim Ausführen des Containers die Integrität weiterhin gewährleistet ist, wird nicht erneut überprüft. Unser Ziel ist es, das Verfahren zum Signieren und Verifizieren von Container-Images einfach implementierbar zu gestalten. Wir möchten anhand des modularen Frameworks IRIS connect zeigen, dass es einfach sein kann, Container-Images kontinuierlich auf Vertrauenswürdigkeit zu prüfen.

Wie geht ihr das Problem an?

Die Verfahren werden durch eigene Container als Microservices implementiert. Container sind ausführbare Instanzen ihrer Images und Microservice-Architekturen erlauben es, komplexe Verfahren in überschaubare Schritte aufteilen. Ein Container führt einen dieser Schritte aus und kann einzeln überprüft und angepasst werden. Das vereinfacht das Auditing der Container. Die Nutzung der überprüften Container für Verfahren kann wiederum durch Signaturen nachgewiesen werden. Als Signaturverfahren hat sich Sigstore durchgesetzt. Sigstore ist ein Projekt und Standard, der darauf ausgelegt ist, Angriffe auf Software-Lieferketten einzudämmen. Hierfür werden Einmalsignaturen erstellt und in einem dezentral geschützten Speicher abgelegt. Der Vergleich von lokalen Container-Images mit den Einträgen für diese im Speicher garantiert, dass keine Manipulation an den Images vorgenommen wurde. Der Einsatz von Sigstore stellt sicher, dass die Autor*innen bekannt sind, und, dass der ausgeführte Container mit dem signierten übereinstimmt sowie, dass es keine unbekannten Signaturen im System gibt.

An wen richtet sich euer Tool?

Zielgruppe ist die deutsche Verwaltung, das Gesundheitswesen, sowie ähnliche Dienstleister, die mit besonders schützenswerten Daten umgehen und daher kontinuierlich überprüfbar sein sollen. Der Innovationsverbund möchte mittels „strategic Prototyping“ zeigen, dass es nicht nur einfach ist, Cloud-Anwendungen in der Breite einzusetzen, sondern, dass es auch einfach sein kann, diesen Prozess abzusichern. Darüber hinaus sollen Bürger*innen und Unternehmen auch die Möglichkeit erhalten, deren Authentizität zu überprüfen. Dies ist besonders wichtig in Bereichen, in denen zum Beispiel eine Ende-zu-Ende-Kommunikation vonnööten ist. Darüber hinaus ermöglicht der Einsatz von signierten Containern bei kritischen Anwendungen z. B. im KRITIS-Umfeld, dass das Nachvollziehen von externen Überprüfungen (etwa Ergebnisse von Penttests) nicht nur durch Abarbeiten von Dokumenten möglich ist, sondern direkt anhand des verifizierten Codes.