-
Notifications
You must be signed in to change notification settings - Fork 114
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support fuzzing without sanitizers #158
Comments
We need to build with sanitizers to get the hooks that make libfuzzer work
…On Sat, Jun 23, 2018, 4:15 PM Shnatsel ***@***.***> wrote:
There are use cases for fuzzing binaries with cargo-fuzz without
sanitizers:
1. Fuzzing entirely safe code to test for panics
2. Building initial corpus to feed it to more resource-intensive
fuzzers later on
However, this is not currently possible with cargo-fuzz: passing no -s
flag defaults to address sanitizer, passing "" has no effect, passing
"none" says there's no such sanitizer.
For now I'm forced to use leak sanitizer, which seems to be the least
resource-hungry of the bunch, but it still introduces a performance
penalty. It would be nice to be able to disable sanitizers altogether.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#158>, or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABivSNsmVLHTyKsrr_FRfpxbbLvV1X0Cks5t_swYgaJpZM4U09g->
.
|
According to libfuzzer documentation you only need Or is this something specific to Rust? |
For the record, I can say that it's not related to Rust because honggfuzz-rs works well with and without sanitizer. |
No, I think that sanitize option did not exist or was not recommended in the libfuzzer docs when I wrote this crate. Feel free to make it the default. |
I think changing the default should result in a major version bump, since it would effectively break existing deployments e.g. on CI that expect Address Sanitizer to be the default. |
libFuzzer, however, doesn't seem to support our approach anymore:
In other words, this doesn't seem feasible unless we add support in rustc. |
For C/C++, |
This is supported in latest release:
Closing. |
There are use cases for fuzzing binaries with cargo-fuzz without sanitizers:
However, this is not currently possible with cargo-fuzz: passing no
-s
flag defaults to address sanitizer, passing "" has no effect, passing "none" says there's no such sanitizer.For now I'm forced to use leak sanitizer, which seems to be the least resource-hungry of the bunch, but it still introduces a performance penalty. It would be nice to be able to disable sanitizers altogether.
The text was updated successfully, but these errors were encountered: