Open Source Compliance? Aber bitte effizienter!

22.09.2023

Dr. Andreas Kotulla

Open Source

Dr. Andreas Kotulla

aufsteigender_Pfeil

Open Source Software (OSS) ist überall und ist für die moderne Software-Entwicklung unverzichtbar geworden. Ein typisches Softwareprodukt enthält heute oft mehr als 90% Open Source. Die Nutzung von OSS ist in den letzten Jahren aus vielfältigen Gründen immer weiter sprunghaft angestiegen.

Alarmiert durch spektakuläre Cyberangriffe auf die Software-Lieferkette wurden in den USA Vorgaben wie die „Executive Order on Improving the Nation’s Cybersecurity“ erstellt und in der EU entsteht gerade der europäischen Cyber Resilience Act (CRA)“. Für eine rechtssichere Verwendung müssen daher alle Open Source Bestandteile bekannt und benannt sein. In der Regel wird die gesamte Lieferkette durch eine SBOM dargestellt (Software Bill of Materials).

Die Erstellung einer kompletten SBOM mit korrekter Bezeichnung von Bestandteilen und Urheber¬rech¬ten kann jedoch sehr aufwändig und teuer sein, besonders wenn Software aus verschiedenen Projekten wiederverwendet wird, die unter unterschiedlichen Lizenzen veröffentlicht wurden. Für eine komplette Analyse eines auf Android aufbauenden Produktes kommen beispielsweise schnell sechsstellige EUR-Summen für die Prüfung zustande. Gerade für mittelständische Unternehmen sind diese Kosten oft ungeplant und in der Regel eine immense Heraus¬forderung.

Alle Marktakteure sind sich daher weitgehend einig, dass die Effizienz in der Erstellung einer rechtssicheren SBOM gesteigert werden muss. Hierbei werden verschiedene Ansätze verfolgt:

Mit dem ISO-Standard 5230 der OpenChain wurde eine wichtige Standardisierung des Compliance-Prozesses definiert, um ein gemeinsames Verständnis und Vokabular zu definieren. Weiterhin wurden mit SPDX und CycloneDX zwei Standards zur Beschreibung der Compliance-relevanten Daten ins Leben gerufen, so dass ein Austausch der Daten innerhalb der Supply-Chain effizienter bewerkstelligt werden kann.

Da die meisten Scanner heute noch mit Texterkennung oder kuratierten Datenbanken arbeiten, gibt es mittlerweile Forschungsprojekte welche die KI dazu nutzen wollen automatisiert die Effizienz in der SBOM-Erstellung zu erhöhen. Erste Tests lassen aber noch auf einen gehörigen Entwicklungs- und Forschungsaufwand schließen.

Eine andere Idee ist es, schon kuratierte Lizenz-informationen bereitzustellen. Reposi¬tories wie github stellen diese mittlerweile von Anfang an bereit, und täglich gibt es neue Werkzeuge, welche Abhängig¬keiten nachverfolgen und die Lizenz-zusammen¬stellung erleichtern möchten. Die Zuverlässigkeit der bereitgestellten Informationen entspricht jedoch nicht immer den rechtlichen An-forder¬ungen. Projekte wie OSSelot oder Clearly-Defined erlauben die Wiederverwertung von SBOMs schon auditierter Open-Source-Pakte, und bieten nach eigener Darstellung besser kuratierte Daten. Die Daten werden teils automatisch ge¬sam-melt, und jeder kann auf einfache Weise fehlende Informationen beisteuern.

Die Vorgehensweise von SW360 und SBOM Insight erlauben den Aufbau eines eigenen Kataloges auditierter Komponenten entlang der Supply Chain, und machen auch die Wiederverwendung vertrauenswürdiger (eigener) Daten zwischen Projekten möglich.

Um die Erkennung zu erleichtern, verfolgen einige Projekte den Ansatz den Code selbst umzustrukturieren und mit weiteren Informationen zu versehen. REUSESOFTWARE wurde ins Leben gerufen, um Empfehlungen zu geben wie voll-ständi¬ge Lizenzinformationen automatisch direkt im Code verankert erkennbar gemacht werden. Mehr als 1.000 Projekte wurden schon kuratiert und aufgenommen. Auch die Linux-Clean-up-Aktivität aus dem Jahre 2017 verfolgte einen ähnlichen Ansatz, um alle Dateien des Kernels mit einer eindeutigen SPDX-Kennung zu versehen.

Letztendlich sehen wir verstärkte Anstrengungen aller Betroffenen, die Lizenzerkennung schon direkt in den Entwicklungsprozess in eine CI/CD Pipeline einzubinden und kontinuierlich die SBOM auf dem aktuellen Stand zu halten.

Es bleibt festzuhalten, dass momentan mehrere Ansätze verfolgt werden, um die Erstellung einer SBOM wirtschaftlich effizienter abzubilden, aber die Frage nach der Haftung bei Fehlern in den Listen wird nicht abschließend geklärt.

Bitsea identifiziert versteckte Risiken in Softwaresystemen und unterstützt bei der Wahrung von IT-Compliance. Wir beraten Kunden bezüglich nachhaltiger Nutzung und Management von OSS. Zu unseren Kunden zählen namhafte Konzerne aus den Branchen Automobil, Telekommunikation, Logistik und der Luft- und Raumfahrt. Bitsea ist Partner des OpenChain Projektes.