Skip to content

Open CoDE: Fundament für einen sicheren Softwareentwicklungszyklus (SDLC) in der Öffentlichen Verwaltung

Vorwort

Dieses Papier ist in Zusammenarbeit zwischen dem ZenDiS und BSI entstanden, um aufzuzeigen, wie mithilfe der Plattform Open CoDE das Sicherheitsniveau für Softwareprodukte in der Öffentlichen Verwaltung erhöht und harmonisiert werden kann.

Dieses Papier befindet sich im Status "Entwicklung". Alle Inhalte stehen zur Diskussion und sind noch nicht von allen Parteien verabschiedet.

Initiative & Hintergrund

Moderne Softwareentwicklung setzt stark auf die Wiederverwendung bestehender Komponenten. Diese werden über komplexe Lieferketten bezogen: von einzelnen Bibliotheken für die Software-Entwicklung bis hin zu ganzen Laufzeitumgebungen innerhalb kurzlebiger Container.

Eine vollständige Prüfung solcher Softwarelieferketten ist angesichts ihrer Komplexität für einzelne Anbieter kaum realisierbar, egal ob es um Open-Source- oder proprietäre Software geht. Vorfälle wie Log4j haben gezeigt, wie unvorbereitet viele auf schwerwiegende Sicherheitslücken sind. Der xz-Vorfall hat zudem verdeutlicht, dass Angriffe auf Softwarelieferketten ein neues Niveau erreicht haben. Solche Angriffe systematisch zu detektieren und schnell zu reagieren scheint zunächst unmöglich.

Es gibt jedoch gute Standards innerhalb der IT, die punktuell Risiken abwehren können. Beispielsweise stärkt ISO 18974 die Meldekette bei Sicherheitslücken zwischen Softwareherstellern und -nutzern. Common Criteria for Information Technology Security Evaluation kann den Schutz der Software gegenüber Fehlern und Angriffen gewährleisten und plattformspezifische Siegel wie "Verified" oder "Official Image" können das Vertrauen in die Urheber einer Software erhöhen.

Diese Lösungen sind für Software der Öffentlichen Verwaltung derzeit kaum oder nur in Einzelfällen erreichbar und für hochmoderne Software wie Container oft nicht verfügbar. Angesichts der Regulierung wie dem EU Cyber Resilience Act müssen schnell adäquate Lösungen gefunden werden.

Einen Lösungsansatz bietet die vom ZenDiS verantwortete Plattform Open CoDE. Hierüber können Akteure der Öffentlichen Verwaltung Open-Source-Software veröffentlichen und nachnutzen. Open CoDE ist auch der ideale Ort, um Details der einzelnen Open-Source-Projekte offen zu diskutieren, Tests und Anforderungen transparent zu klären. Damit kann über Open CoDE eine allgemeine Softwarelieferkette aufgebaut werden, die von der gesamten Öffentlichen Verwaltung genutzt werden kann und Kernkriterien wie Sicherheit, Hochverfügbarkeit und Souveränität vereint.

Zitat

„Wir dürfen die Softwarelieferkette nicht länger aus der Hand geben. Es ist Teil der Daseinsvorsorge, das Vertrauensniveau von offener Software zu erhöhen.“ (Andreas Reckert-Lodde, Geschäftsführer des ZenDiS)

Grundlegend hierzu ist die Basissoftware im Bereich Open-Source. Nur wenn die zugrundeliegende Software sicher ist und die Prozesse, Kriterien und Technik transparent sind, haben wir eine Chance, die von der Öffentlichen Verwaltung genutzte Software zu verbessern und Angriffe auf die Softwarelieferkette zu erschweren. Proprietäre Angebote können die Prüfungsaufwände verwendeter Open-Source-Software durch den Bezug von Basiskomponenten aus einer verlässlichen Quelle reduzieren.

In Zusammenarbeit mit dem BSI wollen wir einen Ort schaffen, der nicht nur die Prüfungsaufwände reduziert und die Softwarelieferkettensorgfalt standardisiert, sondern die Sicherheit von Softwarekomponenten nachvollziehbar macht.

Vision und Zielvorstellung

Open CoDE versammelt zentrale und sichere Software und Container-Images aus dem Kontext der Öffentlichen Verwaltung. Das fördert die Nachnutzung und Vereinheitlichung von Basissoftware und erhöht die Sorgfalt in der Softwarelieferkette.

