BDBA (Black Duck Binary Analysis) Triage-Umfang irreführend

BDBA (Black Duck Binary Analysis) Triage-Umfang irreführend

Im Tool Black Duck Binary Analysis (auch bekannt als Protecode) gibt es mehrere Optionen zur Einstufung von Schwachstellen

Aus der Hilfe:

Triage-Umfang

Sie können einen Bereich auf eine bewertete Schwachstelle innerhalb einer Drittanbieterkomponente anwenden. Bei der Bewertung bekannter Schwachstellen können Sie aus den folgenden Optionen wählen:

Konto: Gilt für alle Nutzungen der Komponente innerhalb des Firmenaccounts

Gruppe: Gilt für alle Verwendungen der Komponente innerhalb der Gruppe

Anwendung: Gilt nur für die Verwendung der Komponente innerhalb derselben Anwendung

Anwendungsname: Gilt für die Verwendung der Komponente in gescannten Anwendungen mit demselben Anwendungsnamen

Datei-Hash: Gilt für die Verwendung der Komponente in gescannten Anwendungen mit demselben Datei-Hash

Ich möchte die CVE in meiner Bibliothek sortieren, damit die Ergebnisse der Sortierung in die nächsten Scans übernommen werden. Ich erwarte, dass die Option „Datei-Hash“ genau dies tun sollte. Wenn ich mein Archiv jedoch das nächste Mal hochlade, sehe ich immer noch dieselbe CVE als nicht sortiert. Was ist falsch?

Antwort1

TL;DR – verwenden Sie den Bereich „Gruppe“.

Einzelheiten

Die API-Dokumentation macht es etwas klarer

PUT /api/triage/vulnerability/

component - Component name
version - Component version
vulns - List of vulnerability ids
scope - Scope in which the triage affects. Possible values:

- CA - Account wide
- FN - Filename
- FH - File hash
- R - Result
- G - Group

product_id - In FN, FH and R scopes the related product

group_id - In G scope the related group

Die eigentliche Triage im Tool erfolgt alsonicht gegen die Akten, Abergegen Bibliotheksversionen(Bibliothek === Komponente im Kontext). Es gibt nicht einmal theoretisch die Möglichkeit, eine Datei zu sortieren, da Sie die Versionen sortieren. Wenn man das im Hinterkopf behält, sind die restlichen Überlegungen einfach.

Was ist dann der „Datei-Hash“?

Es steht klar geschrieben, dass bei Verwendung von „FH“ die Produkt-ID erforderlich ist und das Produkt (im aktuellen Kontext) ein Synonym für das hochgeladene Archiv mit Ihren Binärdateien ist. Jedes Produkt hat also genau einen „Datei-Hash“ – den Hash des hochgeladenen Archivs. Das macht diese Option völlig nutzlos, da man, wie ich annehme, nicht 100 Dateien einzeln hochlädt, sondern das Archiv\zip\tar.gz mit der Software hochlädt, das mehrere Binärdateien enthält. Und natürlich ändert sich der Hash des Archivs bei jeder Neuverpackung, selbst wenn es eine Änderung in der Readme-Datei gab.

Ich möchte eine Priorisierung der CVE in meiner Bibliothek durchführen, sodass die Ergebnisse der Priorisierung in die nächsten Scans übernommen werden.

Da „Datei-Hash“ für diesen Zweck nicht geeignet ist, gehen wir die anderen verfügbaren Bereichsoptionen durch, um zu sehen, was wir hier tun können:

Ergebnis

Die einfachste und standardmäßige Option. Gleichzeitig aber auch die nutzloseste. Wird direkt dem Applicationin der Hilfe genannten Bereich zugeordnet: Applies to uses of the component within the same application only. Kurz gesagt – keine Übertragung.

Dateiname

Ich persönlich finde „Dateiname“ klarer als die entsprechende Application nameZeile in der Hilfe. Unabhängig davon ist dies auch ziemlich klar – die Triage wird nur durchgeführt, wenn der Name des Archivs derselbe ist. Wenn es das Problem irgendwie löst, führt es das neue Problem ein – das Problem der Unterscheidung verschiedener Builds. Normalerweise benennen wir unsere Zips so, MyCoolBuild_942_ab4e3fdamit sie leicht zu finden sind und die Ergebnisse für frühere Builds überprüfen können. Wenn es Ihnen egal ist, kann dieser Bereich eine Option sein, wenn Sie Ihre Zips so benennen MyCoolBuild.zip.

Gruppe

Wie man sich vorstellen kann, handelt es sich hier lediglich um eine gruppenweite Triage. Wenn Ihr Team eine eigene Gruppe hat, können Sie diese problemlos verwenden.

In meinem Fall lädt das ganze Unternehmen Dateien in eine Gruppe hoch.Maihaben einige Konflikte, aber im Handbuch für das Tool steht, dass Sie Versionssuffixe verwenden sollten, wenn Sie benutzerdefinierte Builds dieser Bibliothek erstellen (um beispielsweise einige CVEs selbst zu beheben). Wenn jeder diese Regel befolgt und benutzerdefinierte Bibliotheken also nicht „ 1.0.2aber“ benennen 1.0.2_company_build, gibt es keine Konflikte zwischen Triages verschiedener Teams.

Konto

Ich weiß es nicht, weil ich diese Option in unserer BDBA-Instanz nicht habe -_-

Prüfung der Richtigkeit der oben genannten Annahmen

Alles oben genannte kann leicht durch einige Test-Uploads bestätigt werden.

Datei-Hash- Laden Sie die gleiche Datei zweimal unter unterschiedlichen Namen hoch und sortieren Sie ein CVE mit dem Geltungsbereich „FH“. Anschließend wird die Sortierung übernommen.

Dateiname- Archiv einmal hochladen, dann Archiv ein wenig ändern (leere Textdatei hinzufügen) und erneut hochladen. Die Triage wird übernommen.

Gruppe- Laden Sie eine Bibliothek mit automatisch erkannter Version hoch, ändern Sie dann die Binärdatei und laden Sie sie unter einem anderen Namen hoch – die Triage wird übernommen.

Als zusätzlichen Test können Sie auch ein Archiv mit zwei Bibliotheken darin hochladen und die Version für eine davon überschreiben. Dadurch werden sie in der Benutzeroberfläche getrennt und eine getrennte Sichtung ermöglicht.

verwandte Informationen