Der Ansatz eines Unternehmens auf dem Gebiet der Cybersicherheit muss sich kontinuierlich weiterentwickeln, da die Angriffsflächen zunehmen und mehr über potenzielle Bedrohungen bekannt wird. Ausgehend von der Erkenntnis, dass Bedrohungen an jedem Punkt der Software-Lieferkette eintreten können, integriert ein Secure-by-Design-Ansatz Sicherheit in die Design-, Programmierungs-, Test- und Bereitstellungsphase der Softwareentwicklung. Als Standard für die Bundesbehörden der USA – und jedes Unternehmen, das mit ihrer Software zu tun hat – haben sich die Secure-by-Design-Prinzipien zu einem Benchmark für die Integration von Sicherheit in den Software-Entwicklungsprozess entwickelt.
Im Laufe der Zeit haben sich die Secure-by-Design-Prinzipien in verwandte Konzepte wie Secure by Default und Secure by Demand weiterentwickelt, bei denen verschiedene Ansätze von Secure-by-Design-Prinzipien im Vordergrund stehen:
- Secure by Default verfolgt das Ziel, dass sämtliche Softwareprodukte standardmäßig sicher sind.
- Secure by Demand erweitert die Secure-by-Design-Prinzipien auf den Beschaffungsprozess.
Hier erfährst du mehr über Secure-by-Design-Prinzipien und die erwähnten verwandten Ansätze, darunter auch eine Schritt-für-Schritt-Anleitung, wie Unternehmen ihre Strategien so anpassen können, dass sie ausnutzbare Sicherheitslücken und Angriffe auf die Software-Lieferkette verhindern können.
Was sind Secure-by-Design-Prinzipien?
Die US-amerikanische Cybersecurity and Infrastructure Security Agency (CISA) hat im April 2023 ihre Secure-by-Design-Initiative eingeführt, die sich auf drei wichtige Prinzipien der Softwaresicherheit konzentriert:
- Verantwortung für die Ergebnisse der Kundensicherheit
- Nutzung von radikaler Transparenz und Verantwortlichkeit
- Aufbau einer Organisationsstruktur und Führung zur Erreichung dieser Ziele
Secure-by-Design-Prinzipien integrieren Sicherheitsrichtlinien und entsprechende Protokolle in jede Phase des Software-Entwicklungsprozesses. Das bedeutet: Sicherheitsmaßnahmen werden in die Design-, Programmierungs-, Test- und Bereitstellungsphase der Softwareentwicklung integriert und nicht erst im Nachhinein ergänzt.
Das Ziel von Secure-by-Design-Prinzipien ist die Entwicklung einer sicheren Grundlage für Software, und zwar von Anfang an, um Sicherheitslücken und potenzielle Angriffsflächen zu reduzieren.
Was ist Secure by Default?
Secure by Default ist ein Teilbereich der Secure-by-Design-Prinzipien. Im Mittelpunkt steht dabei die Sicherstellung, dass jede Software oder Hardware auf ihre sicherste Konfiguration eingestellt ist, ohne dass eine Neukonfiguration durch Benutzer(innen) erforderlich ist. Produkte, die Secure by Default nutzen, aktivieren automatisch die wichtigsten Sicherheitskontrollen, die notwendig sind, um Unternehmen vor unbefugtem Zugriff durch bösartige Akteure zu schützen – so müssen die Benutzer(innen) keine weiteren Schritte unternehmen, um sicherzustellen, dass ein Produkt vor gängigen Methoden des Missbrauchs geschützt ist.
Zu den Strategien von Secure by Default gehören die Beseitigung von Standardpasswörtern und die Verpflichtung zu Multi-Faktor-Authentifizierung und Single Sign-On, wodurch gewährleistet wird, dass ausschließlich befugten Benutzer(inne)n der Zugriff auf Ressourcen gewährt wird. Teil dieses Ansatzes sind auch automatische Updates und Patches sowie sichere Konfigurationen für alle Konten und Geräte der Benutzer(innen).
Was ist Secure by Demand?
Secure by Demand kombiniert die Secure-by-Design-Prinzipien mit Budgetplanung und Beschaffungsverträgen, um diese als Verpflichtung für Anbieter(innen) und Auftragnehmer(innen) zu fördern. Der Secure-by-Demand-Guide von CISA bietet eine Reihe von Fragen und Ressourcen, die Softwarekund(inn)en, Käufer(innen) und Beschaffer(innen) nutzen können, um den Cybersicherheits-Ansatz eines potenziellen Anbieters besser zu verstehen. Dazu gehören auch Fragen zu den Authentifizierungsverfahren eines Anbieters, zur Sicherheit seiner Software-Lieferkette und zur Offenlegung und Meldung von Sicherheitslücken.
Indem Unternehmen die Anbieter dazu verpflichten, die Prinzipien und Protokolle von Secure by Design bei ihren Produkten und Dienstleistungen einzuhalten, können sie einen weiteren Beitrag dazu leisten, dass potenzielle Sicherheitslücken nicht in ihre Software-Lieferkette gelangen. Der Secure-by-Demand-Ansatz bietet den Anbietern auch weitere Anreize für eine kontinuierliche Verbesserung ihrer eigenen Cybersicherheitslage.
Aufbau einer Cybersicherheitsstrategie mit Secure by Design
Unternehmen messen Secure-by-Design-Prinzipien eine höhere Priorität bei. Zu den Maßnahmen gehören auch die Nutzung von effektiven DevSecOps-Praktiken, die Pflege einer Software-Stückliste (SBOM) und die Integration von KI zur Abwehr von Bedrohungen, die an jedem Punkt des Software-Entwicklungsprozesses eintreten könnten.
Die Einführung von DevSecOps-Praktiken
Einer der ersten Schritte zur Unterstützung einer Secure-by-Design-Position ist ein sicherer Software-Entwicklungsprozess: Entwicklung, Erstellung, Sicherung und Bereitstellung von Software unter Verwendung eines umfassenden DevSecOps-Ansatzes.
Heute nutzen viele Entwickler(innen) komplexe Toolsets für die Entwicklung neuer Programme. Eine aktuelle Umfrage von GitLab ergab, dass 62 % der Befragten sechs oder mehr Tools für die Entwicklung nutzen und 20 % sogar elf oder mehr – diese Ineffizienz erhöht die Risiken, da auf diese Weise die Anzahl potenzieller Sicherheitslücken zunimmt.
Entwickler(innen) sollten über eine einzige, einfach zu nutzende Bedienoberfläche auf alle Tools zugreifen können, die für DevSecOps-Workflows benötigt werden. Mit einer End-to-End-Lösung wie einer DevSecOps-Plattform können Unternehmen einen Secure-by-Design-Ansatz implementieren, ohne die Entwickler(innen) zusätzlich zu belasten.
Entwicklung und Pflege von SBOMs
Transparenz ist ein weiterer wichtiger Bestandteil der Secure-by-Design-Prinzipien. Unternehmen müssen verstehen, was in ihrer Software enthalten ist, besonders dann, wenn sie Komponenten aus mehreren Quellen enthalten kann.
SBOMs sind unerlässliche Werkzeuge für die Erreichung dieser Transparenz. Sie bieten eine detaillierte Bestandsaufnahme der Softwarekomponenten, darunter auch Details zur Version, Lizenz und Abhängigkeit, was ein größeres Bewusstsein für potenzielle Sicherheitslücken oder bösartigen Code ermöglicht.
Die Pflege dieses Inventars ermöglicht Unternehmen ein umfassendes Verständnis über potenzielle Sicherheitslücken und Risiken, die entstehen könnten, wenn Elemente aus Open-Source-Repositories und lizenzierten Drittanbieter-Komponenten entfernt werden. Eine DevSecOps-Plattform kann SBOMs automatisch generieren und aktualisieren, sie in bestehende Workflows integrieren und mit zugehörigen Sicherheitslücken verknüpfen.
Viele Unternehmen nutzen heute SBOMs. Allerdings müssen sie dynamisch, mit Sicherheitsscan-Tools verbunden und immer auf dem neusten Stand sein, um ihre volle Wirksamkeit zu erreichen. Wenn SBOMs in Scan-Tools und Dashboards integriert sind, können damit die mit einer Anwendung verbundenen Risiken identifiziert werden. Auch in Fällen, in denen sie nicht notwendig sind, können SBOMs die Compliance mit Sicherheitsvorschriften unterstützen, indem sie die Codesicherheit validieren.
Der Einsatz von KI in der Softwareentwicklung
Unternehmen beschäftigen sich mit verschiedenen Möglichkeiten der KI-Nutzung. Softwareentwicklungs-Workflows ermöglichen einen nützlichen Einstieg in die Technologie, die das Potenzial hat, Entwicklungsprozesse zu beschleunigen und die Sicherheit zu verbessern.
Unternehmen aller Branchen beginnen bereits, diese Anwendungen zu erkunden: 39 % der Befragten in der Umfrage von GitLab gaben an, dass sie KI bereits im Software-Entwicklungsprozess einsetzen.
Die Anwendung von KI über den gesamten Software-Entwicklungsprozess hinweg kann Unternehmen dabei helfen, Silos und Backlogs innerhalb von Entwicklungs-Workflows zu vermeiden, die durch die Nutzung von KI entstehen können. KI kann zentrale Funktionen ausführen, wie zum Beispiel:
- Codeerläuterung und Legacy-Code-Refactoring in speichersicheren Sprachen (nur in englischer Sprache)
- Grundursachenanalyse für DevSecOps-Pipelines, die Lösungen für komplexe Probleme beim Testen beschleunigt
- Behebung von Sicherheitslücken für einen besseren Abgleich von bekannten Sicherheitslücken und eine sorgfältigere Behebung (nur in englischer Sprache)
Je mehr Entscheidungsträger KI in ihre Arbeitsabläufe integrieren, desto wichtiger ist es, dem Datenschutz und der Datensicherheit Priorität einzuräumen. Ein entscheidender Aspekt der Anwendung eines Secure-by-Design-Ansatzes ist die Entwicklung einer KI-Strategie, die sensible oder vertrauliche Daten und geistige Eigentumsrechte schützt (nur in englischer Sprache).
Was die Zukunft bringt
Die Secure-by-Design-Prinzipien könnten bald der Standard-Ansatz für die Entwicklung eines vertrauenswürdigeren Software-Ökosystems werden. Die US-Regierung (nur in englischer Sprache) arbeitet momentan mit Softwareentwickler(inne)n an Rahmenkonzepten, die dem Privatsektor auf gesetzlicher Grundlage Anreize bieten, um Software, die auf Secure-by-Design-Prinzipien basieren, zu produzieren und zu veröffentlichen, was Unternehmen dazu veranlassen soll, mehr in sichere Technologien und Verfahren zu investieren.
Da die Sicherheit von Anfang an in die Softwareentwicklung integriert ist, die Transparenz durch effektive SBOMs gewährleistet wird und die KI den Entwicklungsprozess verbessert, können alle am Software-Entwicklungsprozess beteiligten Personen erfolgreich sein.
GitLab-Leitfaden für dynamische SBOMs: Ein integraler Bestandteil der modernen Softwareentwicklung
Erfahre, wie du mit einer Software-Stückliste (SBOM) die Sichtbarkeit von bisher unerkannten organisatorischen Risiken verbesserst.
Jetzt den Leitfaden lesen