Das Vorhaben unterstützt sowohl Open-Source- als auch proprietäre Komponenten, indem ein vertrauenswürdiger, transparenter und allgemein zugänglicher Bezugsort geschaffen wird, auf dem auch proprietäre Software aufbauen kann.

SDLC

Vergleichbare Infrastrukturangebote sind oft fragmentiert, intransparent und international oder US-amerikanisch geprägt, wie Dockerhub. Dockerhub führt nur in Einzelfällen Qualitätssicherungen durch. Alt-Distributionen wie Debian oder openSUSE haben höhere Qualitätskriterien, fokussieren sich jedoch auf Betriebssysteme, die weniger Einfluss auf kurzlebige Entwicklungsvorhaben haben.

Standardisierungsbemühungen der Lieferkettennachweise existieren zwar (Cosign, in-toto, SLSA), sind aber nicht aus einer Quelle der öffentlichen Verwaltung zugreifbar und können sich daher schwer als Standard etablieren.

Eine deutsche Lösung würde neben der Souveränität auch die inländischen Lagebilder stärken. Das BSI und andere Akteure könnten Sicherheitslücken entlang der Lieferkette bis zum Endnutzer nachvollziehen. So könnten gezielt Warnungen ausgesprochen, Notfalleingriffe vorgenommen und Empfehlungen zur Stärkung der Softwareinfrastruktur gegeben werden. Zudem könnten Entwickler leichter zur Behebung von Schwachstellen koordiniert werden.

SDLC

Open CoDE kann einen Ort schaffen, um Prüfungsstandards zu aggregieren und die Nachnutzung dieser Standards zu vereinheitlichen. Das leistet wichtige Grundlagenarbeit für aktuelle und zukünftige IT-Großprojekte des Bundes, wie Cloud-Arbeitsplätze oder souveräne Betriebssysteme. Bestimmte IT-Grundschutzanforderungen könnten zentral und automatisiert umgesetzt werden.

Zitat

„In etwa 20 Prozent der Meldungen aus dem KRITIS-Sektor Gesundheit spielten Angriffe eine Rolle. Dabei ist ein zunehmender Fokus auf Dienstleister der Betreiber als Einfallstor zu beobachten.“ (BSI-Lagebericht 2023)

Prüfvorgehen - sowohl in Detail als auch Prüftiefe eines Softwareartefaktes - sind im Status quo entsprechend der Kernstrategie des IT-Grundschutz nicht einheitlich geregelt, sondern gelten fallbezogen für den jeweiligen Anwender. Folglich kann Open CoDE keine allgemeingültige Prüfung vornehmen oder ausweisen. Durch Transparenz der Prüfungsanforderungen, welche idealerweise in qualitativen Stufen gruppiert sind, kann dennoch der Nutzende einzelne Prüfungsaspekte nachnutzen – liegen diese in Summe über dem eigenen Schutzbedarf möglicherweise sogar ganzheitlich. Darüber hinaus ist wahrscheinlich, dass durch die zentrale Lösung ein allgemein höherer Standard bei den Artefakten erreicht wird.

Dieses Vorgehen steht nicht im Widerspruch zu den Bemühungen, durch Herkunftsnachweise auch die dezentrale Realisierung von Software vertrauenswürdiger zu machen. Externe Qualitätskriterien müssen auf Open CoDE reflektiert und berücksichtigt werden. Gleichzeitig wird ein Ort geschaffen, der das Erreichen dieser Güte für die Öffentliche Verwaltung erleichtert.

Zentrale Bezugsort von Softwareartefakten der Öffentlichen Verwaltung

Derzeit werden über Open CoDE vor allem Fachanwendungen veröffentlicht. Die Distribution von Basissoftware (z.B. Python Basisimage) steht nicht im Vordergrund, sollte sich aber ändern. Eine Übersicht für IT-Fachkräfte könnte die Standardisierung und Nachnutzung von Komponenten stärken.

Das BSI und andere Akteure könnten Open CoDE und die veröffentlichten Inhalte überwachen und prüfen, da sie als direkter Bezugsort für Basissoftware dienen. Sicherheitslücken könnten leichter verfolgt und Warnungen direkt an die Betroffenen gegeben werden.

