In der neuen NIS2-Richtlinie der EU werden sichere Systembeschaffung und -entwicklung zusammengefasst und als eine von 10 wichtigen Sicherheitsmaßnahmen genannt, für die Organisationen in ihrem Geltungsbereich angemessene und dokumentierte Sicherheitsmaßnahmen ergreifen müssen.
Sichere Entwicklung und sichere Systembeschaffung sind für Ihre Informationssicherheit unerlässlich, denn sie sind die Tore zu Ihren Daten. Sie sind eine der Verteidigungslinien gegen Cybersicherheitsbedrohungen. Mit guten Maßnahmen sowohl bei der Entwicklung als auch bei der Beschaffung können Sie sicherstellen, dass die von Ihnen genutzten Systeme aktuellen und neuen Bedrohungen standhalten können.
- Sichere Entwicklung: Ziel ist es, die Sicherheit in neuen Systemen von Anfang an zu gewährleisten. Bei der sicheren Entwicklung werden Sicherheitskontrollen in jeden Schritt des Entwicklungsprozesses integriert, um potenzielle Verstöße zu verhindern und Schwachstellen zu minimieren.
- Sichere Systembeschaffung: Ziel ist es, Systeme auf eine kontrollierte Art und Weise zu erwerben, die die Einhaltung ausreichend hoher Sicherheitsstandards gewährleistet. Dadurch wird gewährleistet, dass die erworbenen Systeme nicht schwächer sind als Ihre anderen Verteidigungslinien - ein Sicherheitsprogramm ist nur so solide wie sein verwundbarster Punkt.
In diesem Blogbeitrag werden praxiserprobte Maßnahmen aus der ISO 27001-Norm vorgestellt, mit denen Sie Ihre Praktiken zur sicheren Entwicklung und Systembeschaffung verbessern können. Mit diesen Maßnahmen schützen Unternehmen nicht nur ihre sensiblen Daten, sondern schaffen auch Vertrauen bei Interessengruppen und Kunden und stellen sicher, dass der Ruf Ihres Unternehmens dabei intakt bleibt. Denken Sie daran, dass es viel kosteneffizienter ist, die Sicherheit von Anfang an einzubauen, als sich mit den teuren Folgen einer Datenschutzverletzung auseinanderzusetzen.

