Den nx-Hack meistern

So identifizieren Sie bösartige NX-Versionen in Ihrer Codebasis
Kürzlich ist es wieder passiert: Einige böswillige Akteure haben einen ausgeklügelten Supply-Chain-Angriff gestartet. Das nx-team und mehrere Sicherheitsforscher (1, 2) haben bereits über diesen Vorfall berichtet. Hier finden Sie eine kurze Zusammenfassung:
Was ist passiert?
nx ist ein Paket mit etwas mehr als 23 Millionen Downloads im NPM-Paketregister. Es umfasst mehrere Plugins, die Entwickler zur Vereinfachung von Code-Verwaltungsaktivitäten verwenden, wie z. B. einige Hilfsfunktionen zum Schreiben von Dateien, zum Aktualisieren der Konfiguration (devkit), zum Verwalten des Knotens selbst (node) oder zum Linitieren von JavaScript- und Typescript-Code (lint).
Die Versionen um 20.9.0 und 21.5.0 bzw. 3.2.0 (key & enterprise-cloud) wurden böswillig verändert. Sie führten eine KI-basierte Suche durch, bei der die lokalen Dateistrukturen des Arbeitsbereichs des Entwicklers ausgewertet und alle Arten von Geheimnissen zusammengetragen wurden. Diese wurden dann unter Verwendung der Git-Anmeldedaten des Entwicklers in einem öffentlichen Git-Repository veröffentlicht.
Was kann man dagegen tun?
Der allererste Schritt wäre, festzustellen, ob jemand in Ihrem Unternehmen die betroffenen nx-Tools verwendet. Wenn Sie TrustSource verwenden, müssen Sie lediglich den „Component Impact Report” öffnen und nach den betroffenen Komponenten in den angegebenen Versionen suchen, z. B. @nx/devkit
in Version 21.5.0 oder 20.9.0. TrustSource listet Ihnen alle Projekte auf, in denen genau diese Komponentenversionen in der Liste der transitiven Abhängigkeiten enthalten sind.
Dies ist ein gutes Beispiel dafür, warum transitive Abhängigkeiten so wichtig sind. nx hat etwa 663 abhängige Projekte, oder anders ausgedrückt: Es gibt 663 andere Tools, die nx-Tools verwenden. Sie können sich vorstellen, wie schnell und weit sich die Verbreitung ausdehnen kann.
Wenn ein Projekt jedoch die betroffenen Versionen verwendet, müssen die Entwickler davon ausgehen, dass ihre gesamte CI/CD-Kette kompromittiert ist. Jeder Entwickler sollte überprüfen, ob er ein Repository mit „s1ngularity” im Namen hat, das in den letzten 2–3 Wochen veröffentlicht wurde. Alle Anmeldedaten, die Sie in diesem Repository finden, müssen als geleakt betrachtet werden.
Bevor Sie diese jedoch ersetzen, sollten Sie Ihren Arbeitsbereich bereinigen!
Weitere Informationen und Details zur Bereinigung Ihres Arbeitsbereichs finden Sie in diesem Artikel.
Was können wir daraus lernen?
Wir sind froh, dass wir dieses Tool nicht verwenden. Aber es gibt zwei interessante Erkenntnisse für uns:
a) Bislang haben wir uns sehr auf das Lieferartefakt konzentriert. Aus diesem Grund umfasst ts-scan beispielsweise standardmäßig keine Dev-Abhängigkeiten. Um Dev-Abhängigkeiten in Ihren Scan einzubeziehen, müssen Sie den Parameter npm:includeDevDependencies
hinzufügen. Wenn Sie noch nie einen Scan mit diesen Parametern durchgeführt haben, ist es sehr wahrscheinlich, dass der oben genannte TrustSource-Komponenten-Auswirkungsbericht keine Ergebnisse anzeigt, obwohl die Tools möglicherweise von Ihren Entwicklern verwendet werden.
Dies ist wichtig zu verstehen und der Grund, warum wir empfehlen, alle Entwickler in Ihrem Unternehmen über die Situation zu informieren. Wir empfehlen sogar, Scans mit dem oben genannten Parameter anzufordern und den Bericht in den nächsten Tagen und Wochen erneut auszuführen. Einige der 663 Tools, die nx verwenden, nutzen es möglicherweise im Hintergrund, z. B. nx-python codegen, reactionary, goodiebag usw., sodass es für Ihre Entwickler möglicherweise nicht offensichtlich ist.
Wir empfehlen außerdem, die Scans, die die Entwicklungsabhängigkeiten enthalten, in ein separates Projekt/Modul zu verschieben. Angenommen, Sie haben Projekt A mit den Modulen A1 und A2, dann könnten die Scans mit den Entwicklungsabhängigkeiten auf Projekt A-DEV mit den Modulen A1 und A2 abzielen. Auf diese Weise könnten Sie alle Entwicklungsabhängigkeiten verfolgen, sie aber aus den üblichen Compliance-Abläufen heraushalten. Projekte, die kein PROJECTNAME-DEV bereitstellen, können einfach durch Sortieren der Projektliste in aufsteigender Reihenfolge identifiziert werden.
b) Oft sind Entwicklungsumgebungen offen und weniger sicher. Oft hört man den Spruch „Wer sollte in Betracht ziehen, dies zu brechen, und was könnte er dadurch erreichen?“ Aber hier sehen Sie, welche Auswirkungen dies haben kann. Angefangen bei der Verschlüsselung bis hin zur Offenlegung von Informationen und Anmeldedaten könnte die Arbeit jedes Entwicklers direkt beeinträchtigt werden. Indirekt kann dies zur Einführung von bösartigem Code führen, die Produkte des Entwicklers gefährden, den Ruf des Unternehmens des Entwicklers schädigen und das Geschäft seiner Kunden beeinträchtigen.
Während dies vor fünf Jahren noch unwahrscheinlich gewesen wäre, muss es heute als Realität berücksichtigt werden. Sie sollten Ihre Entwicklungsumgebungen entsprechend einrichten (interne Paket-Proxys, geschützte und klar dokumentierte Builds (SBOMs), strenger Schutz von CI/CD-Anmeldedaten, API-Schlüsseln und Verwendung von Schlüsselspeichern usw.). Führen Sie von Anfang an das richtige Risikomanagement ein: Was könnte schiefgehen, wenn unser Code bösartig/fehlerhaft/gehackt ist? Wie könnte das passieren? Welche Auswirkungen hätte dies auf die Vertraulichkeit/Verfügbarkeit oder Integrität der Daten/Geschäfte/Geschäftstätigkeiten unserer Kunden?
Wenn Sie Unterstützung bei der Beantwortung dieser Fragen benötigen, wenden Sie sich gerne an uns. Unsere Muttergesellschaft ist darauf spezialisiert, ihre Kunden bei der Beantwortung solcher Fragen zu unterstützen und Strategien zur Sicherung von CI/CD und den Entwicklungsergebnissen zu entwickeln. Weitere Informationen finden Sie hier.
Cyber Resilience Act veröffentlicht
EU Cyber Resilience Act veröffentlicht
Heute wurde der EU Cyber Resilience Act (CRA) veröffentlicht. Damit sind seine Gültigkeit und der Zeitplan festgeschrieben, da sich aus dem Veröffentlichungsdatum die entsprechenden Daten für die Umsetzung ergeben: Beginn der tatsächlichen Gültigkeit – also der Zeitpunkt, ab dem jeder Software-Hersteller oder Vertreter eines solchen, der in der EU eine Software auf den Markt bringt, sich konform verhalten muss – ist der 11. Dezember 2027.
Genauer: Die Regelungen, insbesondere Art. 13 sowie Anhang I und II, gelten für alle Produkte mit digitalen Elementen, die ab diesem Termin in der EU auf den Markt kommen. Für Produkte, die vor diesem Termin auf den Markt kommen oder gebracht wurden, gelten die Anforderungen, sobald sie nach dem Termin wesentliche Änderungen erfahren, s. Art. 69 II CRA. Die Berichtserfordernisse aus Art. 14 sind jedoch für alle Produkte bereits ab dem 11. September 2026 zu bedienen, unabhängig vom Termin des Markteintritts (Art. 69 III CRA).
Von jetzt an zählt die Übergangsfrist, bis zu der sich Software-Anbieter mit den neuen Anforderungen auseinandersetzen, bzw. diese umsetzen müssen. Die Umsetzung ist stellenweise nicht trivial und erfordert einiges an organisationalem Wandel, bspw. die Aufnahme ggf. noch nicht vorhandener Risikoanalysen und -bewertungen in den Release-Prozess, die Deklaration von Unterstützungszeiträumen oder den Aufbau geeigneter Schwachstellen-Management-Prozesse.
– soweit nicht anders dargestellt, beziehen sich im Folgenden alle Verweise auf den Text des CRA –
Sie wollen klären, welche Anforderungen der CRA an Ihre Organisation stellt?
Sprechen Sie unverbindlich mit unserem Experten!
Für wen ist der Cyber Resilience Act von Bedeutung?
Der CRA betrifft grundsätzlich alle, die ein Produkt mit digitalen Elementen, also einer Software-Unterstützung bereitstellen. Allerdings schränkt er seine Gültigkeit auch gegenüber bereits anderweitig regulierten Gruppen ein. So werden Produkte, die sich nur im Automotive-Bereich, im Marine- oder Aviation-Umfeld bewegen oder der Medical Device Regulation unterliegen, ausgenommen. Es ist jedoch anzunehmen, dass eine Dual-Use-Möglichkeit, also eine Nutzbarkeit in anderen, nicht regulierten Bereichen, die Gültigkeit auch wieder herstellen wird.
Rollen der Akteure
Weiterhin ist die Rolle des Handelnden relevant für die Beurteilung der Gültigkeit. Konzeptuell versucht die Regulierung den Nutznießer der wirtschaftlichen Transaktion in die Verantwortung zu nehmen, der innerhalb der EU das Geschäft abbildet. Was bedeutet das?
Im einfachen Fall stellt ein europäischer Anbieter ein Produkt mit digitalen Elemente her, welches in den regulierten Bereich (s.o.) fällt. Somit steht der Anbieter direkt in der Pflicht, die CRA-Anforderungen für sein Produkt zu erfüllen, beispielsweise ein Hersteller für Stereoanlagen oder Musikboxen, die Musik-Streaming unterstützen oder eine Werkzeugmaschine, welche per Fernüberwachung gewartete werden kann.
Sitzt der Hersteller des Produktes außerhalb der EU, gehen diese Pflichten an seinen Stellvertreter über, den „Inverkehrbringer“. Dies kann ein Händler, ein Partner oder ein Implementierungspartner sein, eben der nächste wirtschaftliche Nutznießer. Interessant ist, dass dieser auch für die Einhaltung der Pflichten bei der Herstellung bürgen muss. Das bringt eine komplett neues Haftungsregime für bspw. Lizenzverkäufer amerikanischer Software mit sich!
Open Source
Sobald Open Source ins Spiel kommt, wird die Kette etwas unklarer. Aber der CRA kennt und berücksichtigt das Open Source Konzept. Der eigentliche Urheber einer Open Source Lösung bleibt von den Anforderungen verschont. Nimmt ein Akteur jedoch eine Open Source Lösung und nutzt sie wirtschaftlich, sei es durch Support-Verträge, treffen ihn die Regelungen analog zu denen eines Anbieters. Beispielsweise ist eine SUSE im Sinne des CRA verantwortlich für die von ihr bereitgestellte Distribution.
Ausnahmen gibt es nur für sogenannte Stewards. Diese haben weniger scharfe Anforderungen zu erfüllen. Diese Rolle wurde für die sogenannten Foundations (Eclipse, Cloud native, etc.) geschaffen, da sie zwar eine Form des Inverkehrbringers darstellen, jedoch keine mit einem herkömmlichen Software-Anbieter vergleichbaren, wirtschaftlichen Vorteile aus der Bereitstellung und Verbreitung ziehen. Um als Steward zu gelten, ist eine Anerkennung erforderlich.
Was sind die wesentlichen Neuerungen?
Der leitende Gedanke hinter dem CRA ist die Verbesserung der Sicherheitslage für die Konsumenten von Software. Da heutzutage fast alles von und mit Software gesteuert wird, bzw. ausgestattet ist, sind Cyber-Angriffe fast überall möglich. Jede Komponente, die durch eine Internetverbindung, ein WLan oder auch eine Near-Field-Kommunikation wie ZigBee oder Bluetooth zählt zur potentiellen Angriffsoberfläche – neu-deutsch: Attack Surface- und ist daher mit Bedacht zu nutzen, bzw. bereitzustellen.
Der Anbieter einer Software im europäischen Markt hat daher zukünftig folgende Anforderungen zu erfüllen:
- Bereitstellen eines Software Bill of Materials (SBOM), s. Anhang I
- Regelmäßiges Durchführen einer Risikobetrachtung der Sicherheitsrisiken sowie deren Aufnahme in die Dokumentation, s Art. 13, III und IV
- Erstellen einer Konformitätserklärung, s. Art. 13 XII, bzw. Art. 28 I sowie Anhang IV
- Bereitstellen einer CE-Kennzeichnung, s. Art. 12 XII, bzw. Art. 30 I
- Definition einer zu erwartenden Lebensdauer des Produktes und die Bereitstellung kostenloser Sicherheits-Updates innerhalb dieses Zeitraumes, s. Art. 13 VIII ff
- Einfordern umfangreicher Meldepflichten (gem. Art. 14)
- Mitteilung aktiv ausgenutzter Schwachstellen innerhalb von 24h an die European Network and Information Security Agency (ENISA) über eine noch zu schaffende Meldeplattform (vermutlich analog der bereits im Telekom-Umfeld bestehenden Lösung)
- Ergänzend hierzu eine Präzisierung der Einschätzung sowie der Maßnahmen innerhalb von 72h
- Information der Nutzer des Produktes sowie die von diesen zu ergreifenden Maßnahmen, s. Art. 14 VIII.
Wie kann TrustSource helfen?
- Einheitliche Plattform für Software Analyse, Compliance & Release-Management
- Integriertes Risiko-Management
- Automatisiertes Schwachstellen-Management
- Durchgängige, CRA-konforme Dokumentation
- CSAF-konforme Meldungen
- Einheitlicher Schwachstellen-Meldeprozess
- Umsetzungsunterstützung
Was sind die Auswirkungen der Nicht-Einhaltung?
Jedes Gesetz ist zunächst nur die Deklaration einer Verhaltensvorgabe. Was ist jedoch die Folge, wenn man sich nicht der Vorgabe gemäß verhält? Welche Risiken drohen den Anbietern?
Mit Veröffentlichung werden die Mitgliedsstaaten beauftragt, eine Stelle zu benennen, die für die Aufsicht in dem jeweiligen Land verantwortlich ist. In Deutschland wird dies nach aller Voraussicht das BSI sein. Dieses wiederum kann dann im Verdachtsfall entsprechende Prüfungen durchführen, bzw. beauftragen. Werden dabei Missstände festgestellt, führt dies in der Regel zur Aufforderung der Nachbesserung, kann jedoch auch entsprechend sanktioniert werden. Der CRA sieht folgende, mögliche Sanktionen vor:
- Bei Verstoß gegen grundlegende Sicherheitsanforderungen (Anhang I) bis zu 15 Mil. EUR oder, bei Unternehmen, bis zu 2,5% des weltweiten Jahresumsatzes im vorangegangenen Geschäftsjahr. (s. Art. 64 II)
- Bei Verstoß gegen Pflichten, die der CRA auferlegt, bis zu 10 Mil. EUR oder – für Unternehmen – bis zu 2% des ww Umsatzes (Vorjahr) (s. Art. 64 III)
- Für unrichtige, unvollständige oder irreführende Meldungen gegenüber den Behörden, bis zu 5 Mil. EUR, bzw. 1% des Jahresumsatzes für Unternehmen (s. Art. 64 IV)
Darüber hinaus besteht die Möglichkeit, bei nachhaltiger Nicht-Konformität die Verbreitung des Produktes einzuschränken, bzw. es vom Markt zu nehmen, s. bspw. Art. 58 II.
Sie sind sich nicht sicher, was das für Ihre Organisation bedeutet?
Sprechen Sie unverbindlich mit einem unserer Experten!
TrustSource zeigt OpenSSF Scorcards an

Hier klicken, um das Bild zu vergrößern
In unserer Komponentendatenbank, in der wir Meta- und Clearing-Informationen zu Komponenten sammeln, haben wir die Open Source Security Foundation (OpenSSF) Scorecard ergänzt. Diese erlaubt es, den Sicherheitsstatus von Open-Source-Projekten zu erkennen. Der Score, der vom OpenSSF-Projekt der Linux Foundation im Jahr 2020 eingeführt wurde und derzeit regelmäßig für etwa 1 Million Open-Source-Projekte auf Github ausgewertet wird, ist ein aggregierter Wert, der die vom Open-Source-Projekt getroffenen Sicherheitsmaßnahmen widerspiegelt. Er kann als Anhaltspunkt dafür verwendet werden, wie sehr Sie den Sicherheitsbemühungen eines bestimmten Projekts vertrauen können, ohne es weiter zu evaluieren.
Was sagt die Scorecard aus?
Der Wert oder die Punktzahl der Scorecard ist das Ergebnis von sechzehn Prüfungen, die die Best Practise der sicheren Softwareentwicklung widerspiegeln. Sie umfassen die Bereiche Entwicklung, Tests, Wartung und Schwachstellen, aber auch Code- und Build-Management. Auf der Grundlage eines umfassenden Satzes Best Practises durchsuchen die Tests das Code-Repository nach Belegen dafür, dass die Praktiken vom Projekt aktiv angewendet werden.
Derzeit sind 18 Tests verfügbar, von denen 16 über die API zugänglich sind. Eine ausführliche Dokumentation der Tests ist hier zu finden. Jeder Test wird mit einer Punktzahl zwischen 0 und 10 bewertet, wobei 10 die bestmögliche Punktzahl darstellt. Die Testergebnis und einem Risiko gewichtet ergeben zusammen eine Gesamtpunktzahl.
In einigen Fällen, kann es sein, dass Tests aufgrund von Projekt-Setups nicht anwendbar sind. Beispielsweise könnte es sein, dass ein Projekt keine Pakete über Github bereitstellt. Dadurch wird der Test auf Pakete nicht anwendbar sein, da die aktuelle Implementierung noch keinen Mechanismus zur Überprüfung anderer Paketmanager bietet.
Wenn Sie jedoch eine Entscheidung treffen wollen, ob Sie eine bestimmte Komponente einsetzen wollen oder nicht, hilft Ihnen die Durchführung eines Scorecard-Tests – oder ein Blick auf die Komponente in unserer Datenbank – dabei, einen Eindruck zu bekommen, welchen Aufwand Sie in die Absicherung der Komponente investieren müssen. Je höher die Punktzahl, desto mehr Vertrauen können Sie in die Komponente setzen.
Was sagt die Scorecard NICHT aus?
Bitte verstehen Sie eine hohe Punktzahl aber nicht als Garantie für eine sichere Komponente! Auch eine niedrige Punktzahl deutet nicht unmittelbar auf eine schwache oder fehlerhafte Komponente hin! Es wäre schlicht falsch, anzunehmen, dass eine niedrige Punktzahl ein Hinweis auf eine anfällige Komponente ist! Derzeit sind die Tests noch nicht umfänglich und prüfen nur auf ein Set ihnen bekannter Sicherheitswerkzeuge. Auch werden nur die im Repository sichtbaren Informationen geprüft. Bleiben diese auf einem Entwickler- oder CI-System und finden nicht den Weg in das Git-Repository, tauchen sie auch nicht im Testergebnis auf!
Die Punktzahl gibt an, welche Schritte das Projekt unternimmt, um sicherzustellen, dass der von ihm bereitgestellte Code bewährten Praktiken folgt und daher mit hoher Wahrscheinlichkeit frei von Fehlern und Schwachstellen ist. Aber es ist eben keine Garantie! Wenn alles gut läuft, alle Tests 10 zurückgeben, kann es immer noch vorkommen, dass eine Schwachstelle in einer vorgelagerten Komponente auftritt, die für das Projekt selbst nicht einfach oder gar nicht zu beheben bzw. zu umgehen ist.
Verwenden Sie die Punktzahl als Indikator. Aber machen Sie die Entscheidung, ob Sie eine Komponente verwenden wollen oder nicht, primär von ihrer Funktionalität abhängig und nicht von der Punktzahl. Sie werden – vor allem in diesen frühen Tagen, in denen der Score noch nicht weit verbreitet ist – noch viele gute Projekte mit geringen Scores finden.
Was kommt als Nächstes?
Wir empfehlen, dies Scorecards als Indikator für eine Eignungsbeurteilung hinzuzuziehen, da sie einen Hinweis darauf geben, wie stark Sie sich auf Ihre vorgelagerten Komponenten verlassen können. Zudem lässt sich über eine historische Betrachtung der Veränderung des Scores eine Tendenz erkennen, die eine interesante Aussage über das Projekt und seine Einstellung zu den Best Practises erkennen lässt. Wir werden Anfang kommenden Jahres genügend Werte gesammelt haben, um diese „Tendenz“ auswerten zu können.
Da TrustSource alle KomponentenIhrer Lösung kennt, wird es nun auch möglich sein, mehr aus den einzelnen Scores in Bezug auf das Projekt zu machen. Ein einfacher Durchschnittswert wäre sinnlos. Aufgrund der Menge der Komponenten wäre ein Durchschnittswert irgendwo bei einer bedeutungslosen 5 zu erwarten. Aber wir experimentieren derzeit mit Quantilen oder Top-10- und Low-10-Durchschnitten sowie dem Verhältnis von Nicht-bewerteten Komponenten zu bewerteten Komponenten.
Außerdem werden wir einen Service anbieten, mit dem man seine eigenen Komponenten oder nicht geprüfte Open Source Repositories überprüfen kann, indem man – wie beim DeepScan einfach eine URL angibt oder auch die Scorecard auf nicht-Github-Projekte überträgt. Wenn wir erfolgreich sind, werden wir unsere Entwicklungen in OpenSSF einbringen.
Sie wollen mehr über SBOMs oder OpenSSF Coding Best Practises erfahren? Kontaktieren Sie uns!
TrustSource @ IIOT SBOM in Antwerpes
Wir sehen uns am 10. November auf der IIOT SBOM !
Vielen Dank an @LSEC – Leaders In Security – für die Einladung, über #SBOM #DevSecOps und die kommenden Herausforderungen aus Perspektive der IT Security zu sprechen. @Jan wird in seinem Vortrag „Getting the SBOM right, and then?“ auf die Herausforderungen rund um die Erstellung von SBOMs eingehen und wie man diese auf der Automatisierungsseite angehen kann. Des Weiteren wird er sich mit der Lebenszyklus-Perspektive befassen, d.h. was nach der Erstellung von SBOMs kommt. Dabei wird er auch über die Arbeit der #LinuxFoundation #OpenChain Automation-Arbeitsgruppe berichten und zu einer neuen Art von SBOM-Benutzergruppe einladen, die Best Practices für die Definition von SBOMs umreißt.
Wir freuen uns auf tolle Gespräche und darauf, noch mehr über die Herausforderungen zu erfahren, mit denen Sie bei der Erstellung von SBOMs in der IIOT-Welt konfrontiert sind.
Bis übermorgen in Antwerpen!
Nachlese
(22.11.22) Vielen Dank noch einmal für die vielen interessanten Vorträge und animierenden Gespräche! Es hat Spaß gemacht, mit den Teilnehmern und Referenten sich auszutauschen und Ideen und Anforderungen zu diskutieren. Die Vorträge sind auf der Seite von IIOT SBOM als Videos verfügbar. Jan’s Vortrag haben wir hier verlinkt.
Der erste Teil beschäftigt sich mit SBOMs, was gehört rein, wie kann man sie ablegen, Formate, etc.,Der zweite teil beschäftigt sich mit den Themen Automatisierung und was lässt sich mit den generierten Informationen anfangen. Die Zweiteilung des Vortrages ergab sich aus der Agenda, welche auch die Koordination mit Vortragenden aus anderen Zeitzonen erforderte.
TrustSource und SCANOSS wollen künftig enger zusammenarbeiten
TrustSource und SCANOSS wollen zukünftig enger zusammenarbeiten
Im Vorfeld des Open Source Summit Europe 2022 haben SCANOSS – Anbieter der vermutlich größten Datenbank für Open Source Informationen – und TrustSource – die Automationslösung für Prozesse im Bereich Open Chain Security und Compliance – vereinbart, künftig enger zusammenzuarbeiten.
Im Zuge der Arbeiten im Kontext der OpenChain Tooling Workgroup wurde das Open Source Compliance Capability Modell entwickelt. Dieses Modell beschreibt die unterschiedlichen Kompetenzen und Fähigkeiten, die für eine umfängliche Abwicklung von Open Source Compliance erforderlich sind. „SCANOSS hat das >Snippet-Scanning< mit der ersten Open-Source-Lösung standardisiert, die von Open-Source-Communities wie OSS Review Toolkit aufgenommen wurde.“, berichtet Jan Thielscher, der die Arbeitsgruppe derzeit koordiniert. „Das ist genau der Bereich, aus dem wir (TrustSource) uns bisher herausgehalten haben. Zusammen mit der unglaublichen Informationsbasis, die SCANOSS für die Identifikation von Snippets aufgebaut hat, können wir durch eine engere Zusammenarbeit den letzten weißen Flecken auf unserer Capability Map schließen.“
Derzeit ist es bereits möglich, Scan-Ergebnisse, die mit Hilfe der SCANOSS-Workbench oder dem SCANOSS-CLI erzeugt werden, in TrustSource zu importieren und somit in den von TrustSource verwalteten Compliance-Prozess zu überführen. SCANOSS-Nutzer erhalten somit die Möglichkeit, Ergebnisse nicht nur in Form eines Audit-Ergebnisses vorliegen zu haben, sondern in den regulären Kontext eines unternehmensweiten Portfolio-Managements einzubinden. Die TrustSource-Benutzer profitieren zunächst von der Möglichkeit, die zusätzlichen Erkenntnisse von SCANOSS zu nutzen. In Kürze werden auch die erweiterten Erkenntnisse wie Export-Controls, etc., die SCANOSS bereitstellen kann, in TrustSource zu verwalten bzw. deren Einhaltung zu monitoren sein.
„Das macht die Sache dann rund.“, meint Jan Thielscher. „Natürlich stellen unzureichende Metadaten, nicht deklarierte Lizenzen oder unklare Commiter-Situationen auch weiterhin Herausforderungen für die OSPOs dar, aber der Großteil der Aufgaben lässt sich durch die hohe Integration und die vielen Berichte, die aufgrund der hohen Integration einfach möglich sind, schon weitgehend automatisiert abbilden. Und da liegt der immense Effizienzgewinn!“
Treffen Sie uns auf dem Open Source Summit in Dublin @ B.19
Lernen Sie mehr über das Open Chain Tooling Workgroup Capability Modell, TrustSource und wie viel Prozess-Automation auch in dem Bereich Open Source Compliance bereits möglich ist.
Openchain - Umfrage zu Open Source
Openchain - Umfrage zur Opensource Nutzung
Die Openchain Workgroup der Linux Foundation, die in den letzten Jahren vor allem den Standard ISO 5230 – Open Source Compliance geprägt hat, hat ein Umfrage über den Einsatz und Umgang von Open Source in Unternehmen erarbeitet. Als internationale Erhebung soll sie helfen die Arbeit der Organisation zu fokussieren und den teilnehmenden Unternehmen eine Möglichkeit geben, sich selbst in Bezug auf Open Source zu reflektieren. Die Ergebnisse der Umfrage werden unter Creative Commons zero (CC-0) lizenzesiert und lassen sich somit frei verwenden.
Als Unterstützer der Openchain Initiative rufen wir unsere Kunden und Partner auf, die Umfrage zu unterstützen und damit den Pool an Informationen anzureichern. Die Umfrage erfordert ca. 10 Minuten Zeit und kann unter diesem Link erreicht werden.

Free Known Vulnerability Search - TrustSource Vulnerability Lake bietet vielfältige Unterstützung bei der Suche nach Bekannten Schwachstellen
TrustSource Vulnerability Lake Search
Sowohl Software-Entwickler als auch Security-Researcher kennen die Herausforderung, Bekannte Schwachstelle Open Source Komponenten zuzuordnen. Die CPE (Common Platform Enumeration) codes stellen zwar ein standardisiertes Schema für die Bezeichnung von Schwachstellen zur Verfügung, jedoch wurde die Nomenklatur ursprünglich für Hersteller-Software entwickelt und passt nur leidlich auf den Kontext von Open Source Komponenten, denen oft eine eindeutige „Organisation“ fehlt.
Das führt zu Problemen in der Auffindbarkeit und bei der korrekten Zuordnung. Einmal gewinnt der Projektname, z.Bsp. „kubernetes:kubernetes“ ein anderes Mal ist es die organisierende Foundation, bspw.: „apache:http„. Manchmal gehen die Projekte auch im Laufe der Zeit durch unterschiedliche Organisationen, wie das weitverbreitete Spring-Framework. Dann finden sich Informationen unter „pivotal_software:spring_framework“ und ab 2019 unter „vmware:spring_framework„, was aufgrund der Nebenläufigkeit von Versionen noch auf Jahre viel Irritationen mit sich bringen wird.
Und, um noch eines drauf zu setzen, dann gibt es ja noch die Herausforderungen mit den Projektnamen selbst: „npmjs“ oder lieber „npm_js“ oder doch „npmjs:npm„?
Die TrustSource Vulnerability Lake-Search dreht den Spieß um: Sie stellt Suchoptionen zur Verfügung, um in den vorhandenen CPEs zu suchen und somit die zu beachtenden Keys zu finden.