Die zentralisierte Erhebung von Basiskomponenten bietet eine wertvolle Ressource für den Sovereign Tech Fund, um kritische Software zu identifizieren und gezielt zu investieren.

  • Geringere Abhängigkeit von kostenpflichtigen Angeboten internationaler Unternehmen (z.B. Dockerhub)
  • Bessere Sichtbarkeit zur Nachnutzung einzelner Komponenten (z.B. gehärtete Basisimages)
  • Zentralisierung von Prüftätigkeiten
  • Etablierung eines „sicheren Bezugsorts“ für Software nach BSI-IT-Grundschutz
  • Transparenz der verfügbaren und nachnutzbaren Containerimages
  • Lagebild des Komponenteneinsatzes durch Zugriff auf zentralen Distributionsort
  • Lagebild zur Gefährdungslage einzelner Nachnutzer durch Verknüpfung von Sicherheitsrisiken in Containerimages und Softwarekomponenten
  • Zentrale Informationen über Basistechnologien, die in der Öffentlichen Verwaltung genutzt werden und als kritisch eingestuft werden können

Sichere Builds von Softwareartefakten der Öffentlichen Verwaltung

Derzeit bietet Open CoDE eine Build-Umgebung ohne gesonderte höhere Sicherheit an. Durch den Fokus auf Fachanwendungen laufen wesentliche Teile der auf Open CoDE realisierten Software nicht oder nur teilweise durch bereitgestellte Qualitätsmechanismen.

Open CoDE müsste einen Build-Service mit höherer Sicherheit anbieten, um für eine gehärtete Distribution verbindlich zu sein. Ein solcher Build-Service könnte tiefen Einblick in die Software geben und den Schutz vor nachrichtendienstlichen Angriffen signifikant erhöhen.

  • Einfacher Zugang zu einer hochsicheren Build-Umgebung
  • Reduzierte Aufwände bei der Softwareschaffung durch Compliance-Unterstützung (z.B.: SBOM und Lieferkettennachweise, EU-CRA, CVE-Reports, Codeanalysen)
  • Höheres Vertrauen in OSS durch sicherer gebaute Komponenten
  • Ein zentraler Ort zur Erhöhung der Sicherheit und Build-Qualität bundesweit
  • Penetrationstests und Qualitätsprüfung auf Open CoDE ersetzen viele verteilte Quellen
  • Vollständiger Lieferketteneinblick
  • Überwachung und Auditierung des Build-Prozesses möglich (z.B. Monitoring von verdächtigen Compilermeldungen)

Zeitstrahl kurz-, mittel- und langfristiger Potenziale

  • Open CoDE schafft informative Infrastruktur, z.B. eine Übersicht der technischen Komponenten in dedizierten Repositories.
  • Das BSI oder andere Akteure prüfen, inwieweit sich Open CoDE als Distributionsort eignet, z.B. für das Monitoring des nationalen IT-Lagezentrums und Penetrationstests der Plattform.
  • Open CoDE führt Signierhilfen für Container und Artefakte ein.
  • Open CoDE führt Technologien (z.B. Cosign/in-toto) für vertrauenswürdige Signaturen der Öffentlichen Verwaltung ein, um die Authentizität dezentral prüfen zu können.

Ab diesem Punkt ist die grundlegende Infrastruktur geschaffen, um erste kleinere Lieferketten einfachen Sicherheitsprüfungen zu unterziehen.

  • Open CoDE schafft einen zentralen, redundanten und IT-Grundschutz-sicheren Distributionsort für technische Komponenten (u.a. Containerimages).
  • Open CoDE forciert Qualitätskriterien, um den Distributionsort zu nutzen.
  • Open CoDE schafft erhöhte Qualität im Build-Prozess durch Beauftragung hochsicherer Dienstleister in Deutschland.
  • Open CoDE schafft organisatorische Infrastruktur für IT-Grundschutz-konforme Prüfungen von Softwarekomponenten für einfache Fälle.
  • Open CoDE baut Compliance-Unterstützung der Komponenten gemäß EU-CRA-Anforderungen aus.

Ab diesem Punkt können Umfelder mittlerer Sicherheitsniveaus und Umfelder mit erhöhten Verfügbarkeitsanforderungen (z.B. Fachverfahren) Software risikoarm von Open CoDE beziehen.

  • Open CoDE hebt die Infrastrukturverfügbarkeit auf V-Fall-Niveau an.
  • Open CoDE schafft organisatorische Infrastruktur, um IT-Sicherheitsprüfungen der Komponenten innerhalb NdB und für KRITIS zu erleichtern.

Ab diesem Punkt können Hochsicherheitsumfelder (z.B. NdB) und Umfelder mit hohen Verfügbarkeitsanforderungen (z.B. Arbeitsplatzsoftware der gesamten Öffentlichen Verwaltung) Software risikofrei von Open CoDE beziehen.