C5 Field Guideinoffiziell

DEV · Beschaffung, Entwicklung und Änderung von Informationssystemen

DEV-01 Richtlinien für die Entwicklung/Beschaffung von Systemkomponenten

4 Unterkriterien: 3 Basis, 1 Zusatz

Geändert gegenüber C5:2020

Das BSI veröffentlicht die Änderungshistorie bisher nur auf Englisch, eine deutsche Fassung ist angekündigt.

Basiskriterium

Extended aspects to be addressed in the policies by quality in software development, deployment and operation, as well as secure coding standards.

Extended the requirements regarding security (and quality) in software development by the existence of a security by design principle.

Added requirement regarding the use of a design principle that minimses access to cloud service customer data.

Added requirement for the policies to include measures for the enforcement of specified standards and guidelines.

Bullet points are now sorted to ease discussions about specific list items.

Zusatzkriterium

No change.

Wortlaut in C5:2020

Basiskriterium

Policies and instructions with technical and organisational measures for the secure development of the cloud service are documented, communicated and provided in accordance with SP-01.

The policies and instructions contain guidelines for the entire life cycle of the cloud service and are based on recognised standards and methods with regard to the following aspects:

  • Security in Software Development (Requirements, Design, Implementation, Testing and Verification);
  • Security in software deployment (including continuous delivery); and
  • Security in operation (reaction to identified faults and vulnerabilities).

Zusatzkriterium

In procurement, products are preferred which have been certified according to the "Common Criteria for Information Technology Security Evaluation" (short: Common Criteria - CC) according Evaluation Assurance Level EAL 4. If non-certified products are to be procured for available certified products, a risk assessment is carried out in accordance with OIS-07.

Alle Änderungen gegenüber C5:2020

Basiskriterium

DEV-01.01B

Richtlinien und Verfahren mit technischen und organisatorischen Maßnahmen für die sichere Entwicklung von Systemkomponenten des Cloud-Dienstes sind gemäß SP-01 dokumentiert, kommuniziert und bereitgestellt.

Die Richtlinien und Verfahren enthalten Leitlinien für den gesamten Lebenszyklus des Cloud-Dienstes und orientieren sich hinsichtlich der folgenden Aspekte an:

  1. Sicherheit und Qualität in der Softwareentwicklung (Anforderungen, Design, Implementierung, Testen und Überprüfungen), einschließlich des Vorhandenseins eines Security-by-Design-Prinzips, das die Berücksichtigung von Anforderungen der Informationssicherheit in der Softwareentwicklungsphase durchsetzt;
  2. Sicherheit und Qualität bei der Softwarebereitstellung (einschließlich kontinuierlicher Bereitstellung (Continuous Delivery));
  3. Sicherheit und Qualität im Betrieb (Reaktion auf identifizierte Fehler und Schwachstellen); und
  4. Standards und Verfahren für sicheres Programmieren (Reduzierung des Einbringens von Schwachstellen in den Code).
Ergänzende Information

Gilt auch für 01AC

Die Software-Bereitstellung kann z. B. mit Continuous Delivery-Verfahren erfolgen.

Anerkannte Standards und Methoden für die sichere Entwicklung sind zum Beispiel:

  1. ISO/IEC 27034; und
  2. OWASP Secure Software Development Lifecycle (S-SDLC).

Die Minimierung des Zugriffs auf Cloud-Kundendaten während des Betriebs kann bei der Entwicklung der Cloud-Architektur durch die Befolgung robuster Sicherheitsmodelle, wie Zero Trust, unterstützt werden. Darüber hinaus sind Aspekte wie die Begrenzung von Datenschnittstellen, API-Aufrufen und Zugriffen sowie die Sicherstellung einer Ende-zu-Ende-Verschlüsselung vom Transport bis zur Speicherung relevante Gesichtspunkte.

Für die Qualitätssicherung in der Softwareentwicklung können die folgenden Prozesse als relevant betrachtet werden:

  1. Planung und Definition von Qualitätszielen: Definition von Qualitätsanforderungen auf Grundlage von Bedürfnissen der Cloud-Kunden und Zielen unter Berücksichtigung der Anforderungen des zu entwickelnden Cloud-Systems;
  2. Designphase: Durchführung von Design-Reviews und Inspektionen des Cloud-Dienstes, um sicherzustellen, dass das Design die Qualitätsanforderungen erfüllt;
  3. Entwicklungsphase: Einsatz von Code-Reviews und Pair Programming, um die Codequalität sicherzustellen. Einsatz statischer Analysewerkzeuge, um den Code auf potenzielle Fehler und Verstöße gegen Programmierstandards zu prüfen;
  4. Testphase: Durchführung (wo möglich automatisiert) verschiedener Testarten (z. B. Unit-Tests, Integrationstests, Systemtests, Abnahmetests), um die Funktionalität und Qualität der Software sicherzustellen;
  5. Integration und Continuous Integration (CI): Integration der verschiedenen Softwarekomponenten und kontinuierliche Überprüfung der Integrationen durch automatisierte Builds und Tests. Einsatz von CI/CD-Pipelines, um sicherzustellen, dass der Code regelmäßig integriert und getestet wird;
  6. Release und Bereitstellung: Vorbereitung und Umsetzung des Software-Releases gemäß definierten Qualitätsstandards; und
  7. Wartung und kontinuierliche Verbesserung: Überwachung der Software im Betrieb, um sicherzustellen, dass sie weiterhin die Qualitätsanforderungen erfüllt. Dies umfasst Aktivitäten nach dem Release wie Fehlerbehebungs- und Leistungsoptimierungsprozesse. Zusätzlich sollten Post-Mortem-Analysen durchgeführt werden, um aus Vorfällen zu lernen und Prozesse für zukünftige Releases zu optimieren.

