-
Notifications
You must be signed in to change notification settings - Fork 232
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
Improve verifier fuzzer #3431
Merged
Merged
Improve verifier fuzzer #3431
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
Alan-Jowett
requested review from
dthaler,
poornagmsft,
saxena-anurag,
shankarseal,
dv-msft,
gtrevi,
shpalani,
matthewige,
mtfriesen and
rectified95
as code owners
April 4, 2024 23:26
dv-msft
reviewed
Apr 15, 2024
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
dv-msft
previously approved these changes
Apr 19, 2024
dthaler
reviewed
Apr 19, 2024
Co-authored-by: Dave Thaler <dthaler1968@gmail.com>
dv-msft
previously approved these changes
Apr 19, 2024
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
…-for-windows into improve_verifier_fuzzer
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
mikeagun
approved these changes
Apr 19, 2024
dthaler
approved these changes
Apr 19, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This pull request mainly focuses on enhancing the verifier fuzzer. It uses additional entropy from the libfuzzer to seed program data being passed to the programs when they are executed.
Enhancements to Fuzzing:
Directory.Build.props
: Updated theAdditionalOptions
for bothRelease|True
andDebug|True
configurations to include/fsanitizer=fuzzer
which enables the fuzzer.Updates to Test Harness:
tests/libfuzzer/verifier_fuzzer/libfuzz_harness.cpp
: Included the ELFIO library for handling ELF files.tests/libfuzzer/verifier_fuzzer/libfuzz_harness.cpp
: Updated theLLVMFuzzerTestOneInput
function to treat the input data as an ELF file and a block of data to be passed to the program. The function now loads the ELF file and runs each program in the ELF file with the data as input.tests/libfuzzer/verifier_fuzzer/libfuzz_harness.cpp
: Added code to read the ELF file from the stream to determine its length. All data after the ELF file is considered the data to be passed to the program.tests/libfuzzer/verifier_fuzzer/libfuzz_harness.cpp
: Updated the function to copy the remaining data into theprogram_data
buffer. The size of the data read is stored inprogram_data_size
.tests/libfuzzer/verifier_fuzzer/libfuzz_harness.cpp
: Modified the success message of the program run to include the size of the data used.Testing
CI/CD
Documentation
No.
Installation
No.,