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?


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

Sie wollen mehr über SBOMs oder OpenSSF Coding Best Practises erfahren? Kontaktieren Sie uns!


TrustSource mit Vulnerability Lake (beta)

Vulnerability Lake ergänzt das TrustSource Angebot

Aufgrund vieler Anfragen haben wir uns entschlossen, unsere interne Schwachstellen-DB für unsere Kunden zu öffnen. Ab der Version 2.0 wird TrustSource seine interne „Known Vulnerability“-Datenbank für die Suche zur Verfügung stellen. Es werden mehrere Suchmöglichkeiten zur Verfügung stehen:

  • TrustSource Vulnerability-Lake öffentliches Web-UI
    eine öffentliche, kostenlose Suche über unsere Schwachstellendaten für die manuelle Nutzung. Zudem wird es möglich sein, sich für bis zu fünf Produkte zu registrieren, um Updates direkt in den eigenen Posteingang zu erhalten.
  • TrustSource Vulnerability-Lake Web-UI
    eine in die TrustSource-Lösung integrierte Such-UI für unsere registrierten Benutzer
  • TrustSource Vulnerability-Lake API
    eine API, die die Such- und Abgleichsfunktionen auch für die programmatische Nutzung bereitstellt. Eine bestimmte Anzahl von Transaktionen pro Monat wird kostenlos sein. Die API wird auch einige statistische Informationen zur besseren Interpretation der Schwachstellendaten bereitstellen.
    Die öffentliche Web-Benutzeroberfläche sowie die in TrustSource integrierte Web-Benutzeroberfläche werden einen einfachen und einen Experten-Suchmodus bieten. Im einfachen Modus können Sie eine Produktinformation angeben und die Suche nach Organisation oder Version erweitern. In der professionellen Version kann dies in einem einzigen String kodiert werden, z.B. ’some-org:my-product:3.2.1′ Die Ergebnisse enthalten die typischen Informationen wie CVSS Base Score, CVE-ID, Beschreibung und weiterführende Links.

Die Daten werden alle zwei Stunden aktualisiert. Im ersten Anlauf wird die Lösung nur NVD-Daten enthalten. Später werden wir den Umfang dort erweitern, wo es sinnvoll ist. In den letzten Jahren haben wir eine steigende Verbreitung von CNAs – den Stellen, die CVEs vergeben – beobachtet. Das reduziert die Dringlichkeit, viele verschiedene Quellen zu verarbeiten. Abhängig von Ihrem Anwendungsfall kann es aber dennoch sinnvoll sein, weitere Quellen einzubeziehen. Zögern Sie daher nicht, uns zu kontaktieren, wenn Sie eine wichtige Quelle hingefügt haben möchten.

 

Sample query TrustSource Vulnerbaility Lake

Sie sind sich nicht sicher, ob die Information für Ihren Bedarf ausreicht?


TrustSource

Wie TrustSource vor Dependency Konfusion schützen kann

Was ist passiert?

Sicherheitsforscher haben es mit Hilfe eines Dependency-Konfusion Angriffes geschafft, sich Zugang zu diversen Hochsicherheits-Netzwerken zu verschaffen. Mit Hilfe dieses Angriffes ist es Ihnen gelungen, Informationen und Daten aus den betroffenen Netzwerken nach draußen zu schicken. Je nach Ausgestaltung des Angriffsszenarios wären jedoch auch andere Aktivitäten denkbar. Erst einmal hinter den Verteidigungslinien angekommen, lässt sich das Schadensszenario frei wählen.

Wie ist der Angriff erfolgt?

Die Sicherheitsforscher sind auf die Idee gekommen, als Sie in den veröffentlichten Open Source Werkzeugen der Firmen (Apple, Adobe, etc.) Namen privater Pakete gefunden haben.

Oft nutzen Unternehmen Open source und ergänzen gewisse Funktionalitäten oder grafische Steuerelemente mit eigenen Bibliotheken. Diese wiederum werden nur von einem Team entwickelt und als eigene Pakete bzw. Bibliotheken für andere Entwicklungsteams bereitgestellt. Das ist effizient und komfortabel, da die breite Menge der Entwicklungs-Teams sich nicht kümmern muss, das Look-and-Feel dennoch konsistent über unterschiedliche Anwendungen bzw. Services bleibt.