Ein anerkannter Standard und eine Methode für Qualität in Entwicklungsprozessen ist zum Beispiel Google Site Reliability Engineering (SRE).

Der Anwendungsbereich der DEV-Kriterien und der darin enthaltenen Anforderungen umfasst nicht nur die Entwicklung von Softwareanwendungen, sondern auch Plattformen, virtuelle Infrastruktur und andere Systemkomponenten.

DEV-01.02B

Leitlinien für die sichere Entwicklung des Cloud-Dienstes definieren Grundsätze, um sicherzustellen, dass die Systemarchitektur und die vom Cloud-Anbieter innerhalb der Produktionsumgebung betriebene Software so gestaltet sind, dass der Zugriff des Cloud-Anbieters auf Cloud-Kundendaten soweit wie möglich minimiert wird.

DEV-01.03B

Der Cloud-Anbieter definiert Maßnahmen, um die festgelegten Standards und Leitlinien als Teil der Richtlinien und Verfahren für die sichere Entwicklung von Systemkomponenten des Cloud-Dienstes durchzusetzen.

Zusatzkriterium

DEV-01.01AC

Zusatz, erweiternd

Bei der Beschaffung werden Produkte bevorzugt, die gemäß den 'Common Criteria für die Sicherheitsevaluierung von Informationstechnik' (kurz: Common Criteria - CC) auf dem Evaluation Assurance Level EAL 4 zertifiziert wurden. Sollen nicht zertifizierte Produkte anstelle verfügbarer zertifizierter Produkte beschafft werden, wird eine Risikobeurteilung gemäß OIS-07 durchgeführt.

Ergänzende Information

Gilt auch für 01B

Die Software-Bereitstellung kann z. B. mit Continuous Delivery-Verfahren erfolgen.

Anerkannte Standards und Methoden für die sichere Entwicklung sind zum Beispiel:

  1. ISO/IEC 27034; und
  2. OWASP Secure Software Development Lifecycle (S-SDLC).

Die Minimierung des Zugriffs auf Cloud-Kundendaten während des Betriebs kann bei der Entwicklung der Cloud-Architektur durch die Befolgung robuster Sicherheitsmodelle, wie Zero Trust, unterstützt werden. Darüber hinaus sind Aspekte wie die Begrenzung von Datenschnittstellen, API-Aufrufen und Zugriffen sowie die Sicherstellung einer Ende-zu-Ende-Verschlüsselung vom Transport bis zur Speicherung relevante Gesichtspunkte.

Für die Qualitätssicherung in der Softwareentwicklung können die folgenden Prozesse als relevant betrachtet werden:

  1. Planung und Definition von Qualitätszielen: Definition von Qualitätsanforderungen auf Grundlage von Bedürfnissen der Cloud-Kunden und Zielen unter Berücksichtigung der Anforderungen des zu entwickelnden Cloud-Systems;
  2. Designphase: Durchführung von Design-Reviews und Inspektionen des Cloud-Dienstes, um sicherzustellen, dass das Design die Qualitätsanforderungen erfüllt;
  3. Entwicklungsphase: Einsatz von Code-Reviews und Pair Programming, um die Codequalität sicherzustellen. Einsatz statischer Analysewerkzeuge, um den Code auf potenzielle Fehler und Verstöße gegen Programmierstandards zu prüfen;
  4. Testphase: Durchführung (wo möglich automatisiert) verschiedener Testarten (z. B. Unit-Tests, Integrationstests, Systemtests, Abnahmetests), um die Funktionalität und Qualität der Software sicherzustellen;
  5. Integration und Continuous Integration (CI): Integration der verschiedenen Softwarekomponenten und kontinuierliche Überprüfung der Integrationen durch automatisierte Builds und Tests. Einsatz von CI/CD-Pipelines, um sicherzustellen, dass der Code regelmäßig integriert und getestet wird;
  6. Release und Bereitstellung: Vorbereitung und Umsetzung des Software-Releases gemäß definierten Qualitätsstandards; und
  7. Wartung und kontinuierliche Verbesserung: Überwachung der Software im Betrieb, um sicherzustellen, dass sie weiterhin die Qualitätsanforderungen erfüllt. Dies umfasst Aktivitäten nach dem Release wie Fehlerbehebungs- und Leistungsoptimierungsprozesse. Zusätzlich sollten Post-Mortem-Analysen durchgeführt werden, um aus Vorfällen zu lernen und Prozesse für zukünftige Releases zu optimieren.

Ein anerkannter Standard und eine Methode für Qualität in Entwicklungsprozessen ist zum Beispiel Google Site Reliability Engineering (SRE).

Der Anwendungsbereich der DEV-Kriterien und der darin enthaltenen Anforderungen umfasst nicht nur die Entwicklung von Softwareanwendungen, sondern auch Plattformen, virtuelle Infrastruktur und andere Systemkomponenten.

Verwandte Kriterien

Texte des BSI aus C5:2026 und der Änderungshistorie: © Bundesamt für Sicherheit in der Informationstechnik 2026, unverändert unter CC BY-ND 4.0. Inoffizielle Website ohne Verbindung zum BSI. Lizenz und Quellen