-
Notifications
You must be signed in to change notification settings - Fork 6
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 report directory functionality for Grimoire #13
Conversation
Report funtionality is need to make Grimoire compatible with FuzzBench.
This change should work together with google/fuzzbench#2048 |
I saw that the report functionality existed before, but it was removed in a35b347 (but due to the lack of commit message, I don't understand the reason). However, without this change the FuzzBench setup fails either because of the missing |
I deleted it because iirc we don't need the dumpstage.
I saw your PR on fuzzbench.
Also this code is actually doing nothing, because it is transforming BytesInput (in the corpus) to BytesInput (in the disk) I'll double check this with andrea |
@tokatoka thanks for looking into it. I tried to run the newly added mruby benchmark of FuzzBench. First if failed due to the wrong parameters. When I applied this change - which removes the grammar and report parameter and adds the input corpus argument - --- a/fuzzers/grimoire/fuzzer.py
+++ b/fuzzers/grimoire/fuzzer.py
@@ -77,6 +77,6 @@ def fuzz(input_corpus, output_corpus, target_binary):
grammar = os.path.join(os.environ['OUT'], 'grammar.json')
out = os.path.join(os.environ['OUT'], 'out')
os.mkdir(out)
- command += (['-r', output_corpus, '-o', out, '-g', grammar])
+ command += (['-i', input_corpus, '-o', output_corpus])
print(command)
subprocess.check_call(command, cwd=os.environ['OUT']) then my archive corpus contained a |
yes but this is not related to grimoire. it's a very generic metadata used in libafl.
I think for nautilus we have |
i think the reason it failed that your failed is because fuzzers/grimoire is not updated. you can just use the setup i used here #14 |
@tokatoka I tried copying and pasting the mentioned Grimoire config files (build.Dockerfile, runner.Dockerfile, and runner.py) into the latest FuzzBench master. I also tried checking out your fork at the suggested revision, but the build failed in both cases. The master had Rust compatibility issues, while the old revision also had build problems. I would really like to measure the performance of Grimoire, but I am not familiar with either Grimoire or Rust, so I have been struggling with it for days without success. Is there any chance you could update Grimoire to work on the latest master of FuzzBench? |
Sorry for being late. I had other stuff to do last two weeks. I pushed the fuzzer using this repo's grimoire on to https://github.com/AFLplusplus/fuzzbench (check the latest commit) Then if you see your fuzzer stuck again, can you attach with gdb to see and paste the backtrace? |
Report funtionality is need to make Grimoire compatible with FuzzBench.