Skip to content
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

Extend support go 1.18 - native fuzzing #7020

Closed
naveensrinivasan opened this issue Dec 15, 2021 · 5 comments
Closed

Extend support go 1.18 - native fuzzing #7020

naveensrinivasan opened this issue Dec 15, 2021 · 5 comments
Assignees

Comments

@naveensrinivasan
Copy link
Contributor

With go 1.18 there is going to be native support fuzzing. Will oss-fuzz support native fuzzing?

@DavidKorczynski
Copy link
Collaborator

DavidKorczynski commented Dec 15, 2021

Yes, this is in the works and we're looking to be ready when the 1.18 is released.

@naveensrinivasan
Copy link
Contributor Author

Cool! Thanks. Keeping it open till it is released.

@thepudds
Copy link

thepudds commented Jan 6, 2022

Hi there 👋, is this something that a first-time oss-fuzz contributor might be able to do?

If so, I have some interest in taking a stab at it...

One related question: is the intent to also to continue to support the current libFuzzer based approach (in addition to new native Go 1.18 fuzzing support)? That seems desirable, including while the native Go fuzzing is maturing, but it is also nice to have different engines.

I don't know what the planned approach is for adding native Go fuzzing support here, but perhaps there could be an option to compile_go_fuzzer to pick the engine, or two parallel scripts, or similar?

@DavidKorczynski
Copy link
Collaborator

DavidKorczynski commented Jan 6, 2022

There is a PoC here: #7055 - atm we are awaiting discussions with the Go Fuzz team, but right after then we will complete the intergation

@thepudds we're already working on this so we should watch out for avoiding double work - nice new initial integrations of critical projects are always highly appreciated!

@DavidKorczynski
Copy link
Collaborator

#7055 has been merged, so native fuzzing is now supported by OSS-Fuzz.

Several native go fuzzers are running in OSS-Fuzz now, e.g. a Kubernetes example https://github.com/cncf/cncf-fuzzing/blob/main/projects/kubernetes/native_go_parser_fuzzers_test.go

Documentation: https://google.github.io/oss-fuzz/getting-started/new-project-guide/go-lang/#native-go-fuzzing-support

Closing this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants