aboutsummaryrefslogtreecommitdiff
path: root/BUILD.gn
diff options
context:
space:
mode:
authorCalder Kitagawa <ckitagawa@chromium.org>2018-05-17 21:07:49 +0000
committerEdward Lesmes <ehmaldonado@google.com>2021-07-23 22:36:08 +0000
commit1bed19c017ffd98c6448e352d564b8583b4862b1 (patch)
tree954da0e96c0077da447ffd6cd513c9a3e6ebbb88 /BUILD.gn
parent11c1b2a45984f0f16a3e043bdc55bc9532227056 (diff)
downloadzucchini-1bed19c017ffd98c6448e352d564b8583b4862b1.tar.gz
[Zucchini] (raw) Gen Fuzzer
This is part of a series of Fuzzers to be added to Zucchini for security review. This tests the raw data patch generation logic exercising the patch writer and gen process. It only covers ~20% of code in 100000 executions as the bulk of the remaining code is associated with the much more complex and expensive to fuzz reference related code. With the supplied seed corpus the fuzzer reaches approximately 5000 execs/s. There were no bug/stability issues found in raw gen. The file format for the seed is a FilePair proto as used in raw Apply; however, it is static so doesn't need regeneration. The files within the FilePair seed are ZTF (Zucchini Text Format) files based on the code that will be landed in: https://chromium-review.googlesource.com/c/chromium/src/+/1056147 This way the source files can be reused in the ZTF gen and apply fuzzers which will be used to more efficiently fuzz the reference handling code in Zucchini. Remaining Security Review Fuzzers (For Windows Launch) - ZTF Gen - ZTF Apply (ZTF = Zucchini text format) Note that suffix array while originally discussed is already implictly fuzzed by this fuzzer and as such shouldn't require a standalone fuzzer. Other remaining fuzzers (Not shipped so non-blocking of Windows Launch) - Disassembler DEX - Disassembler ELF (when merged from Trunk) To create the seed file pair run the following from components/zucchini/fuzzers/ ./create_seed_file_pair.py ../../../out/Release/protoc \ testdata/old.ztxt testdata/new.ztxt testdata/seed_proto.bin Note: you need to first build protoc in out/Release/ Bug: 835341 Change-Id: I1bf5c2a4251093bbf5bfc92904afc376a2832dbd Reviewed-on: https://chromium-review.googlesource.com/1062412 Commit-Queue: Calder Kitagawa <ckitagawa@chromium.org> Reviewed-by: Samuel Huang <huangs@chromium.org> Reviewed-by: Max Moroz <mmoroz@chromium.org> Cr-Commit-Position: refs/heads/master@{#559676} NOKEYCHECK=True GitOrigin-RevId: 133fb1221e6c293dc43ff438567b2834b2e5c798
Diffstat (limited to 'BUILD.gn')
-rw-r--r--BUILD.gn5
1 files changed, 4 insertions, 1 deletions
diff --git a/BUILD.gn b/BUILD.gn
index 49f54fb..af16559 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -212,6 +212,9 @@ group("zucchini_fuzzers") {
# Ensure protoc is available.
if (current_toolchain == host_toolchain) {
- deps += [ "//components/zucchini/fuzzers:zucchini_raw_apply_fuzzer" ]
+ deps += [
+ "//components/zucchini/fuzzers:zucchini_raw_apply_fuzzer",
+ "//components/zucchini/fuzzers:zucchini_raw_gen_fuzzer",
+ ]
}
}