跳转到主要内容

另一个CVE数据库

项目描述

CVEdb

PyPI version Tests Slack Status

CVEdb 是另一个 Python CVE 数据库库和实用工具。已经有很多了。为什么还要创建另一个?大多数现有库依赖于第三方 API,如 cve.circl.lu,这些 API 可以并确实限制了使用,需要注册,并且/或者需要互联网连接。一些库很臃肿,包括用于搜索的 Web 界面。

CVEdb 特点

  • 可以作为库或命令行实用工具使用
  • 简单的 API
  • 直接从 国家漏洞数据库 下载
  • 自动、增量更新

CVEdb 抗性功能

  • 不需要很多依赖项
  • 没有 Web 服务器
  • 除了下载新的 CVE 外,不需要互联网连接

安装

$ pip3 install cvedb

命令行使用

$ cvedb --help

Python 示例

from cvedb.db import CVEdb

with CVEdb.open() as db:
    for cve in db:
        print(cve)

默认情况下,从 NIST 下载的 CVE 存储在 cvedb.db.DEFAULT_DB_PATH 中,该路径设置为 ~/.config/cvedb/cvedb.sqlite。这可以通过向 CVEdb.open 传递 db_path 参数进行自定义。

db.data()函数返回一个cvedb.feed.Data对象实例,该对象具有众多方法来查询CVE。例如

with CVEdb.open() as db:
    for cve in db.data().search("search term"):
        print(cve)

除了接受字符串外,data().search(...)函数还接受任何cvedb.search.SearchQuery对象

已知问题

NIST国家漏洞数据库正在过渡到新的REST API。CVEdb所基于的数据集仍然可用,但它们可能变得过时。此外,NIST已经开始限制下载,这可能会影响CVEdb的同步。因此,CVEdb随附预装数据库。因此,CVEdb安装后不需要任何互联网连接,除了下载新的CVE定义。此外,CVEdb的行为已从自动检查必要的更新更改为现在需要用户显式使用新的--update参数请求更新。新的REST API的支持正在此GitHub问题中跟踪。

许可和致谢

CVEdb由Trail of Bits创建。它根据GNU Lesser General Public License v3.0许可。如果您想寻求对条款的例外,请联系我们开源。© 2021,Trail of Bits。

CVEdb附带CVE数据库由NIST创建和维护,并已进入公有领域。

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

cvedb-0.0.5.tar.gz (45.7 MB 查看哈希值)

上传时间

构建分布

cvedb-0.0.5-py3-none-any.whl (45.7 MB 查看哈希值)

上传时间 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面