Maschinenidentitäten verwalten und überwachen 4 Grundsätze für besseres DevSecOps

Ein Gastbeitrag von Steve Judd *

Unternehmen setzen zunehmend auf Cloud-native Architekturen und DevOps-Verfahren, um Innovationen voranzutreiben. Damit dies im Kubernetes-Ökosystem nicht zu Lasten der Sicherheit geht, sollten sich DevSecOps-Teams einige Prinzipien zu eigen machen.

Anbieter zum Thema

In verteilten und automatisierten Umgebungen ist es wichtig, die maschinellen Identitäten im Auge zu behalten.
In verteilten und automatisierten Umgebungen ist es wichtig, die maschinellen Identitäten im Auge zu behalten.
(© AndSus – stock.adobe.com)

Die heutigen schnellen Entwicklungszyklen setzen die Unternehmenssicherheit unter Druck und die Teams haben Mühe, damit Schritt zu halten. Unternehmensteams sind jedoch darauf bedacht, sich einen Wettbewerbsvorteil zu verschaffen, deshalb besteht die Gefahr, dass die Entwickler die Sicherheit vernachlässigen, um knappe Fristen einzuhalten.

Laut einer kürzlich durchgeführten Umfrage gaben 52 Prozent der Unternehmen zu, dass sie bei den Sicherheitsmaßnahmen Abstriche machen, um ein Geschäftsziel zu erreichen. Dies liegt daran, dass Sicherheit komplex und uneinheitlich sein kann und die ohnehin schon überlasteten Entwicklungsteams noch zusätzlich belastet. Die wachsende Beliebtheit von Kubernetes als Container-Orchestrierungssystem sorgt für weitere Komplexität.

Kubernetes bietet Flexibilität und eine konsistente, codebasierte Erfahrung und hat sich schnell zur bevorzugten Plattform unter Entwicklern entwickelt. Eine Umfrage der Cloud Native Computing Foundation aus dem Jahr 2021 ergab, dass erstaunliche 96 Prozent der Befragten Kubernetes verwenden oder evaluieren. Da es sich jedoch um eine Open-Source-Technologie handelt, wird Kubernetes ständig weiterentwickelt und verbessert, was die Sicherheitsteams zusätzlich unter Druck setzt, mit der Entwicklung Schritt zu halten und ihre Umgebungen zu schützen.

Erhöhtes operatives Risiko

Innerhalb eines Kubernetes-Ökosystems liegt die Hauptrisikoquelle in der Art und Weise, wie Unternehmen Maschinenidentitäten konfigurieren und verwalten. Jedes Mal, wenn ein Entwickler einen Microservice, einen Container oder eine virtuelle Maschine in die Produktion überführt, muss er ihr eine Identität zuweisen und diese Identität während ihres gesamten Lebenszyklus verwalten.

Die Zunahme des Cloud Computing und seine Dynamik haben zu einer explosionsartigen Zunahme von Maschinenidentitäten geführt – zu viele, um sie manuell zu verwalten. Ohne strenge Sicherheitsstandards und geeignete Tools zur Verwaltung des Prozesses riskieren Unternehmen, dass ihre Systeme für Angriffe anfällig werden. Um das Problem zu entschärfen, verschmelzen Unternehmen Sicherheits- und Entwicklungsteams zu DevSecOps.

Die Zusammenführung der Fähigkeiten von DevOps und Sicherheit bietet jedoch noch nicht das Maß an Schutz, das Unternehmen benötigen. Zwar gaben in der Umfrage 85 Prozent der Unternehmen an, dass die Anwendung von SecOps-Best-Practices ein wichtiges Ziel für sie ist, aber nur 35 Prozent geben an, dass SecOps in ihrem Unternehmen eine etablierte Praxis ist. Infolgedessen lassen sich oft groß angelegte Angriffe von Cyberkriminellen wie TeamTNT feststellen, die dafür bekannt sind, dass sie auf falsch konfigurierte Kubernetes-Cluster abzielen und Malware verbreiten.

Um den Erfolg von DevSecOps voranzutreiben, haben wir vier Prinzipien identifiziert, die das Befolgen von Prozessen erleichtern können:

1. Überwachung

