CVE二进制检查器工具
cve-bin-tool的Python项目详细描述
CVE二进制工具
cve二进制工具扫描许多常见的、易受攻击的开放源码 组件(openssl、libpng、libxml2、expat和其他一些组件)让您知道 如果给定的目录或二进制文件包含 脆弱性。
用法:
cve-bin-tool <flags> <path to directory>
您还可以执行python -m cve_bin_tool.cli <flags> <path to directory>
,这在尝试the cve-bin-tool github中的最新代码时非常有用。
-h, --help show help message and exit
Output options:
-v, --verbose details on found issues as script runs
-q, --quiet suppress output
-l {debug,info,warning,error,critical}, --log {debug,info,warning,error,critical}
log level
Functional options:
-x, --extract autoextract compressed files
-s SKIPS, --skips SKIPS
comma-separated list of checkers to disable
-m, --multithread enable multithread
-u {now,daily,never}, --update {now,daily,never}
update schedule for NVD database. Default is daily.
这个版本可能是最后一个支持Python2.7的版本;请切换到Python3。
本自述文件旨在作为使用该工具的快速入门指南。如果你 需要更多信息,还有一个user manual可用。
工作原理
这个扫描器检查二进制文件中的字符串,看看它们是否 匹配以下库和工具的某些易受攻击的版本:
- 卷曲
- 外籍人士
- 重症监护病房
- kerberos
- libgcrypt
- libjpeg
- libnss
- libpng
- libtiff
- node.js
- openssl
- sqlite
- 系统d
- 复印件
- xml2
- 兹利布
所有的跳棋都可以在跳棋目录中找到,就像 instructions on how to add a new checker。 可以通过 GitHub issues。
限制
此扫描仪不会尝试利用问题或检查 详细信息;它只查找库签名和版本号。因此,它 无法判断是否有人已将修补程序移植到易受攻击的版本,并且 如果故意混淆库或版本信息,则无法工作。
此工具用于快速运行、易于自动签入 非恶意环境,使开发人员能够了解旧库 与已编译到其二进制文件中的安全问题有关。
要求
要使用自动提取器,可能需要以下实用程序,具体取决于 需要提取的文件类型。下面是运行完整 Linux上的测试套件:
ar
cabextract
cpio
rpm2cpio
默认情况下,大多数安装在许多linux系统上,但是cabextract
rpm2cpio
可能特别需要安装。
在Windows系统上,您可能需要:
ar
7z
Expand
windows默认安装了ar
和Expand
,但可能需要特别安装7z
。(7Z仅用于RPM提取,这在我们的测试套件中使用得非常多,但如果您不扫描Windows上的RPM文件,则可以不扫描。)
CSv2套管
cve二进制工具包还包括一个名为csv2cve
的工具,它是一个帮助工具,允许您在本地数据库中搜索已知包的列表。如果知道包的列表,这可能很有用。
用法:
csv2cve <csv_file>
csv文件必须包含以下列:vendor,package,version
,其中供应商和包名称与国家漏洞数据库中的字符串完全匹配。您可以阅读有关如何在the checker documentation中找到正确字符串的更多信息,并且csv2cve manual中有关于使用此工具的更多信息。
反馈和贡献
可以通过GitHub issues发出错误和功能请求。注意这些问题 不是私有的,所以在提供输出时要小心,以确保不是 披露其他产品的安全问题。
通过git也欢迎拉取请求。
cve二进制工具使用the Black python code formatter来保持编码风格的一致性; 您可能希望安装它以使拉取请求更容易。
安全问题
工具本身的安全问题可以报告给英特尔的安全部门 事件响应小组VIA https://intel.com/security。
如果在使用此工具的过程中发现某人的安全问题 其他代码,请向相关方负责披露。