Mit Hilfe von TrustSource Vulnerability Alert kann ich meine kritischen Komponenten im Schlaf überwachen!!
TrustSource Vulnerability Alert
Mit Hilfe des TrustSource Vulnerability Alerts bleiben Sie stets auf dem Laufenden. Die mit der oben beschriebenen Suche gefundenen Bezeichner lassen sich abonnieren. Registrierte Benutzer – die Registrierung ist kostenfrei und einfach bspw. per GitHub-Account möglich – können die Begriffe auf eine Liste setzen. Diese Listen werden alle paar Stunden mit den Updates aus aktualisierten Quellen, wie der NVD abgeglichen. Finden sich Updates oder neue Einträge erhält der Abonnent eine eMail mit einem Link auf die neuen Informationen.
TrustSource Kunden erhalten diese Funktionalität automatisch auf alle in den Software Bill of Materials (SBOMs) ihrer Lösung(en) angewendet. Die TrustSource-Scanner ermitteln die SBOMs während Ihre Anwendung gebaut wird und kennen daher alle Abhängigkeiten, auch die transitiven. Zudem können Sie in TrustSource selbst auch Infrastrukturkomponenten dem Projekt hinzufügen, und somit die gefährdeten Libraries, die nicht im eigenen Quellcode vorkommen, identifizieren.
Die Kommunikation der Vulnerability Alerts kann entweder per Mail an die entsprechenden Projektteilnehmer oder in die systemeigene Inbox erfolgen. Letzteres ist insbesondere erforderlich, um Fehlschläge aufgrund von Abwesenheiten oder anderen Filtern asynchroner Kommunikation zu entgehen.
Um die einfache Integration in umstehende Systeme zu ermöglichen, stehen alle diese Funktionen auch via API zur Verfügung. Die Nutzung des API ist jedoch kostenpflichtig und nicht Bestandteil der freien Pläne.
Um eine schnelle Einordnung der Kritikalität zu ermöglichen, zeigt TrustSource stets neben der Beschreibung der CVE bzw., deren Zuordnung zu den OS-Komponenten auch die Informationen zu dem Angriffsvektor sowie die Kritikalität in CVSS-Werten (Common Vulnerability Scoring System, Details s. hier ).
TrustSource Life Cycle Alarm
Aus diesen Fähigkeiten ergibt sich noch eine weitere Leistung, die TrustSource seinen Kunden zu Verfügung stellt: Den Life-Cycle-Alarm.
Die Verpflichtung eines Software-Herstellers seine Kunden über Bekannte Schwachstellen zu informieren, endet nicht mit der Auslieferung der Software, sie beginnt zumeist erst dann. Das gilt für Gerätehersteller noch mehr. Je weniger Möglichkeit besteht, den Kunden für zeitnahe Updates zu , motivieren, desto komplexer wird die Situation.
Tauchen im Laufe der Zeit _nach_ der Veröffentlichung der Software, Bekannte Schwachstellen in den verwendeten Komponenten auf, ist es im Sinne ordnungsgemäßer Informationsversorgung an dem Hersteller, seine Kunden zu informieren. Diese Verpflichtung findet bereits im Bereich der Medizinprodukte (MDR) Anwendung und wird sich sicherlich auch auf weitere Bereiche ausdehnen.
TrustSource erlaubt es, SBOMs, die zu einem Release freigegeben wurden, festzuhalten und somit einer fortlaufenden Kontrolle zu unterziehen. JederPatch oder Release-Stand, der auf einem Kundenprodukt erzeugt wurde, lässt sich nachhalten und entsprechend alarmieren.
Es klingt interessant aber Sie sind sich nicht sicher, ob es Ihrem Bedarf entspricht?
Oder wollen Sie sich lieber erst einmal selbst durch einen kostenfreien Test Einblick verschaffen?
Neue Features in TrustSource v2.5
Wir haben wieder einiges in die Feature-Kiste gelegt!
Freuen Sie sich mit uns und probieren Sie es am bensten gleich aus!
New Features:
- Neue Rolle Portfolio Manager und Portfolio Overview eingeführt:
Auf Kundenwunsch wurde eine Rolle Portfoli-Manager eingeführt, der stets den Blick auf die Gesamtheit der Themen haben kann. Hierzu wurde eine explizite Portfolio-Übersicht gebaut, die mit es ermöglicht innerhalb von nur drei Klicks aus der Portfolio-Overview kritische Komponenten zu identifizieren. - Neue Suchmöglichkeiten für Vulnerability Lake:
Es ist nun auch möglich nach CPEs oder Komponentenbezeichnern zu suchen und bei Eignung diese zu abonnieren. Somit lassen sich unterschiedliche Bezeichnungen oder Quellen einfach verfolgen. - Möglichkeit, Vulnerability-Beschreibungen direkt anzeigen zu lassen (Get Details):
Erlaubt es, die Beschreibung einer Vulnerability direkt anzuzeigen, um nicht den Screen wechseln zu müssen. Somit lassen sich Entscheidungen direkt im Kontext treffen.
- Vulnerabilities für Infrastruktur-Komponenten:
Mit Hilfe des Vulnerability-Lakes ist es nun auch besser möglich, die Bekannten Schwachstellen für die Infrastruktur-Komponenten besser aufzulösen und in der Anwendung detailliert darzustellen. - Automatisches Beheben der Legal Todos mit Hilfe des Notice File
Es gibt nun die Möglichkeit den Notice-File auch ohne Approval als vorab-Version zu erzeugen. Alle Obligations, die mit dem Notice-File erschlagen werden, setzt TrustSource nun automatisch auf „erledigt“ und verweist auf den Notice File. Das erspart sehr viel Pflegearbeit. - Interoperabilität: Suppport für alle CycloneDX SBOMs
Wir haben CycloneDX aufgenommen. Sowohl in den Core für manuelle Uploads von Modulen oder 3rd-Party-Software, als auch via API. Somit ist nun neben SPDX auch CycloneDX vollumfänglich über beide Kanäle möglich, was die Integration mit fast allen Scannern ermöglicht. In dem Zuge wurde auch ein Import API für SPDX (v2.2+) erzeugt. - Darstellung der Abhängigkeiten mit Hilfe eines SunBurst-Diagrams für mehr Übersichtlichkeit.
- CMake-Integration: Mit Hilfe dieses neuen Scanners lassen sich auch C-Make gebaute Projekte problemlos scannen und and die Plattform für die weitere Analyse übertragen.
Improvements:
- Attack-Vector-Repräsentation wurde entzerrt und leserlicher gestaltet
- Seit der Hinzunahme zusätzlicher Quellen war der Deep-Link zur NVD unpraktikabel. wir haben daher eine interne Repräsentation bereitgestellt. Diese wird sich in den kommenden Wochen auch noch ein paar Mal leicht verändern.
- Ladezeiten größerer Scans optimiert und verkürzt
- Vulnerability Alert Mails enthalten nun passende Deep-Links, damit die neuen Informationen direkt angesprungen werden können.
- Interne Optimierungen im Bereich des Vulnerability-Assignments.
- Änderungen in den Rahmenbedingungen wirken nicht mehr nur noch auf die Analyse und die Ergebnisse, auch der Notice File wird nun angepasst.
- Neues Intro für neue Benutzer.
- Verbesserungen für die Verwaltung von Komponenten (Component Manager)
- ts-node-client updated, um mit neueren Node-Versionen arbeiten zu können.
- Tagging Capabilities verbessert, insbesondere für Komponenten, Projekte und Module, um ein das Filtern zu vereinfachen.
- Verbesserte Sortierungsmöglichkeiten in der CompDB
- Chronik der Legal Settings hinzugefügt. Somit lassen sich auch ältere Zustände wieder zurückholen.
Freies Open Source Compliance Basics Training bereitgestellt
Seit Jahren tauchen im Kontext Open Source immer wieder die gleichen Fragen auf:
- Darf ich open source in geschäftlich genutzten Anwendungen verwenden?
- Welche Folgen hat die Verwendung von open source?
- Ist die GPL eine „giftige“ Lizenz?
- Was bedeuten für uns in Europa die amerikanischen Lizenzen?
Die Irritation trifft vor allem Entwickler, die sich in vorderster Front mit der Nutzung bzw. dem Einsatz von Open Source konfrontiert sehen. Nun sind Informatiker selten auch gleichzeitig Juristen und auch wenn sich Jura und Informatik in vielen Aspekten ähneln, so ist es doch nicht trivial, eine Lizenz ohne juristische Vorkenntnisse zu interpretieren.
Um diese Lücke überwinden zu helfen, haben wir ein grundlegendes Open Source Compliance Basics – Training zur Verfügung gestellt. Das Training führt in die Thematik ein, schildert kurz die Hintergründe und gibt Einblick in die wesentlich Gestaltungsaspekte von Lizenzen. In dem frei verfügbaren, self-paced Online-Trainingskurs wurden mehr als 4 Stunden Videomaterial, Präsentationen und Quizzes verarbeitet.
Der Teilnehmer erhält in dem Kurs einen Überblick über:
- Die Motivation und Hintergründe von Open Source Compliance,
- Die Herausforderungen, die Open Source Compliance zu mehr als dem einfachen Erstellen einer Liste machen,
- Lösungskonzepte, die helfen, eine Standard-konforme Open Source Compliance in einem Unternehmen zu verankern,
Die in englischer Sprache gehaltenen Vorträge sind in kleine, kurze Häppchen eingeteilt, sodass sie sich auch zwischendurch gut verarbeiten lassen.
Den direkten Zugang finden Sie hier auf der Seite unter Trainings.
Alles neu macht der Mai - TrustSource 2.0 kommt!
TrustSource 2.0 kommt mit neuem Look & Feel
Wir freuen uns, am Freitag, den 7.5.2021 die Version 2.0 in Betrieb zu nehmen. Da es über die letzten Updates etwas voll geworden ist, in der Liste der Features, haben wir den Navigationsbereich in Gruppen zusammengefasst. Diese sind nach den Phasen der Wertschöpfung organisiert, was hilft, sich schneller zu orientieren: Analysen im Bereich Inbound, Schwachstellen-Informationen und Projektmanagement-Aufgaben im Internal-Bereich oder Notice-File-Generierung im Outbound-Bereich.
Mehr Fokus bei der Arbeit
Weiterhin helfen wir unseren Kunden sich zu fokussieren. Gerade in größeren Organisationen mit umfangreichem Projektportfolio wird es wichtig, sich schnell und gezielt zu bewegen. Mit Hilfe der „Pin to Dashboard„-Funktion lassen sich Projekte direkt auf das Dashboard heften, sodass ein direkter Einstieg mit wenigen Klicks möglich wird. Ebenfalls in dieses Segment fällt die Möglichkeit, Projekte und Module mit Tags zu versehen. Tabellenansichten lassen sich mit Hilfe von Tags filtern, was schnell für mehr Sichtbarkeit sorgt. In späteren Ausbaustufen, werden die Tags auch in den Berichten und anderen Übersichten nutzbar sein.
Neues Import-API für CycloneDX SBOMs
Auch haben wir den Entwicklungen am Markt Rechnung getragen und den sich immer schneller etablierenden Standard CycloneDX aufgenommen. Es ist nun möglich, CycloneDX-Dokumente zu importieren. Somit sind auch alle CycloneDX-kompatiblen Scanner für die Arbeit mit TrustSource nutzbar. Die Dokumente müssen nur an das neue API /import/scan/cyclonedx übertragen werden.
Vulnerability Lake
Um unseren Benutzern die tägliche Arbeit zu vereinfachen, haben wir eine vollständige Replik der NVD-Daten aufgenommen. Alle zwei Stunden aktualisiert, können Sie nun die CVEs durchsuchen, nach Organisation, Produkt und Versionen (CPEs) recherchieren – aus TrustSource heraus oder über unsere API. Es ist unser Ziel, den Datenpool sukzessive zu vergrößern und dieses wertvolle Wissen auf Knopfdruck verfügbar zu machen. Derzeit arbeiten wir an einem Matching der CPEs auf pURLs, um die Identifikation von CVEs zu betroffenen Komponenten zu optimieren.
Verbesserungen
Darüber hinaus werden wir auch eine Reihe von Verbesserungen einführen
- Es wird nun möglich sein, zwischen dem Scan – den Rohdaten, die von einem beliebigen Scanner oder dem CycloneDX SBOM-Upload in TrustSource eingebracht werden – und der analysierten Abhängigkeitsansicht hin und her zu springen. Dies wird helfen, die Abhängigkeitshierarchie besser zu verstehen.
- Wir haben die Geschwindigkeit beim Laden des Analyse-Auswahlelementes verbessert. Täglich gescannte, aber lange Zeit geänderte Projekte neigten dazu, eine erhebliche starke Latenz zu erzeugen.
- DeepLinks aus der DeepScan-Ergebnisansicht in das Repository werden nun auch für spezifische branches unterstützt
- Die Light-Integration via eMail zu on-premises Jira-Systemen wird nun unterstützt. Die Option lässt sich projektspezifisch konfigurieren.
Fehlerbehebungen
Die folgenden Fixes werden zur Verfügung gestellt:
- Das Löschen von Lizenz-Alias in einer nicht sequentiellen Reihenfolge erzeugt keine leeren Aliase mehr
- Verhinderung eines internen Fehlers, wenn Modul- oder Komponentennamen bei Scans ungewöhnlich lang waren
- Die Datumsdarstellung in Safari funktionierte manchmal nicht korrekt
- Einige Anpassungen an den Komponenten-Crawlern und der Speicherung der Ergebnisse reduzieren die Menge der fehlerhaften Daten