
Biblioteca e utilitário de consulta a CVE que utiliza um armazenamento local sincronizado diretamente com o National Vulnerability Database.
O CVEdb é mais uma biblioteca e utilitário Python de banco de dados de CVEs. Já existem muitas disponíveis. Por que criar outra? A maioria das bibliotecas existentes depende de uma API de terceiros como cve.circl.lu, que pode e costuma limitar o uso, exigir registro e/ou demandar uma conexão com a Internet. Algumas bibliotecas são inchadas, incluindo interfaces web para busca.
Recursos do CVEdb:
Anti-recursos do CVEdb:
$ pip3 install cvedb
$ cvedb --help
from cvedb.db import CVEdb
with CVEdb.open() as db:
for cve in db.data():
print(cve)
Por padrão, os CVEs baixados do NIST são salvos em um banco de dados sqlite armazenado em cvedb.db.DEFAULT_DB_PATH, que está
definido como ~/.config/cvedb/cvedb.sqlite. Isso pode ser personalizado passando o argumento db_path para CVEdb.open.
A função db.data() retorna uma instância de um objeto cvedb.feed.Data, que possui
inúmeros métodos para consultar CVEs.
Por exemplo:
with CVEdb.open() as db:
for cve in db.data().search("search term"):
print(cve)
Além de aceitar strings, a função data().search(...) aceitará qualquer
objeto cvedb.search.SearchQuery.
O NIST National Vulnerability Database está em processo de transição para uma nova API REST. Os conjuntos de dados nos quais
o CVEdb é construído ainda estão disponíveis, mas não está claro se eles podem se tornar obsoletos. Além disso, o NIST começou
a limitar a taxa de downloads, o que pode afetar a sincronização do CVEdb. Portanto, o CVEdb é distribuído
pré-populado com um banco de dados. Portanto, o CVEdb não
requer nenhuma conectividade com a Internet após a instalação, exceto para baixar novas definições de CVE. Além disso, o comportamento
do CVEdb foi alterado de verificar automaticamente atualizações conforme necessário para agora exigir que o usuário solicite
explicitamente uma atualização com o novo argumento --update. O suporte para a nova API REST está sendo acompanhado em
este problema do GitHub.
O CVEdb foi criado pela Trail of Bits. É licenciado sob a GNU Lesser General Public License v3.0. Entre em contato conosco se você estiver procurando uma exceção aos termos. © 2021, Trail of Bits.
O banco de dados de CVEs distribuído com o CVEdb é criado e mantido pelo NIST e é disponibilizado em domínio público.