
CVE-Abfragebibliothek und -Dienstprogramm, das einen lokalen Speicher verwendet, der direkt mit der National Vulnerability Database synchronisiert wird.
CVEdb ist eine weitere Python-Bibliothek und ein weiteres Dienstprogramm für CVE-Datenbanken. Es gibt bereits viele davon. Warum also eine weitere erstellen? Die meisten vorhandenen Bibliotheken sind auf eine Drittanbieter-API wie cve.circl.lu angewiesen, die die Nutzung drosseln können und dies auch tun, eine Registrierung verlangen und/oder eine Internetverbindung erfordern. Einige Bibliotheken sind aufgebläht und enthalten Weboberflächen für die Suche.
CVEdb-Funktionen:
CVEdb-Anti-Funktionen:
$ pip3 install cvedb
$ cvedb --help
from cvedb.db import CVEdb
with CVEdb.open() as db:
for cve in db.data():
print(cve)
Standardmäßig werden die von NIST heruntergeladenen CVEs in einer SQLite-Datenbank gespeichert, die unter cvedb.db.DEFAULT_DB_PATH abgelegt ist, was auf ~/.config/cvedb/cvedb.sqlite gesetzt ist. Dies kann angepasst werden, indem das Argument db_path an CVEdb.open übergeben wird.
Die Funktion db.data() gibt eine Instanz eines cvedb.feed.Data-Objekts zurück, das zahlreiche Methoden zum Abfragen von CVEs bietet. Zum Beispiel:
with CVEdb.open() as db:
for cve in db.data().search("search term"):
print(cve)
Neben Zeichenketten akzeptiert die Funktion data().search(...) jedes cvedb.search.SearchQuery-Objekt.
Die NIST National Vulnerability Database befindet sich derzeit im Übergang zu einer neuen REST-API. Die Datensätze, auf denen CVEdb aufbaut, sind weiterhin verfügbar, aber es ist unklar, ob sie veraltet werden könnten. Außerdem hat NIST begonnen, Downloads per Rate Limiting zu drosseln, was die Synchronisierung von CVEdb beeinträchtigen kann. Daher wird CVEdb vorab mit einer Datenbank befüllt ausgeliefert. Dadurch benötigt CVEdb nach der Installation keine Internetverbindung, außer um neue CVE-Definitionen herunterzuladen. Außerdem wurde das Verhalten von CVEdb geändert: Statt automatisch bei Bedarf nach Updates zu suchen, muss der Benutzer nun explizit ein Update mit dem neuen Argument --update anfordern. Die Unterstützung für die neue REST-API wird in diesem GitHub-Issue verfolgt.
CVEdb wurde von Trail of Bits erstellt. Es ist unter der GNU Lesser General Public License v3.0 lizenziert. Kontaktieren Sie uns, wenn Sie eine Ausnahme von den Bedingungen suchen. © 2021, Trail of Bits.
Die mit CVEdb ausgelieferte CVE-Datenbank wird von NIST erstellt und gepflegt und ist gemeinfrei.