Informationen zu GitHub Advisory Database
Wir fügen der GitHub Advisory Database Hinweise aus den folgenden Quellen hinzu:
- Auf GitHub gemeldete Sicherheitshinweise
- Die National Vulnerability-Datenbank
- Die npm-Datenbank für Sicherheitsempfehlungen
- Die FriendsOfPHP-Datenbank
- Die Go Vulncheck-Datenbank
- Die Python Packaging Advisory-Datenbank
- Die Ruby Advisory-Datenbank
- Die RustSec Advisory-Datenbank
- Communitybeiträge. Weitere Informationen findest du unter https://github.com/github/advisory-database/pulls.
Wenn du eine andere Datenbank kennst, aus der wir Empfehlungen importieren sollten, informiere uns darüber, indem du ein Problem in https://github.com/github/advisory-database öffnest.
Sicherheitsempfehlungen werden als JSON-Dateien im OSV-Format (Open Source Vulnerability) veröffentlicht. Weitere Informationen zum OSV-Format findest du unter Format von Open Source-Sicherheitsrisiken.
Informationen zu Typen von Sicherheitsempfehlungen
Jeder Hinweis in der GitHub Advisory Database bezieht sich auf ein Sicherheitsrisiko in Open Source-Projekten.
Eine Sicherheitslücke ist ein Problem im Code eines Projekts, das ausgenutzt werden könnte, um die Vertraulichkeit, Integrität oder Verfügbarkeit des Projekts oder anderer Projekte, die seinen Code verwenden, zu beeinträchtigen. Sicherheitsrisiken variieren im Hinblick auf Typ, Schweregrad und Angriffsmethode. Sicherheitsrisiken im Code entstehen in der Regel versehentlich und werden bald nach ihrer Entdeckung beseitigt. Du solltest deinen Code aktualisieren, um die korrigierte Version der Abhängigkeit zu verwenden, sobald sie verfügbar ist.
Von GitHub überprüfte Empfehlungen
Im Allgemeinen benennen wir unsere unterstützten Ökosysteme nach der Paketregistrierung, die der Softwareprogrammiersprache zugeordnet ist. Wir überprüfen Empfehlungen, wenn sie sich auf ein Sicherheitsrisiko in einem Paket beziehen, das von einer unterstützten Registrierung stammt.
- Composer (Registrierung: https://packagist.org/)
- Go (Registrierung: https://pkg.go.dev/)
- GitHub-Aktionen (https://github.com/marketplace?type=actions/)
- Maven (Registrierung: https://repo.maven.apache.org/maven2)
- npm (Registrierung: https://www.npmjs.com/)
- NuGet (Registrierung: https://www.nuget.org/)
- pip (Registrierung: https://pypi.org/)
- pub (Registrierung: https://pub.dev/packages/registry)
- RubyGems (Registrierung: https://rubygems.org/)
- Rust (Registrierung: https://crates.io/)
Wenn du einen Vorschlag für ein neues Ökosystem hast, das wir unterstützen sollten, öffne bitte ein Issue für die Diskussion.
Wenn Sie Dependabot alerts für Ihre Repositories aktivieren, werden Sie automatisch benachrichtigt, wenn ein neues GitHub-geprüftes Advisory eine Sicherheitslücke für ein Paket meldet, von dem Sie abhängig sind. Weitere Informationen findest du unter Informationen zu Dependabot-Warnungen.
Nicht überprüfte Empfehlungen
Nicht überprüfte Empfehlungen sind Sicherheitsrisiken, die direkt aus dem Feed der National Vulnerability Database (Nationale Datenbank zu Sicherheitsrisiken) automatisch in GitHub Advisory Database veröffentlicht werden.
Dependabot erstellt keine Dependabot alerts für nicht überprüfte Empfehlungen, da diese nicht auf Gültigkeit oder Vollständigkeit überprüft werden.
Informationen in Sicherheitsempfehlungen
In diesem Abschnitt findest du ausführlichere Informationen zu Sicherheitsempfehlungen in der GitHub Advisory Database, z. B.:
- Empfehlungs-IDs und welches Format diese Bezeichner verwenden
- Die CVSS-Ebenen, die wir zum Zuweisen von Schweregraden verwendet haben
Informationen zu GHSA-IDs
Jede Sicherheitsempfehlung weist unabhängig vom Typ einen eindeutigen Bezeichner auf, der als GHSA-ID bezeichnet wird. Ein GHSA-ID
-Qualifizierer wird zugewiesen, wenn eine neue Empfehlung für GitHub.com erstellt oder die GitHub Advisory Database aus einer der unterstützten Quellen hinzugefügt wird.
Die Syntax der GHSA-IDs folgt dem Format GHSA-xxxx-xxxx-xxxx
, wobei Folgendes gilt:
x
ist ein Buchstabe oder eine Zahl aus der folgenden Gruppe:23456789cfghjmpqrvwx
.- Außerhalb des
GHSA
-Anteils des Namens:- Die Zahlen und Buchstaben werden nach dem Zufallsprinzip zugewiesen.
- Alle Buchstaben werden in Kleinbuchstaben geschrieben.
Du kannst eine GHSA-ID mithilfe eines regulären Ausdrucks überprüfen.
/GHSA(-[23456789cfghjmpqrvwx]{4}){3}/
/GHSA(-[23456789cfghjmpqrvwx]{4}){3}/
Informationen zu CVSS-Ebenen
Jede Sicherheitsempfehlung enthält Informationen zum jeweiligen Sicherheitsrisiko, z. B. Beschreibung, Schweregrad, betroffenes Paket, Paketökosystem, betroffenen Versionen und Patchversionen, Auswirkungen sowie optionale Informationen wie Verweise, Problemumgehungen und Quellen. Zudem enthalten die Empfehlungen aus der Liste der National Vulnerability Database einen Link zum CVE-Eintrag mit weiteren Details zum Sicherheitsrisiko, der CVSS-Bewertung und dem qualitativen Schweregrad. Weitere Informationen findest du unter National Vulnerability Database des National Institute of Standards and Technology (NIST).
Der Schweregrad ist eine von vier möglichen Ebenen, die in Abschnitt 5 des Common Vulnerability Score System (CVSS) (Allgemeines Bewertungssystem für Schwachstellen) definiert sind.
- Niedrig
- Mittel/Moderat
- High
- Kritisch
GitHub Advisory Database verwendet die oben beschriebenen CVSS-Ebenen. Ruft GitHub einen CVE-Eintrag ab, verwendet GitHub Advisory Database die CVSS-Version 3.1. Wird der CVE-Eintrag importiert, unterstützt GitHub Advisory Database die CVSS-Versionen 3.0 und 3.1.
Du kannst auch GitHub Security Lab beitreten, um sicherheitsbezogene Themen zu durchsuchen und zu Sicherheitstools und Projekten beizutragen.
Weitere Informationsquellen
- Informationen zu Dependabot-Warnungen
- Die Definition für „Sicherheitsanfälligkeit“ des CVE-Programms