Cyber-Angriffe sind in unserer vernetzten Welt eine bedauerliche Realität. Und mit den Angreifern Schritt zu halten ist eine Kunst, die mit dem Umstieg auf Cloud-native Technologien noch schwerer zu beherrschen wird. Infolgedessen entwickelt sich die IT-Sicherheit weiter.

Die Developer-, DevOps- und Cloud-Teams müssen jetzt eine Reihe neuer Best Practices erlernen, um Shift-Left- und Shield-Right-Sicherheitsansätze in Einklang zu bringen und so die Risiken zu reduzieren. Nie war es so dringlich wie heute, Ihre Cybersicherheitsstrategie zu überdenken, denn die Grundlagen moderner Cyber-Sicherheitsprogramme in der Welt von Containern, Kubernetes und Cloud haben sich geändert.

Shift-Left: Entwicklergesteuerte Sicherheit

Eine ausnutzbare Sicherheitslücke in Ihrem Code oder Container kann Ihre gesamte Cloud-Infrastruktur gefährden. Um diesem Risiko entgegenzusteuern, hat sich der „Shift-Left“-Sicherheitsansatz herausgebildet, bei dem bekannte Sicherheitsprobleme schon in der Entwicklungs-Pipeline ausgeräumt werden, mit dem erklärten Ziel, Laufzeit-Exploits zu verhindern.

In den meisten Unternehmen sind die Entwickler keine Sicherheitsexperten. Die Sicherheit ist ihnen zwar wichtig, doch sie möchten sich nicht unbedingt damit befassen müssen. Die Automatisierung von Sicherheitstests ist eine Herausforderung. Erfolgreiches Shift-Left erfordert neue Prozesse und Tools, um diese Aufgabe zu vereinfachen. Ebenso wichtig sind Schulungen und Ausbildung, um Know-how für Cloud-native Sicherheit zu gewinnen.

Um Anwendungssicherheit im Entwicklungsstadium zu erreichen, können eine Reihe von Technologien eingesetzt werden. Dazu zählen:

  • Software Composition Analysis (SCA): Open-Source-Software (OSS) wird ermittelt und auf Schwachstellen und potenzielle Angriffe analysiert.
  • Static Application Security Testing (SAST): Quellcode, Bytecode oder Assemblercode werden auf Sicherheitslücken untersucht.
  • Infrastructure-as-Code- (IaC) Audits: IaC-Templates werden auf Fehlkonfigurationen und Sicherheitsmängel geprüft.

Mit jedem dieser Tools können Sie Ihrem Unternehmen vermeiden helfen, dass später im Produktivbetrieb Brände gelöscht werden müssen, da Sie Sicherheitsprobleme wie Schwachstellen und Fehlkonfigurationen proaktiv identifizieren und beheben, bevor Sie Ihre Anwendung ausliefern.

Shield-Right: Laufzeitsicherheit

Auch wenn Shift-Left-Sicherheit perfekt umgesetzt wird, können im Produktivbetrieb jedoch Bedrohungen auftreten. Es gibt viele verschiedene Angriffsvektoren, und Probleme wie Ransomware, Krypto-Mining oder andere Kompromittierungen lassen sich nicht dadurch verhindern, dass Code oder Images gescannt werden. Und da täglich neue Container- Schwachstellen entdeckt werden, könnte Ihr Container, der heute noch sicher erscheint, vielleicht schon morgen einem neuen Exploit zum Opfer fallen.

Bei der „Shield-Right“-Sicherheit liegt der Schwerpunkt auf Mechanismen, die dazu dienen, Ihre laufenden Dienste zu schützen und zu überwachen. Herkömmliche Sicherheitsverfahren mit Tools wie Firewalls und Intrusion-Prevention-Systemen (IPS) reichen dazu nicht aus. Sie lassen Lücken offen, weil sie in der Regel keinen Einblick in containerisierte Workloads und den zugehörigen Cloud-nativen Kontext bieten.

Unternehmen, die Container einsetzen, müssen auch Container-Abstraktionen und kurzlebige Assets berücksichtigen, um Blind Spots zu vermeiden, die dazu führen können, dass Sicherheitskontrollen versagen. Bedrohungen lassen sich erkennen, indem eine zuverlässige „Quelle der Wahrheit“ (Source of Truth) überwacht wird. Für Container und die Cloud bedeutet das:

  • Linux-Systemaufrufe,
  • Kubernetes Audit-Protokolle sowie
  • Protokolle zu den Cloud-Aktivitäten.

Diese Daten manuell zu durchforsten, ist natürlich nicht machbar. Durch die Integration einer Policy-Engine können Sie definieren, bei welchen Verhaltensweisen gewarnt werden soll. So können Sie die Erkennung und Behebung von Sicherheitsproblemen während der Laufzeit über alle Ihre Cluster, Hosts, die Orchestrierungs-Engine und Cloud hinweg automatisieren.

Warum Sie sowohl Shift-Left- als auch Shield-Right-Sicherheit brauchen

Ziel jedes Cybersecurity-Programms sollte es sein, Sicherheit für den gesamten Lebenszyklus zu gewährleisten – von der Software-Lieferkette bis zum Betrieb. Aus dieser Notwendigkeit heraus wurde das DevSecOps-Konzept geboren.

Unter der gleichen Prämisse steht auch die Partnerschaft zwischen Sysdig und Snyk, die umfassende Containersicherheit vom Code bis zur Laufzeit ermöglichen soll. Entscheidend ist, dass die Sicherheit in der Entwicklungsphase und die Sicherheit während Laufzeit ins richtige Gleichgewicht gebracht werden.

Die Entwickler brauchen SAST- und SCA-Tools, die ihnen Probleme aufzeigen und umsetzbare Empfehlungen zu deren Beseitigung liefern. Die SecOps-Teams wiederum brauchen ein Sicherheitsnetz für die Laufzeit, um Bedrohungen erkennen zu können, die die Schutzmaßnahmen umgehen oder noch nicht geschlossene Sicherheitslücken ausnutzen.

Außerdem kann Ihnen die Laufzeittransparenz helfen, Ihre Shift-Left-Verfahren zu verbessern. Wenn Ihre Container in Betrieb sind, kann eine Feedbackschleife, die während der Laufzeit entdeckte Probleme mit dem zugrundeliegenden Code korreliert, den Entwicklern zeigen, womit sie sich befassen sollten. Laufzeitinformationen können auch statische Sicherheitstests unterstützen, um aufzuzeigen, welche Pakete tatsächlich in den Containern ausgeführt werden, in denen eine Anwendung läuft. So können die Entwickler Schwachstellen bei nicht genutzten Paketen erst einmal zurückstellen und sich stattdessen auf die Beseitigung der ausnutzbaren Schwachstellen in den laufenden Paketen konzentrieren.

Schnelle Zyklen der Anwendungsbereitstellung und dynamische Container-Umgebungen haben die Sicherheitsanforderungen verändert. Die Anwendungsentwickler, die für den Infrastrukturbetrieb zuständigen Teams und die Sicherheitsfachleute müssen jetzt enger zusammenarbeiten, um Shift-Left- und Shield-Right-Verfahren in ihre Security-Toolchains zu integrieren. Mit diesen beiden Ansätzen können Unternehmen Sicherheitslücken und Vorfälle in modernen Anwendungsarchitekturen effektiver erkennen und entsprechend reagieren.

Eric Carter

Sysdig

Snyk