LibAFL
LibAFL copied to clipboard
Migrate libafl_libfuzzer to centralised LLMP
Centralised LLMP has significantly better performance than default LLMP. We should transition libafl_libfuzzer to centralised LLMP.
This might be a bit of a harder first issue because libafl_libfuzzer has a (necessity-driven) complex design. If you decide to do this, please feel free to ask questions here or in the discord.
@addisoncrump , can you describe what do you want to change ? I understand that LLMP refers to low level message passing mechanism but I don't know about centralised LLMP.
Please refer to the documentation: https://docs.rs/libafl/latest/libafl/events/centralized/index.html
Hi @addisoncrump , I skimmed through the documentation and feel like contributing towards this issue. Could you assign me this one? I'll give my best!
Hey, we don't really assign issues directly since we have a low-throughput here (and several people who offer to contribute towards a specific issue end up not doing so :sweat_smile:). Please just open a PR when you've made some progress and we'll attach it to the issue. Thanks!
I read the documentation and understood from the video that the eventManager is required to communicate the current state of runtime and of the fuzzer to all the cores currently working on it and also to other parts like mutators, executors etc.
From what I understand , currently libafl_libfuzzer
uses SimpleEventManager
as I observed in the runtime files for the libfuzzer
, so we need to migrate it to use CentralizedEventManager
, how do I start this, if you can guide me a bit? @addisoncrump
Okay, since there are two people who want to complete this issue, I will assign @gerceboss since they were here first; if it's not completed/attempted within the next week, I'll re-assign.
@gerceboss: No, the issue is that for when we use LLMP, we should instead use centralised.
No movement on this... I'm going to just assign myself this, then.