commit | 82f4ed9f5bea6f7b8b3b83245237b514768757b2 | [log] [tgz] |
---|---|---|
author | Andreas Haas <ahaas@chromium.org> | Mon Sep 21 05:38:51 2020 |
committer | Copybara-Service <copybara-worker@google.com> | Mon Sep 21 05:43:00 2020 |
tree | e1674a0bedbf27d548e6a82551978bd762a27bea | |
parent | 8255041bbf1d923822e8f5a9d4fabdec7b5a47bd [diff] |
[libfuzzer] Allow signal handlers in V8 fuzzers also with UBSAN V8 uses a signal handler to implement memory bounds checks for WebAssembly. Therefore signal handler have to be allowed in all V8 fuzzers. R=ochang@chromium.org Bug: chromium:1127927 Change-Id: Ieb43e384879cd8fdfbbcaf59b16f4f66d626bfa6 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2410485 Reviewed-by: Oliver Chang <ochang@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#808779} GitOrigin-RevId: 669befe8b54aec5b53758a92564dd91ba9d0175e
Fuzzing is a testing technique that feeds auto-generated inputs to a piece of target code in an attempt to crash the code. It's one of the most effective methods we have for finding security and stability issues (see go/fuzzing-success). You can learn more about the benefits of fuzzing at go/why-fuzz.
This documentation covers the in-process guided fuzzing approach employed by different fuzzing engines, such as libFuzzer or AFL. To learn more about out-of-process fuzzers, please refer to the Blackbox fuzzing page in the ClusterFuzz documentation.
In Chromium, you can easily create and submit fuzz targets. The targets are automatically discovered by buildbots, built with different fuzzing engines, then uploaded to the distributed ClusterFuzz fuzzing system to run at scale.
Create your first fuzz target and submit it by stepping through our Getting Started Guide.
Creating a fuzz target that expects a protobuf instead of a byte stream as input.
Reproducing bugs found by libFuzzer/AFL and reported by ClusterFuzz.
Fuzzing mojo interfaces using automatically generated libprotobuf-mutator fuzzers.