Mit der Beschleunigung der digitalen Transformation steigt auch die Anzahl der Maschinenidentitäten bzw. X.509-Zertifikate. Wie viele Unternehmen jedoch auf die harte Tour feststellen müssen, ist es unmöglich, große Mengen an X.509-Zertifikaten manuell zu verwalten, ohne Sicherheitslücken zu schaffen. Um einen Zero-Trust-Ansatz zu verstärken, sollten Sie automatisierte Tools zur Überwachung der Maschinenidentitäten verwenden.

Die Automatisierung von X.509-Zertifikaten und das Entfernen manuell signierter Zertifikate kann Sicherheitsvorfälle bei Cloud-nativen Workloads erheblich reduzieren. Die Automatisierung stellt auch sicher, dass Unternehmen mit der Geschwindigkeit der modernen Entwicklung und dem Umfang von Multi-Cloud-Umgebungen Schritt halten können.

2. Konsistenz

Ein häufiger Fehler von Unternehmen bei der Verwaltung von Maschinenidentitäten ist Inkonsistenz. Die Verwendung mehrerer Tools und Methoden zur Einführung der Maschinenidentitätssicherheit kann zu Verwirrung in den Teams über die Prozesse führen und den Zuverlässigkeitsingenieuren vor Ort viel Arbeit bereiten. Durch die klare Definition und Kommunikation einfacher Ausführungsprozesse können Teams sicherstellen, dass die Art und Weise, wie sie die Sicherheit der Maschinenidentität initiieren, jedes Mal die gleiche ist, und mehr Konsistenz und Nachvollziehbarkeit für jeden neuen Cluster, der in Produktion geht, bieten.

3. Identifizierung

Wenn Teams mehrere Container pro Minute bereitstellen, wird es schwierig, den Überblick über die gesamte Infrastruktur eines Unternehmens zu behalten. Probleme können aus Fehlkonfigurationen in Containern oder der zugrunde liegenden Kubernetes-Infrastruktur resultieren. Durch die Einführung von Automatisierung können Teams Container in jeder Phase scannen, um die häufigste Schwachstelle zu identifizieren und eine Richtlinie zu erstellen, um diese zu beseitigen. Stellen Sie jedoch sicher, dass Prozesse zur Durchsetzung der Richtlinie vorhanden sind, um zu verhindern, dass die Schwachstelle erneut auftritt, wenn Entwickler neue Cluster einführen. Automatisierungswerkzeuge können dabei helfen, indem sie die Konfigurationen mit allen Sicherheitsrichtlinien abgleichen.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Softwareentwicklung und DevOps

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

4. Isolierung

Es lässt sich eine zusätzliche Sicherheitsebene implementieren, indem Anwendungen isoliert werden. Die Isolierung verringert den Aktionsradius einer Sicherheitsverletzung, indem sie sicherstellt, dass eine kompromittierte Anwendung weniger wahrscheinlich andere Bereiche der Infrastruktur oder des Netzwerks eines Unternehmens beeinträchtigt. Sie trägt auch dazu bei, das Risiko von Schäden an einem System zu begrenzen, wenn neue Anwendungen oder Funktionen freigegeben werden. Für eine verbesserte IT-Sicherheit sollte eine Überprüfung der Container-Laufzeit eingeführt werden. Sobald ein Container in Produktion ist, sollten geeignete Mechanismen eingerichtet werden, um sicherzustellen, dass der Container auch sicher bleibt. Automatisierte Scanning-Tools können kontinuierlich nach neuen allgemeinen Schwachstellen und Gefährdungen suchen und diese an das zuständige Team zur Behebung melden.

Weniger Komplexität bei DevSecOps

In Anbetracht der erheblichen finanziellen und rufschädigenden Kosten eines Cyberangriffs muss die Sicherheit für jeden, der in der Entwicklungspipeline arbeitet, ein Anliegen sein. Viele Entwicklerteams betrachten Sicherheit jedoch immer noch als lästige Pflicht, die sie davon abhält, Kubernetes optimal zu nutzen. Die Ausstattung von DevSecOps mit den richtigen Sicherheitstools und -praktiken wird Entwicklern das Leben leichter machen - sie werden in der Lage sein, schnell zu innovieren, geschäftliche Anforderungen zu erfüllen und sich auf die Sicherheit ihres Codes zu verlassen.

* Steve Judd ist Solutions Architect bei Jetstack.

(ID:48284424)