diff options
author | vanhauser-thc <vh@thc.org> | 2021-02-10 17:56:27 +0100 |
---|---|---|
committer | vanhauser-thc <vh@thc.org> | 2021-02-10 17:56:27 +0100 |
commit | 5b2634f711e95b48b6105d3cac659e51706ff4e9 (patch) | |
tree | b6100aad145f05b63ba6286c5487c75006321a4c /docs/ideas.md | |
parent | 267b085f80074e61bdacf1e85e99014b6b2cdad2 (diff) | |
download | afl++-5b2634f711e95b48b6105d3cac659e51706ff4e9.tar.gz |
update changelog + ideas
Diffstat (limited to 'docs/ideas.md')
-rw-r--r-- | docs/ideas.md | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/docs/ideas.md b/docs/ideas.md index 7cbe60a5..08cb16ef 100644 --- a/docs/ideas.md +++ b/docs/ideas.md @@ -3,6 +3,40 @@ In the following, we describe a variety of ideas that could be implemented for future AFL++ versions. +# GSoC 2021 + +All GSoC 2021 projects will be in the Rust development language! + +## UI for libaflrs + +Write a user interface to libaflrs, the upcoming backend of afl++. +This might look like the afl-fuzz UI, but you can improve on it - and should! + +## Schedulers for libaflrs + +Schedulers is a mechanism that selects items from the fuzzing corpus based +on strategy and randomness. One scheduler might focus on long paths, +another on rarity of edges disocvered, still another on a combination on +things. Some of the schedulers in afl++ have to be ported, but you are free +to come up with your own if you want to - and see how it performs. + +## Forkserver support for libaflrs + +The current libaflrs implementation fuzzes in-memory, however obviously we +want to support afl instrumented binaries as well. +Hence a forkserver support needs to be implemented - forking off the target +and talking to the target via a socketpair and the communication protocol +within. + +## More Observers for libaflrs + +An observer is measuring functionality that looks at the target being fuzzed +and documents something about it. In traditional fuzzing this is the coverage +in the target, however we want to add various more observers, e.g. stack depth, +heap usage, etc. - this is a topic for an experienced Rust developer. + +# Generic ideas and wishlist + ## Analysis software Currently analysis is done by using afl-plot, which is rather outdated. |