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

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.