[07:40] <yrp> the real solution is to cowboy up and patch your program
[07:40] <yrp> (i know its not you who wants this)
[07:41] <yrp> (but that would be an appropriate response imo)
[07:41] <yrp> esp. with afl, because it mostly presume source code access
[07:42] <bnagy> yeah
[07:42] <bnagy> I think "file needs a certain extension" is legit though
[07:43] <yrp> I mean, Id still say just patch it =p, but Im used to hacking up targets I guess
[07:43] <bnagy> hm
[07:44] <bnagy> ok you convinced me :P
--- next day---
[12:47] <d33tah> yrp: i wish we had a spot that aggregated this kind of patches for open source projects - so that I could pull somebody's afl-fuzz work, add my idea for an input test case and continue your fuzzing
[12:47] <d33tah> i'm discussing it with Hanno Böck righ tnow
[12:51] <d33tah> also i wish that i could in some cases just add a repository for projects already built with afl-fuzz instrumentation add ASAN
[13:03] <Chadk> Somebody needs to put together some good infrastructure solution to utilize docker for fuzzing. I.e. docker files to spin up afl and some project
[13:03] <Chadk> Which syncs the progress data to a central location and such
[13:03] <Chadk> Just to avoid the nastyness of dependencies and such
[13:47] <d33tah> Chadk: could you describe this idea on afl-users mailing list?
I think the idea would be that a set of scripts could be created that would spin up a docker instance like:
1. Pull all dependencies for the program and AFL
2. Download source
3. Compile it as needed for AFL(With patches, persistent, etc)
4. Push test cases specified by the user into the instance
5. Start running AFL
6. Push state to the outside host on a regular basis to allow for resuming and such
This would have some benefits:
- Makes it easy to share templates for how to fuzz specific programs. If people have a lot of spare hardware sitting around but not the time to set everything up, this would make it easy to pull a template and go fuzzing
- It would solve dependency problems if you're fuzzing multiple programs on the same system
- Could make it really easy to fuzz different versions of a program
So if this is something people are already doing or want an idea to do something that seems like it could be cool, here you go!