
Tool zur Identifizierung der besten Mechanismen für die private Offenlegung einer Sicherheitslücke für ein Paket/Projekt.
Disclosure Check ist ein Tool zur Identifizierung von Mechanismen zur Offenlegung von Schwachstellen für Open-Source-Projekte.

Warnung Dieses Projekt befindet sich noch in der Entwicklung und funktioniert möglicherweise nicht korrekt für viele verschiedene Projekte. Wenn Sie einen Fehler finden, öffnen Sie bitte ein Issue und wir werden unser Bestes tun, um ihn zu beheben. Pull Requests sind willkommen!
Die meisten Open-Source-Projekte verwenden einen öffentlichen Issue-Tracker für eingehende Anfragen, Fehlerberichte usw. Da dies für die Meldung neuer Schwachstellen ungeeignet ist, verfügen viele Projekte über andere Mechanismen, über die Benutzer sensible Berichte einreichen können.
Leider gibt es keine weit verbreitete, maschinenlesbare Möglichkeit, dies für ein bestimmtes Projekt herauszufinden. Stattdessen muss ein Mensch möglicherweise nach einer SECURITY.md-Datei suchen (und sie durchlesen), eine README.md überprüfen, prüfen, ob ein privater Meldeweg für Schwachstellen über das Quell-Repository verfügbar ist, prüfen, ob eine E-Mail-Adresse mit dem veröffentlichten Paket verknüpft ist, usw.
Dies ist für ein einzelnes Projekt zeitaufwändig und bei großflächiger Anwendung umso mehr.
Der Zweck von Disclosure Check ist es, zu automatisieren, was ein Mensch tun würde, wenn er versucht, den besten Weg zur Meldung einer Schwachstelle an ein Projekt herauszufinden. Die Verwendung ist orthogonal zum Ziel standardisierterer Meldewege; wenn und falls Letzteres Realität wird, wird dieses Tool nicht mehr nützlich sein.
Disclosure Check ist über PyPI und Docker Hub verfügbar. Wenn Sie über PyPI installieren, müssen Sie zusätzlich OSS Gadget installieren, das benötigt wird, um den Paketinhalt zur Analyse herunterzuladen. Stellen Sie sicher, dass oss-download in Ihrem Pfad liegt.
Außerdem benötigen Sie ein GitHub-Token, damit Disclosure Check die GitHub-API für Dinge wie die Codesuche verwenden kann. Das Token erfordert keine besonderen Berechtigungen, und das Tool läuft auch ohne es, allerdings mit eingeschränkter Funktionalität.
Aktuelle Installationsanweisungen finden Sie auf der Seite OSS Gadget.
Anschließend können Sie Disclosure Check von PyPI installieren:
pip install disclosurecheck
Sie sollten Pakete wie dieses immer in einer virtuellen Umgebung installieren, da die Installation weitere Abhängigkeiten mit sich bringt.
Sie können das neueste Docker-Image aus der GitHub Container Registry pullen:
docker pull ghcr.io/scovetta/disclosurecheck:latest
So führen Sie Disclosure Check aus:
disclosurecheck --help
usage: OpenSSF Vulnerability Disclosure Mechanism Detector [-h] [--verbose] [--json] package_url
positional arguments:
package_url Package URL for the project/package you want to analyze.
options:
-h, --help show this help message and exit
--verbose Show extra logging.
--json Output as JSON.
Oder wenn Sie das Docker-Image verwenden:
docker run -e GITHUB_TOKEN=<YOUR GITHUB TOKEN> --rm -t ghcr.io/scovetta/disclosurecheck:latest pkg:npm/left-pad
Disclosure Check sucht nach Kontaktinformationen (E-Mail, URLs usw.) an den folgenden Stellen:
Das Tool versucht, diese basierend auf der Priorität zu bewerten (wobei 0 die höchste Priorität und 100 die niedrigste ist).