Die Bedeutung von Platform Engineers für ein Sicherheitsprogramm
13. April 2023
0 Min. LesezeitPlatform Engineers müssen in einem Unternehmen in Sicherheitsprogramme eingebunden werden. Ihre Arbeit hat großen Einfluss auf die Sicherheitslage eines Produkts und wirkt sich vermutlich ebenso stark (manche würden sogar sagen: stärker) aus wie Schwachstellen in Anwendungen. Trotz der großen Auswirkungen ihrer Arbeit ist ihre Rolle in Sicherheitsprogrammen nach wie vor unklar definiert. Cloud-Anbieter veröffentlichen zwar klar definierte Modelle der geteilten Verantwortung für ihre Kunden, doch Unternehmen legen nur selten fest, wer für die Sicherheit zuständig ist: Anwendungsentwickler oder Platform Engineers.
In diesem Blogbeitrag erfahren Sie, was Platform Engineers tun und welche Herausforderungen Product-Security-Teams kennen sollten.
Was ist ein Platform Engineer?
Platform Engineers entwickeln Tools und Systeme, mit denen Entwickler in ihren Unternehmen eigenständig arbeiten können. Sie schaffen vorgegebene, bewährte Wege („paved paths“), auf denen Entwickler zugunsten einer geringeren kognitiven Belastung, einer besseren Bedienbarkeit und eines einfacheren Softwareentwicklungszyklus auf Wahlmöglichkeiten verzichten. Da sie nicht länger mit dem Entscheidungsparadox und steilen Lernkurven kämpfen müssen, können sich Anwendungsentwickler besser darauf konzentrieren, ihre Kunden zu begeistern.
Platform Engineers nutzen eine Vielzahl komplexer und fragmentierter Infrastrukturbausteine und stellen daraus eine kleinere Auswahl einfacherer Komponenten mit weniger Funktionen zusammen. Im Grunde verbinden sie Lego-Steine zu etwas, das wie Duplo aussieht.
Wenn alles richtig umgesetzt ist, erhalten Anwendungsentwickler für 80 % ihrer Arbeit alle nötigen Anpassungsmöglichkeiten, ohne zu Infrastruktur-Experten werden zu müssen.
Was hat Platform Engineering mit Sicherheit zu tun?
Indem Platform Engineers die Details der Infrastruktur abstrahieren, treffen sie Entscheidungen darüber, wie die Infrastruktur grundsätzlich konfiguriert werden soll. Diese Entscheidungen haben großen Einfluss auf die Sicherheitslage des Unternehmens. Man könnte argumentieren, dass Designfehler und Fehlkonfigurationen die Sicherheitslage stärker beeinträchtigen als eine Schwachstelle in einer Anwendung. Tatsächlich haben wir im Bericht 2021 State of Cloud Native Application Security von Snyk festgestellt, dass 45 % der Befragten mit Fehlkonfigurationen zusammenhängende Schwachstellen hatten.
Betrachten Sie all die Fehler, die beim Design und bei der Implementierung der einzelnen Ebenen einer typischen internen Entwicklungsplattform auftreten können:
Anwendungsmanagement: Logging-Agenten, CI/CD, Container-Orchestrierung, Geheimnisverwaltung, Image-Replikation, Datensicherung und Lebenszyklen, Erstellung und Speicherung von Artefakten
Anwendungs-Computing: Container-Cluster, VMs, Load-Balancing, Zertifikate
Netzwerk: DNS, isolierte Netzwerke, Internetanbindung, Ingress-/Egress-Regeln
Zugriff: Identität, Berechtigungen
Und diese Liste wird noch länger, wenn Sie mit einem Platform Engineer sprechen. Sehen wir uns nun einige der Herausforderungen an, mit denen Platform Engineers konfrontiert sein können.
Eine wachsende Kiste mit immer komplexeren Lego-Steinen abzusichern, ist schwierig
Die Zahl der Komponenten ist groß und nimmt weiter zu. Jede Komponente wird immer ausgefeilter. Auch Microservices entwickeln sich zu SaaS-Angeboten, da Kunden Komponenten ihrer Architektur an externe Softwareanbieter auslagern.
Platform Engineers sind häufig Generalisten mit vertieftem Wissen in einzelnen Bereichen. Bei Sicherheitslücken haben sie ähnliche Wissenslücken wie Anwendungsentwickler. Ihre Wissenslücken sind jedoch vermutlich vielfältiger und schwerer zu verstehen, da es oft fundierte Kenntnisse über den Dienst eines bestimmten Anbieters und dessen Konfiguration erfordert.
Komplexes Änderungsmanagement, verschärft durch unausgereifte Testverfahren
Für Anwendungsentwickler sind Tests gut etabliert und weit verbreitet. Von Entwicklern wird erwartet, dass sie Tests für ihren Code schreiben und die Vor- und Nachteile verschiedener Teststrategien entlang der Testpyramide verstehen. Dadurch sind die Kosten für das Zusammenführen von Korrekturen für Anwendungssicherheit relativ gering: Unternehmen können sich auf ausgereifte Tests verlassen, um Regressionen zu vermeiden. Deshalb reicht für das Zusammenführen eines Sicherheitspatches oft ein erfolgreicher Build aus.
Im Platform Engineering sieht die Situation anders aus. Die Kodifizierung der Infrastruktur schreitet branchen- und unternehmensübergreifend nur langsam voran. Selbst über diese grundlegende Voraussetzung für Versionskontrolle und eine Form des Testens hinaus sind die Testverfahren für Infrastrukturänderungen nicht klar definiert. Dadurch ist das Risiko jeder einzelnen Änderung hoch. Erschwerend kommt hinzu, dass nicht jedes Attribut einer Konfigurationsänderung gleich zu bewerten ist. Manche Aktualisierungen, Auslassungen und Ergänzungen von Attributen lösen tatsächlich den Austausch von Ressourcen aus. Das kann schwerwiegende Folgen für abhängige Ressourcen, die von ihnen unterstützten Anwendungen und deren Nutzer haben.
Schwachstellen in der Infrastruktur sind heute kostspieliger zu beheben. Platform Engineers prüfen Änderungen nervös einzeln, weil dies ihre beste Möglichkeit ist, beim Ausrollen von Änderungen größere Probleme zu vermeiden. Dieses Vorgehen ist nicht skalierbar, doch in der noch jungen Platform-Engineering-Community haben sich bislang keine Best Practices etabliert.
Self-Service führt zu Problemen beim Rollout
Bei Platform Engineering – oft auch „Platform as a Product“ genannt – geht es darum, Nutzern einen vorgegebenen, bewährten Weg zu bieten und Entwicklern Self-Service zu ermöglichen. Einige Plattformänderungen werden von den Platform Engineers selbst ausgerollt, darunter Änderungen an der Infrastrukturkonfiguration in den verschiedenen Instanzen des Unternehmens. Andere Änderungen hängen jedoch davon ab, ob Anwendungsentwicklungsteams sie übernehmen und installieren, etwa neue Helm-Charts, Terraform-Module, Deployment-Orbs/Plugins, Instrumentierungsbibliotheken und vieles mehr.
Die Sicherheitslage des Unternehmens verändert sich mit diesen Versionen. Verzögerungen bei Updates in nur wenigen Teams können Herausforderungen für das gesamte Sicherheitsprogramm mit sich bringen, von denen Application Security nichts weiß.
Zusammenfassung
Aufgrund dieser Herausforderungen benötigen Platform Engineers Tools, mit denen sie Fehlkonfigurationen früh im SDLC erkennen können. Darüber hinaus brauchen sie Unterstützung dabei, über das Testen hinauszugehen und das Design ihrer vorgegebenen, bewährten Wege zu verbessern.
Platform Engineers haben großen Einfluss auf die Sicherheitslage ihrer Unternehmen und allgemein auf die Multi-Vendor- und SaaS-geprägte Softwarewelt. Neue Best Practices und Investitionen in die Reife des Platform Engineerings werden Sicherheitsrisiken beseitigen und mindern. Gleichzeitig können Anwendungsentwickler Anwendungsschwachstellen schneller und kostengünstiger als je zuvor beheben.
Starten Sie mit Capture the Flag
Erfahren Sie in unserem virtuellen On-Demand-Workshop für Einsteiger, wie Sie Capture-the-Flag-Herausforderungen lösen.



