Wie prüfen Sie, ob eine Version bekannte Schwachstellen aufweist?

Jede Laufzeitumgebung, jeder Server und jede Bibliothek, von der Sie abhängig sind, erhält im Laufe der Zeit Sicherheitskorrekturen. Die von Ihnen verwendete Version könnte in einer veröffentlichten Sicherheitsempfehlung als betroffen aufgeführt sein. Sicherheitsempfehlungen sind über viele Datenbanken verteilt: die von GitHub, den Sicherheitsteams von Python und Go, RustSec, Bitnami und anderen. OSV.dev, das von Google betriebene Open-Source-Schwachstellenprojekt, sammelt sie in einem einheitlichen Format und gibt für eine genaue Version an, welche Sicherheitsempfehlungen sie betreffen.

Beschreibung des Tools

Wählen Sie das Ökosystem aus, geben Sie den Namen und die genaue Version ein und klicken Sie auf „Version prüfen“. Bei einer beliebten Laufzeitumgebung oder einem beliebten Paket wie Node.js, PHP, PostgreSQL, lodash oder Django können Sie stattdessen eine Option unter „Schnellauswahl“ wählen. Dadurch werden das Ökosystem und der Name automatisch eingetragen. Sie erhalten alle bekannten Schwachstellen, die diese Version betreffen, nach Schweregrad absteigend sortiert. Angezeigt werden:

  • Die ID, verlinkt mit der zugehörigen Seite auf osv.dev, und, falls vorhanden, die CVE-ID
  • Der Schweregrad, den die Sicherheitsempfehlung angibt: Kritisch, Hoch, Mittel oder Niedrig
  • Die Version, ab der die Schwachstelle behoben ist: die niedrigste behobene Version oberhalb Ihrer Version, laut Sicherheitsempfehlung
  • Eine kurze Zusammenfassung

Wenn mehrere Datenbanken dasselbe Problem beschreiben, etwa eine Sicherheitsempfehlung von GitHub und deren Kopie in der Python-Datenbank, wird es als eine Schwachstelle angezeigt.

Die Prüfung wird auf unserem Server ausgeführt, der die öffentliche API von OSV.dev abfragt. Gesendet werden nur das Ökosystem, der Name und die Version.

KI-Assistenten, die mit dem MCP-Server Rapid Tool Set verbunden sind, können dieselbe Prüfung mit vulnerable_version_checker ausführen.

Unterstützte Ökosysteme

Ökosystem Abgedeckte Inhalte Namensbeispiele
Laufzeitumgebungen und Server, Bitnami Laufzeitumgebungen, Web- und Datenbankserver, Apps node (Node.js), php, python, nginx, mariadb
npm JavaScript-Pakete lodash, express
PyPI Python-Pakete django, requests
Packagist PHP-Pakete, die mit Composer installiert werden laravel/framework, symfony/http-kernel
Maven Java-Pakete im Format Gruppe:Artefakt org.apache.logging.log4j:log4j-core
NuGet .NET-Pakete Newtonsoft.Json
Go Go-Module, anhand des Modulpfads github.com/gin-gonic/gin
crates.io Rust-Crates tokio
RubyGems Ruby-Pakete actionpack, nokogiri
Pub Dart- und Flutter-Pakete http
Hex Erlang- und Elixir-Pakete phoenix, plug
CRAN R-Pakete commonmark

Für Laufzeitumgebungen und Server werden die Bezeichnungen von Bitnami verwendet: node für Node.js (nodejs funktioniert ebenfalls), postgresql und apache für den Apache HTTP Server.

Einschränkungen

  • Die Version muss exakt so geschrieben sein, wie es das jeweilige Ökosystem vorgibt, etwa 18.0.0 oder 4.17.15. Bei einem falsch geschriebenen Namen oder einer nicht vorhandenen Version wird nichts gefunden – genauso wie bei einer Version ohne bekannte Schwachstellen.
  • Bekannt sind nur veröffentlichte Sicherheitsempfehlungen. Auch bei einer Version, für die keine Einträge vorliegen, können Schwachstellen bestehen, über die noch niemand berichtet hat.
  • Für manche Sicherheitsempfehlungen ist kein Schweregrad angegeben. Sie werden als „Nicht bewertet“ angezeigt.
  • Die Version, ab der die Schwachstelle behoben ist, wird den Versionsbereichen der Sicherheitsempfehlung entnommen. Eine neuere Version kann eigene Schwachstellen aufweisen. Prüfen Sie daher auch die Version, auf die Sie aktualisieren möchten.