File: README.md
ClusterFuzz
ClusterFuzz is a scalable fuzzing
infrastructure that finds security and stability issues in software.
Google uses ClusterFuzz to fuzz all Google products and as the fuzzing
backend for OSS-Fuzz.
ClusterFuzz provides many features which help seamlessly integrate fuzzing into
a software project's development process:
- Highly scalable. Can run on any size cluster (e.g. OSS-Fuzz instance runs on
100,000 VMs). - Accurate deduplication of crashes.
- Fully automatic bug filing, triage and closing for various issue trackers
(e.g. Monorail, Jira). - Supports multiple coverage guided fuzzing engines
(libFuzzer, AFL, AFL++ and Honggfuzz)
for optimal results (with ensemble fuzzing and fuzzing strategies). - Support for blackbox fuzzing.
- Testcase minimization.
- Regression finding through bisection.
- Statistics for analyzing fuzzer performance, and crash rates.
- Easy to use web interface for management and viewing crashes.
- Support for various authentication providers using Firebase.
Overview
Documentation
You can find detailed documentation here.
Trophies
As of February 2023, ClusterFuzz has found ~27,000 bugs in Google (e.g. Chrome). Additionally, ClusterFuzz has helped identify and fix over 8,900 vulnerabilities and 28,000 bugs across 850 projects integrated with OSS-Fuzz.
Getting Help
You can file an issue to ask
questions, request features, or ask for help.
Staying Up to Date
We will use clusterfuzz-announce(#)googlegroups.com to make announcements about ClusterFuzz.
ClusterFuzzLite
For a more lightweight version of ClusterFuzz that runs on CI/CD
systems, check out ClusterFuzzLite.
File: docs/index.md
layout: default title: ClusterFuzz permalink: / nav_order: 1 has_children: true
ClusterFuzz
ClusterFuzz is a scalable fuzzing
infrastructure that finds security and stability issues in software.
Google uses ClusterFuzz to fuzz all Google products and as the fuzzing
backend for OSS-Fuzz.
ClusterFuzz provides many features to seamlessly integrate fuzzing into
a software project's development process:
- Highly scalable. Can run on any size cluster (e.g. Google's instance runs on
30,000 VMs). - Accurate deduplication of crashes.
- Fully automatic bug filing, triage and closing for various issue trackers
(e.g. Monorail, Jira). - Supports multiple coverage guided fuzzing engines
(libFuzzer, AFL++ and Honggfuzz)
for optimal results (with ensemble fuzzing and fuzzing strategies). - Support for blackbox fuzzing.
- Testcase minimization.
- Regression finding through bisection.
- Statistics for analyzing fuzzer performance, and crash rates.
- Easy to use web interface for management and viewing crashes.
- Support for various authentication providers using Firebase.
Trophies
As of May 2022, ClusterFuzz has found 25,000+ bugs in Google (e.g. Chrome)
and 36,000+ bugs in over 550 open source projects integrated with OSS-Fuzz.
blackbox fuzzing: {{ site.baseurl }}/setting-up-fuzzing/blackbox-fuzzing/
coverage guided fuzzing engines: {{ site.baseurl }}/setting-up-fuzzing/libfuzzer-and-afl/
fuzzing strategies: https://i.blackhat.com/eu-19/Wednesday/eu-19-Arya-ClusterFuzz-Fuzzing-At-Google-Scale.pdf#page=27
ensemble fuzzing: https://www.usenix.org/system/files/sec19-chen-yuanliang.pdf
File: docs/README.md
Prerequisites
sudo apt install ruby bundler
bundle install --path vendor/bundleServing locally
bundle exec jekyll serveTheme documentation
We are using the just the docs theme.