Skip to content
This repository has been archived by the owner on Apr 30, 2021. It is now read-only.

Crash analysis - more info about crash in/from LibAFL #44

Open
marcinguy opened this issue Oct 7, 2020 · 2 comments
Open

Crash analysis - more info about crash in/from LibAFL #44

marcinguy opened this issue Oct 7, 2020 · 2 comments

Comments

@marcinguy
Copy link

Wrote a harness to fuzz a lib using LibAFL.

I get a crash within LibAFL, but cannot reproduce it outside LibAFL (almost identical harness ... outside LibAFL I added just main() function)

Would be great if LibAFL could save stacktrace, registers along the crashfile etc during the observed crash to debug it.

Could be that it is an issue in my harness or LibAFL.

Having this info would help to debug issues with harnesses, also for other projects and other users.

Thanks,

P.S Cool project

@vanhauser-thc
Copy link
Member

Hi Marcin!
are you using libaflfuzzer.a ?
If a crash is not reproducible it is most likely that there is a) a race condition in the target or b) increased resource usage that is not freed that lead to a crash.
Please note that basically any other fuzzer out there is currently better, as a lot of important features are missing.
We are still experimenting with the API before we do the heavy lifting.

@marcinguy
Copy link
Author

@vanhauser-thc yes, libaflfuzzer.a

I lean towards a)

Weird is that paths don't increase also. Crashes, few, always happen at the beginning.

Fuzzing with similar harness in aflpp and libfuzzer paths do increase.

A way to start fuzzer in some mode, since I can imagine it can be perf kill, to get more info about crash would be great. This can help in building harnesses, debug this kind of issues. Wdyt?

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

No branches or pull requests

2 participants