谷歌开源模糊测试工具:ClusterFuzz 安装方法

Posted 山东Oracle用户组

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了谷歌开源模糊测试工具:ClusterFuzz 安装方法相关的知识,希望对你有一定的参考价值。

谷歌开源的 ClusterFuzz 是一个可扩展的模糊测试基础设施,可在软件中发现安全性和稳定性问题。


它被谷歌用于模糊测试 Chrome 浏览器,截至2019年1月,ClusterFuzz 已经在 Chrome 中发现了大约16,000个错误。并且在与 OSS-Fuzz 集成的160多个开源项目中发现了大约11,000个错误。


ClusterFuzz 提供了许多功能,可以将模糊测试无缝集成到软件项目的开发过程中:

  • 高度可扩展。 谷歌的内部实例运行在超过25,000台机器上。

  • 准确的重复数据删除崩溃。

  • 问题跟踪器的全自动错误归档和关闭(仅限现在的单轨)。

  • 测试用例最小化。

  • 通过二分法找回回归。

  • 用于分析模糊器性能和崩溃率的统计信息。

  • 易于使用的Web界面,用于管理和查看崩溃。

  • 支持覆盖引导模糊(例如libFuzzer和AFL)和黑盒模糊测试。


ClusterFuzz的许多功能都依赖于Google Cloud Platform服务(有关详细信息,请参阅:https://google.github.io/clusterfuzz/architecture/#requirements)。 但是,也可以在没有这些依赖性的情况下在本地运行。

虽然ClusterFuzz可以跨平台运行,但只能在Linux和macOS上进行开发。


以下为ClusterFuzz安装步骤:

1、获取代码

git clone https://github.com/google/clusterfuzz
cd clusterfuzz


2、安装依赖

  • Google Cloud SDK:按照 https://cloud.google.com/sdk/ 的说明进行安装。

  • (可选)登录 Google Cloud 帐户:如果您只是在本地运行 ClusterFuzz,则无需执行此操作。


如果您计划在生产环境中设置 ClusterFuzz,则应使用 gcloud 工具对您的帐户进行身份验证:

gcloud auth application-default login gcloud auth login


3、安装Python 2.7

可以在 https://www.python.org/downloads/release/python-2715/ 这里下载并安装。


如果您已经安装了Python,则可以通过运行 python -version 来验证其版本。所需的最低版本是2.7.10。


4、安装Go

可以在 https://golang.org/doc/install 这里下载并安装。


5、安装其他依赖项

提供了一个脚本,用于在 Linux 和 macOS 上安装所有其他开发依赖项。


支持的系统包括:

Ubuntu(14.04,16.04,17.10,18.04,18.10)

Debian 8(jessie)或更高版本

macOS with homebrew(experimental)(可以在 https://brew.sh/ 这里下载安装)

运行以下脚本安装依赖项:

local/install_deps.bash


6、设置环境 virtualenv

激活由 local/install_deps.bash 脚本创建的 virtualenv。此时会加载当前环境中的所有 python 依赖项。

source ENV/bin/activate

通过运行验证一切正常:

python butler.py --help


以上是关于谷歌开源模糊测试工具:ClusterFuzz 安装方法的主要内容,如果未能解决你的问题,请参考以下文章

微软开源模糊测试工具OneFuzz

微软开源持续开发模糊测试工具OneFuzz

google为开源项目自动生成“安全分数”!

研究人员发明智能灰盒模糊测试工具 有可能开源

chrome 字体发虚模糊是因为啥

谷歌宣布Swift for TensorFlow今日开源(附安装包)