Sichere Entwicklung 101
Sichere Systementwicklung ist ein rigoroser Ansatz für den Entwurf, die Entwicklung und die Implementierung von Software- und Hardwarelösungen unter Berücksichtigung der Sicherheit. Dazu gehört, dass Überlegungen zur Informationssicherheit und zum Datenschutz bereits in den ersten Entwicklungsphasen berücksichtigt werden, wobei wesentliche Grundsätze wie Datenvertraulichkeit, -integrität und -verfügbarkeit berücksichtigt werden. Grundlegend für die sichere Systementwicklung ist die Erkenntnis, dass Sicherheit kein nachträglicher Gedanke sein sollte - sie ist ein integraler Bestandteil der Softwareentwicklung, der von Anfang an bis zur Bereitstellung vorausgesehen, konzipiert und ausgeführt werden muss.
Sichere Entwicklungsvorteile
- Schutz vor Schwachstellen: Ein sicherer Entwicklungsprozess schützt Ihre Systeme vor Sicherheitsschwachstellen und verringert das Risiko potenzieller Cyberangriffe. Die in der Planungs- und Implementierungsphase getroffenen Schutzmaßnahmen gewährleisten, dass Ihr System gegen böswillige Aktivitäten geschützt ist. Dadurch ist die Wahrscheinlichkeit geringer, dass Unbefugte Zugang zu Ihren wertvollen Daten erhalten.
- Kundenvertrauen aufbauen: Die Implementierung eines sicheren Entwicklungsprozesses ist eine Voraussetzung für Informationssicherheitszertifizierungen (wie ISO 27001) und schafft Vertrauen bei Ihren Kunden und Interessengruppen. Sie haben die Gewissheit, dass ihre Daten in Ihren Händen sicher sind. Dieses Vertrauen kann den Ruf Ihrer Marke massiv stärken und Ihnen neue Geschäftsmöglichkeiten eröffnen.
- Erfüllen Sie die gesetzlichen Anforderungen: Durch die Einhaltung z. B. der ISO 27001-Norm können Sie eine gemeinsame Sprache für die Kommunikation mit Kunden verwenden. Dadurch können Sie nicht nur Strafen und rechtliche Probleme vermeiden, sondern auch die Aufmerksamkeit potenzieller Investoren und Kunden auf sich ziehen, die in der Einhaltung der Norm ein Zeichen für Ihr Engagement für ein Höchstmaß an Datensicherheit sehen.
- Schaffen Sie Verantwortung für die Entwickler: Die Entwickler spielen eine wichtige Rolle bei der Gewährleistung der Informationssicherheit. Durch klare Richtlinien für ihre Programmierarbeit, die überwacht und kontinuierlich verbessert werden, vermitteln Sie, dass ihr Beitrag eine Schlüsselrolle in Ihrem Informationssicherheitsprogramm spielt.
Sicherer Systemerwerb 101
Sichere Systembeschaffung bezeichnet den Prozess der Beschaffung eines neuen Software- oder Hardwaresystems, bei dem die Einhaltung von Sicherheitsstandards gewährleistet wird. Dieser Prozess umfasst die Festlegung der Sicherheitsvoraussetzungen für neue Systeme (die sich natürlich bei kritischen oder niedrig priorisierten Systemen erheblich unterscheiden können), die Auswahl eines geeigneten Anbieters, die Sicherstellung, dass die Sicherheitsmerkmale des Systems den Anforderungen Ihres Unternehmens entsprechen, und schließlich die sichere Einbindung des Systems in die bestehende Infrastruktur.
Vorteile eines sicheren Systemerwerbs
- Risikominderung: Eine sichere Systembeschaffung trägt dazu bei, die mit Sicherheitsverletzungen, Datenlecks und Cyberangriffen verbundenen Risiken zu mindern, indem sichergestellt wird, dass die zu beschaffenden Systeme die festgelegten Sicherheitsstandards und -anforderungen erfüllen.
- Geschäftskontinuität: Durch die Minimierung von Sicherheitsschwachstellen in erworbenen Systemen können Unternehmen ihre Widerstandsfähigkeit gegenüber Cyber-Bedrohungen verbessern und so die Wahrscheinlichkeit von Unterbrechungen des Geschäftsbetriebs verringern und die Kontinuität gewährleisten.
- Kosteneinsparungen: Das proaktive Eingehen auf Sicherheitsbedenken während der Akquisitionsphase kann dazu beitragen, kostspielige Sicherheitsverletzungen, Vorfälle und Abhilfemaßnahmen zu vermeiden, die durch unzureichende Sicherheitsmaßnahmen nach der Implementierung entstehen können.
- Rationalisierte Abläufe: Durch die Implementierung von Sicherheitskontrollen in der Beschaffungsphase wird sichergestellt, dass die Sicherheitsanforderungen von Anfang an in die Systemarchitektur integriert werden, so dass später keine kostspieligen Nachrüstungen oder Neukonfigurationen erforderlich sind.
ISO 27001: Beispiele für bewährte Praktiken zur sicheren Entwicklung und Systembeschaffung
Die ISO-Norm 27001 befasst sich mit der sicheren Entwicklung und dem Erwerb von Systemen anhand mehrerer Kontrollmechanismen, wobei Aspekte wie die Festlegung klarer Sicherheitsanforderungen für erstellte oder erworbene Anwendungen, sichere Kodierungsregeln, die Schaffung einer robusten Entwicklungs- und Testumgebung und die kontrollierte Umsetzung von Änderungen hervorgehoben werden.
Oftmals entscheiden sich Organisationen auch dafür, sich auf detailliertere, allgemein anerkannte Materialien zu beziehen, die sich auf Schwachstellen und deren Vermeidung durch sichere Kodierung beziehen (z. B. OWASP Top Ten).
8.25: Allgemeine Regeln für die sichere Entwicklung festlegen
Diese Kontrolle macht deutlich, dass Regeln für eine sichere Entwicklung dokumentiert werden müssen, dass sie den gesamten Entwicklungszyklus abdecken und dass sie rigoros durchgesetzt werden müssen. Vielleicht möchten Sie auch Kontrollpunkte in Ihre Entwicklungsprojekte aufnehmen, an denen eine Überprüfung aus der Sicht der Informationssicherheit vorgenommen wird.
Wichtige Aspekte der Regeln für eine sichere Entwicklung - z. B. getrennte Umgebungen, Festlegung von Sicherheitsanforderungen für Produkte, Testverfahren und sichere Quellcodeverwaltung - werden in den nachfolgenden Kontrollen ausführlicher behandelt.
8.26: Sichere Anwendungen beschaffen und erstellen
Diese Kontrolle unterscheidet nicht zwischen erworbenen oder selbst erstellten Anwendungen - sie besagt, dass Sie Sicherheitsanforderungen für beide definieren müssen, um sicherzustellen, dass alle erworbenen oder selbst erstellten Anwendungen sicher genug sind.
Die Anforderungen an die Anwendungssicherheit profitieren von einer Prioritätsklassifizierung. Für Systeme mit "niedriger" Priorität könnten einige grundlegende Überprüfungen der Rentabilität des Softwareanbieters und der Kommunikation ausreichen, aber für Systeme mit "hoher" Priorität möchten Sie vielleicht detaillierte Anforderungen an die Multi-Faktor-Authentifizierung, die Verschlüsselung, die Integrations- und Protokollierungsfunktionen, die Datenlokalisierung und -wiederherstellung oder sogar die erforderlichen Zertifizierungen (z. B. ISO 27001) für den Dienstanbieter haben.
Es gibt Sicherheitsanforderungen für Anwendungen, die sicherstellen, dass alle notwendigen Sicherheitsanforderungen erkannt und während des Entwicklungs- oder Beschaffungsprozesses berücksichtigt werden.
8.28: Definieren Sie Regeln für sichere Codierung für Ihre Entwickler
Letztlich ist Software ein Haufen Code, in den sich Schwachstellen einschleichen können. Auch sonst ist es wichtig, klaren Code mit gemeinsamen Prinzipien zu schaffen - das verbessert z.B. die Qualität und macht es einfacher, neue Leute in die Projekte einzuführen.
Die Regeln für die sichere Kodierung sollen gewährleisten, dass die Software auf sichere Weise geschrieben wird, um die Wahrscheinlichkeit von Schwachstellen, die die Informationssicherheit beeinträchtigen könnten, zu verringern. Diese Verfahren sollten so erweitert werden, dass sie auch Softwarekomponenten von Drittanbietern und Open-Source-Software umfassen. Es ist von entscheidender Bedeutung, dass das Team für die sicheren Kodierungsverfahren verantwortlich ist, da es über die sich schnell entwickelnde Bedrohungslandschaft auf dem Laufenden bleiben muss.
Sichere Kodierungsregeln könnten z. B. folgende Aspekte umfassen:
- allgemeine Anweisungen zur sicheren Programmierung (ordnungsgemäße Verwendung ausgewählter Frameworks/Tools, Prüfung neuer externer Bibliotheken, Vermeidung allgemeiner Schwachstellen (OWASP), akzeptable Software für die Programmierung)
- Regeln für die Überprüfung und Veröffentlichung von Code (Agenda für die Codeüberprüfung, kontrollierter Prozess für die Veröffentlichung von Aktualisierungen)
- Definition von "erledigt" (Entfernen von unnötigem Code, Aktualisierung der Dokumentation, Sicherstellung, dass die automatischen Prüfungen in Ordnung sind)
- Testrichtlinien (wie man Funktionalität testet, wie man Testdaten verwendet, Beschränkung der Verwendung von Kundendaten)
8.29: Prozesse zum Testen der Sicherheit Ihrer Anwendungen festlegen
Bei dieser Kontrolle geht es um die Planung von Verfahren zum Testen der Sicherheit von Anwendungen, nicht um allgemeine Funktionalität oder Benutzerfreundlichkeit. Während des Entwicklungsprozesses ist es wichtig, Verfahren für Sicherheitstests festzulegen und zu befolgen. Diese Verfahren stellen sicher, dass Anwendungen oder Code, die in der Produktionsumgebung eingesetzt werden, gründlich getestet werden, um zu bestätigen, dass sie die Anforderungen an die Informationssicherheit erfüllen. Die Tests sollten sich an den festgelegten Anforderungen orientieren und sowohl funktionale als auch nicht-funktionale Aspekte abdecken.
Testrichtlinien für das eigene Personal sind wichtig, aber Unternehmen verstärken diesen Aspekt oft, indem sieautomatisierte Tools verwenden, um den neu geschriebenen Code zu überprüfen (z. B. Scannen auf Schwachstellen, Erkennung von Geheimnissen, Scannen von Abhängigkeiten), die dynamischeren Sicherheitstests automatisieren (z. B. DAST) oder mit speziellen Penetrationstestspezialisten zusammenarbeiten, um zu versuchen, in ihre Umgebungen einzudringen und Daten zu kompromittieren.
8.31: Trennung von Entwicklungs-, Test- und Produktionsumgebung
Entwicklungs-, Test- und Produktionsumgebungen müssen getrennt und gesichert werden, um die Produktionsumgebung und die Daten während der Entwicklungs- und Testaktivitäten vor möglichen Kompromissen zu schützen. Der erforderliche Grad der Trennung zwischen diesen Umgebungen sollte ermittelt und durchgesetzt werden, um zu verhindern, dass Probleme die Produktionssysteme beeinträchtigen.
8.32: Änderungen kontrolliert umsetzen
Diese Kontrolle macht deutlich, dass Änderungen an Anwendungen den Regeln des Änderungsmanagements folgen sollten. Kleinere alltägliche Codeänderungen können normal sein und einem einfacheren Prozess folgen, größere Änderungen an wichtigen Anwendungskomponenten (z. B. Authentifizierung, Protokollierung, Benutzerverwaltung) können vor ihrer Veröffentlichung umfassenderen Prüfungen und Risikoanalysen unterzogen werden.
Unabhängig davon, ob die Änderungskontrollverfahren leicht oder schwer sind, müssen sie dokumentiert und durchgesetzt werden, um die Vertraulichkeit, Integrität und Verfügbarkeit von Informationen systemübergreifend zu gewährleisten.
8.8: Über ein Verfahren zum Umgang mit technischen Schwachstellen verfügen
Kontrolle 8.8 ist eine umfassende Kontrolle über das Schwachstellenmanagement. Wenn eine technische Schwachstelle durch eine beliebige Quelle (z. B. Sicherheitstesttools, manuelle Codeüberprüfung oder externe Nachrichtenquellen) festgestellt wird, muss die Organisation wissen, was zu tun ist.
Der Prozess kann die Einstufung der Schwachstelle, die Analyse der Schwachstelle und die Entscheidung über die Ablehnung oder Behandlung von Maßnahmen mit einer dokumentierten Begründung umfassen. Einige Schwachstellen können äußerst dringend sein und erfordern sofortige Behandlungsmaßnahmen, während bei anderen die Maßnahmen zusammengefasst und für später geplant werden können.
Schlussfolgerung
Die Bedeutung einer sicheren Entwicklung und Systembeschaffung kann gar nicht hoch genug eingeschätzt werden. Alle Arten von Unternehmen sind völlig abhängig von ihren Daten und den Anwendungen, die zur Speicherung und Verarbeitung dieser Daten verwendet werden. Dies zeigt sich immer wieder, z. B. wenn der Betrieb in physischen Fabriken durch einen Ransomware-Angriff lahmgelegt wird. Schützen Sie Ihre Anwendungen, um Ihr Unternehmen zu schützen!
Die bewährten Praktiken von ISO 27001 helfen Ihnen bei der Formulierung Ihrer sicheren Entwicklungs- und Systemakquisitionsverfahren - und bei der Erfüllung der NIS2-Anforderungen. Von der Festlegung allgemeiner Regeln über die Erstellung sicherer Anwendungen bis hin zum Management technischer Schwachstellen - all dies ermöglicht es Ihrer Organisation, ein sicheres System zu schaffen, das auf robusten und geprüften Verfahren beruht.
Wie alle Aspekte der Informationssicherheit bedürfen auch sichere Entwicklungs- und Beschaffungspraktiken einer kontinuierlichen Verbesserung. Beginnen Sie mit etwas und verpflichten Sie sich und die Mitarbeiter Ihrer Entwicklungsteams zur Verbesserung - und Sie sind auf dem richtigen Weg.