Spielen die Unternehmen nun Software zurück an die Community und werden die Referenzen auf solche „privaten“ Pakete nicht aus dem Quellcode entfernt, trägt die Veröffentlichung dien Namen dieser Pakete nach draußen. Das an sich ist noch nicht so gefährlich. Interessant wird dies erst, wenn die Information für eine Dependency-Attack (s. nebenan) ausgenutzt wird.

Wie können Sie sich schützen?

  • Komponenten-Namen:
    Folgen die internen Komponentennamen einem Namens-Schema, wie bspw. ORG.COPMANY.UNIT.UITOOLS wird es für Dritte erheblich schwieriger entsprechende Namen in den Paketmanagern anzulegen, ohne dass es Aufsehen erregt.ORG.COPMANY.UNIT.UITOOLS fällt mehr auf, als die 100ste Version von UITOOLS.
  • Nutzung von Paketmanager-Proxies:
    Um in dem Angriff erfolgreich zu sein, sind die lokalen Verteilmechanismen zu überlisten. Es sollte sichergestellt sein, dass für gewisse Paket-Typen, u.a. bspw. mit Hilfe der  Namenskennung ode reiner einfachen Blacklist, keine Updates von außen gezogen werden.
  • Versionsüberwachung:
    Mit Hilfe einer Versionshistorie wird es schnell möglich, festzustellen, welche Versionen im Einsatz sind. Ein Sprung von 1.2.3 zu 69.1.0 lässt sich schnell entdecken, bzw. fällt auf.

Was ist eine Dependency-Konfusion?

Moderne Package-Systeme nutzen Paketmanager, insbesondere um die stetig wachsende Zahl von Open Source Komponenten zu verwalten. Jede Build-Vorschrift enthält daher eine Liste der einzubindenden Komponenten. Unter Java ist das die POM.XML-Datei, bei Node.JS (JavaScript) ist das die PACKAGES.JSON.

In dieser Datei sind die Komponenten und die Mindestanforderungen and die Komponenten, die Versionsnummern angegeben. Da sich viele Komponenten öfter ändern, steht in den Vorschriften oft nicht nur die exakte Versionsangabe, bspw. 1.2.3 sondern ein Vermerk wie ^1.2.3, was so viel bedeutet wie: „Gib mir mindestens die 1.2.3 oder neuer.“ . Erfolgt seitens der Maintainer der Komponente eine Update auf bspw. 1.2.4 (neuer Patch) oder 1.3.0 (neues Feature) würde die eigene Lösung mit Hilfe der Formulierung beim nächsten Bauen von den Neuerungen profitieren können.

Wird nun in einem Package Manager von einem bösartigen Akteur eine neuere Version eingestellt, bspw. eine 2.1.0, so kann er relativ sicher sein, dass diese Version vom Package Management für den oben beschriebenen Kontext bereitgestellt würde. Baut das Projekt nun anständig, würde dieser schadhafte Code in ein QS-System ausgebracht und dort ausgeführt. Je nach

 

Sie wollen Schwachstellen entlang des gesamten Produkt-Lebenszyklus Ihres Produkt verlässlich überwachen?

TrustSource kann gegen solche Angriffe schützen!

TrustSource kennt die aktuellen Versionen Ihrer Module und Lösungen sowie der öffentlich verfügbaren. plötzliche Versionssprünge öffentlich verfügbarer Komponenten werden von unseren Systemen erkannt und an unser Support-Team zur Prüfung gemeldet. Kritisch einzustufende Entwicklungen werden an die Projekte zurückgemeldet.

Nutzen Sie bereits TrustSource ist Ihnen vermutlich das Konzept des „linked Modules“, des Einbindens von Releases eigener Software bekannt. Tauchen hier Versionen auf, die bisher unbekannt sind, führt auch dies zu einer Meldung an den jeweiligen Projektleiter. Somit können Sie sicher sein, entsprechende Entwicklungen schnell zu bemerken.


Capabilities in comparison

TrustSource @ FOSDEM 2021

TrustSource @ FOSDEM 2021

