Maschinelle Identitäten Digitale Zertifikate sichern die DevOps-Strategie

Autor / Redakteur: Kevin Bocek * / Stephan Augsten |

Automatisierte Prozesse und Plattformen sorgen in DevOps-Konzepten für die nötige Agilität. Damit die Sicherheit dabei nicht zu kurz kommt, muss die Identität von virtuellen Maschinen, Containern und Cloud-Diensten sich zweifelsfrei klären lassen.

Anbieter zum Thema

Jede Maschine, die im Rahmen von DevOps-Konzepten in die Prozesse eingreift, muss ich zweifelsfrei identifizieren lassen.
Jede Maschine, die im Rahmen von DevOps-Konzepten in die Prozesse eingreift, muss ich zweifelsfrei identifizieren lassen.
(Bild: geralt - Pixabay.com / CC0 )

DevOps-Teams schätzen Innovation, allerdings brauchen sie Plattformen, die für Geschwindigkeit und Agilität sorgen. Ein wichtiger Aspekt bei der Anwendungsentwicklung ist und bleibt die Sicherheit. Für einen sicheren Ablauf muss jede Maschine, ob es sich nun um eine virtuelle Maschine, eine Cloud oder einen Container handelt, der in einem Rechenzentrum läuft, identifiziert werden. Ebenso gilt es, die Kommunikation der Komponenten zu schützen.

Menschliche User nutzen ihren Benutzernamen, Passwörter oder Biometrie, um sich zu identifizieren. Die Identität von Maschinen wird hingegen durch digitale Zertifikate und kryptographische Schlüssel überprüft. Gerne verwenden Entwickler hier eigens ausgestellte Zertifikate oder besorgen sich kostenlose Zerifikate und Schlüssel von Zertifizierungsstellen (CA Certificate Authorities), deren Vertrauenswürdigkeit zu bezweifeln ist.

Wir haben hier bei Banken bis zu 32 verschiedene CAs gesehen, die für Webanwendungen außerhalb der demilitarisierten Zone (DMZ) verwendet wurden. Unglücklicherweise ringen aber sogar die anspruchsvollsten DevOps-Teams mit sicheren Schlüsseln und digitalen Zertifikaten. Sie benötigen einen Zugang zu sicheren und vollautomatisierten Schlüsseln und Zertifikaten, ohne dass die Anwendungsentwicklung gestört oder gebremst wird.

Sicherheitsrisiko selbstsignierte Zertifikate

DevOps Teams stehen darüber hinaus unter enormen Zeitdruck. Das verlangt gerade in puncto Sicherheit einen gewissen Grad an Automation, um die Auslieferungsprozesse bei der Anwendungsentwicklung zu beschleunigen. Allerdings ziehen sich die komplizierten Prozesse für die Anschaffung von Schlüsseln und Zertifikaten in die Länge.

Entwickler gestalten die Beschaffungsprozesse für Schlüssel und Zertifikate deshalb oft nach ihren Bedürfnissen. Diese Ad-hoc-Prozesse für die Erstellung von Schlüsseln und Zertifikaten erfüllen allerdings nur selten die Sicherheitsstandards der Unternehmen und stellen ein signifikantes Sicherheitsrisko dar.

Die selbstsignierten Zertifikate sind ein oft genutztes Mittel, wenn es darum geht, schnell die benötigten Zertifikate zur Verfügung zu haben. Dieser Ansatz birgt eine doppelte Problematik. Viele Systeme stufen die Eigenbauvarianten nicht als vertrauenswürdig ein. Zusätzlich lassen sie sich leicht von Cyberkriminellen fälschen. Es ist unmöglich zu identifizieren, welche Maschinen zu einem Netzwerk gehören und welche nicht.

Die Argumentation, dass es sich bei diesen Zertifikaten nur um Test-Zertifikate handelt, führt in die Irre. In den meisten Fällen werden sie nicht durch solche von vertrauenswürdigen Certificate Authorities (Zertifizierungsstellen) ersetzt, wenn die fertig entwickelte Anwendung live geht.

DevOps steht für eine schnelle, nicht für eine sichere Entwicklung. Beispiel war ein Unternehmen, bei dem ein Scan Zertifikate von 140 verschiedenen Zertifizierungsstellen zu Tage förderte, von denen die verantwortlichen Administratoren nichts wussten. Jede Anwendung, die nun von den Entwicklern so programmiert wird, dass sie der ausstellenden Stelle vertraut, wird dadurch automatisch allen Zertifikaten dieser Stelle ebenfalls vertrauen. Eine weitere Überprüfung findet nicht statt.

Eine Möglichkeit, dieses Problem zu beheben, ist eine nahtlose API-Integration mit einer hochwertigen Zertifizierungsstelle, die Entwicklern einen automatisierten, schnellen, skalierbaren und kostenlosen Zugang zu Schlüsseln und Zertifikaten verschafft. Dieser Zugang sollte direkt aus den DevOps Plattformen erfolgen, ohne eine Kompromittierung der Sicherheit des Unternehmens in Kauf nehmen zu müssen.

Maschinen-Identitäten für Container

Schlüssel und Zertifikate schaffen Identitäten für alle möglichen Maschinen, darunter auch Container, derzeit vor allem für die in Mode gekommenen Docker-Container. Die bösartige Nutzung von manipulierten oder gestohlenen Zertifikaten erlaubt Angreifern sich im verschlüsselten Datenverkehr zu verstecken. Vielen Organisationen fehlen jedoch die geeigneten Tools, um diesen Gefahren zu begegnen. Schlussendlich führt dies zu einem dramatischen Anstieg von Risiken für die Unternehmenssicherheit, sobald die Anwendung dort eingesetzt wird.

Fazit

Diese Sicherheitsrisiken verstärken sich in DevOps-Umgebungen, weil hier die Gefahren durch die Geschwindigkeit und Größe der Entwicklung exponentiell wachsen. Im Endergebnis explodiert die Anzahl an Maschinen und die für deren Identifizierung benötigten Schlüssel und Zertifikate geradezu.

Ohne skalierbare und automatisierte Sicherheit können kompromittierte Schlüssel und Zertifikate bereits bei der Entwicklung einer Anwendung zu schwerwiegenden Sicherheitslücken führen. Angreifer können sich unerkannt in dem zunehmenden Datenverkehr verstecken, ohne, dass dies bemerkt wird. DevOps Teams benötigen eine sichere Quelle für vertrauenswürdige Zertifikate und Schlüssel sowie gleichzeitig einen Prozess zu deren automatischer Verwaltung.

Kevin Bocek
Kevin Bocek
(Bild: Venafi)

Es nützt nichts, sich auf die CAs zu verlassen, vielmehr hilft eine hochperformante, technikgestützte Sicherheitsstrategie für die intelligente und automatische Erkennung von Maschinenidentitäten. Entwickler sollten sich nicht noch manuell um die in der Software verwendeten Schlüssel und Zertifikate kümmern müssen, denn dies kostet wertvolle Zeit, die besser in zusätzliche Qualitätschecks investiert werden sollte.

* Kevin Bocek ist Chief Security Strategist bei Venafi.

(ID:44681231)