wir freuen uns auf die Vorträge von @Jan Thielscher & @Grigory Markin auf der FOSDEM 2021.

Open Source Compliance Tooling – Capability Reference Architecture

Jan wird im OpenChain Dev-Room das Referenzmodell der Open Source Tooling Workgroup vorstellen, welches die fachlichen Capabilities und ihre Zusammenhänge darlegt. Das Modell ist in den letzten zwei Jahren von Mitgliedern der Arbeitsgruppe erstellt worden und soll eine Übersicht der erforderlichen Aufgaben geben, die im Kontext einer Open Source Compliance erforderlich werden. Es eignet sich auch, um die unterschiedlichen Werkzeuge abzubilden oder sich klar zu machen, welche Funktionalität sie abdecken.

Jan wird den Talk auch benutzen, um die Anbieter der Werkzeuge zu motivieren, Ihre Werkzeuge gegen das Modell zu mappen.

Capabilities in comparison

In einem zweiten Talk wird Grigory Markin im Dev-Room Software Composition das Open Source Werkzeug TrustSource DeepScan sowie den gleichnamigen, freien online Service DeepScan vorstellen. Die Lösung kann eingesetzt werden, um die erforderlichen Informationen (Copyright & Lizenzen) zu bestimmen, welche für eine rechtlich konforme Nutzung erforderlich sein können:

TrustSource DeepScan – How to effectively excavate effective licenses

In diesem 15 minütigen Talk werden Grigory und Jan kurz die Herausforderung der „effective“ Lizenzen anreißen und auf die unterschiedlichen, technischen Möglichkeiten und Herausforderungen der automatisierten Lizenzanalyse u.a. mit Hilfe der Similarity-Analyse eingehen. Abschließend werden kurz das Werkzeug, der gegenwärtige Arbeitsstand und die nächsten Schritte dargestellt.

Sie haben an dem 6./7. Februar keine Zeit, würden aber gerne mehr erfahren?


TrustSource v1.9 released!

We are happy to announce our latest release of TrustSource, version 1.9 to arrive Sept. 10th 2019!

With our v1.8 we have introduced a more detailed versioning schema allowing a closer matching between the code repos and the scan results by introducing support for branch and tag. In this release on of the major updates is the new approval, which allows to specify a combination of versions which shall be taken for an approval. But besides this, there is even more:

New Features:

  • Improved Approval Process:
    The new approval will be started as the former version. But a wizard will guide you through the steps. You will be able to give the approval a particular name, select the modules and analysis versions to apply. When you are confident with your selection and issue the approval request, TrustSource will generate all relevant documentations (Notice File, if required a SOUP file – see below – and  a new compliance report) and process the request towards the compliance manager(s).
    They will find the information in their inbox and can immediately dive into the new compliance report.
  • Compliance Report:
    The new compliance report will give a comprehensive summary of the project situation including legal and vulnerability status. Also it will the required documentation and unveil the degree of completion. Also the report will outline the changes in component status a project manager has made will be shown. Thus manual status changes will become immediately visible, comments on vulnerabilities having been muted will be available for review and more….
  • DeepScan:
    How often do you rely on the declared license? How many of us really dig deep to ensure that there is no little snippet of code containing another license? I probably better do not want to know. However, we proudly present DeepScan. This new service allows you to specify the URL of a component repository, which DeepScan then will assess for you in the background. It will search for all sort of data providing a relation to a license specification and present the findings to you. Give it a try! You might be surprised…
  • Support for Medical Device Directive Documentation:
    In 2020 the European Medical Device Directive will force developers of software related to medical devices to clearly outline all third party software and track these changes and require these to register each change (UDI-ID). We prepare to support this procedure and already offer automatically generated SOUP-lists as well ass COTS-component management. Further steps to follow, sty tuned with our newsletter.

Improvements:

  • Improved sorting and selections from lists
  • Multi-license cases will be marked as warning as long as no decision about the license to use has been made, even if both licenses would result in no obligations. Thus all required decisions will be easy to identify.
  • We were able to identify some inputs from scanners being misinterpreted, e.g. „>=“-version conditions, resulting in difficulties with the correct version matching. These cases will be properly resolved now.