Skip to content

Commit 4fd2cb2

Browse files
committed
update idea list
1 parent e234a6a commit 4fd2cb2

File tree

1 file changed

+8
-28
lines changed

1 file changed

+8
-28
lines changed

docs/ideas.md

Lines changed: 8 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ for future AFL++ versions.
66
For GSOC2020 interested students please see
77
[https://github.com/AFLplusplus/AFLplusplus/issues/208](https://github.com/AFLplusplus/AFLplusplus/issues/208)
88

9-
## Flexible Grammar Mutator
9+
## Flexible Grammar Mutator (currently in development)
1010

1111
Currently, AFL++'s mutation does not have deeper knowledge about the fuzzed
1212
binary, apart from feedback, even though the developer may have insights
@@ -25,41 +25,21 @@ various results.
2525

2626
Mentor: andreafioraldi
2727

28-
## Expand on the MOpt mutator
29-
30-
Work on the MOpt mutator that is already in AFL++.
31-
32-
This is an excellent mutations scheduler based on Particle Swarm
33-
Optimization but the current implementation schedule only the mutations
34-
that were present on AFL.
35-
36-
AFL++ added a lot of optional mutators like the Input-2-State one based
37-
on Redqueen, the Radamsa mutator, the Custom mutator (the user can define
38-
its own mutator) and the work is to generalize MOpt for all the current
39-
and future mutators.
40-
41-
Mentor: vanhauser-thc or andreafioraldi
42-
4328
## perf-fuzz Linux Kernel Module
4429

45-
Either Port the patch to the upcoming Ubuntu LTS 20.04 default kernel
46-
and provide a qemu-kvm image or find a different userspace snapshot
47-
solution that has a good performance and is reliable, e.g. with docker.
48-
[perf-fuzz](https://gts3.org/assets/papers/2017/xu:os-fuzz.pdf)
49-
The perf-fuzz kernel can be found at [https://github.com/sslab-gatech/perf-fuzz](https://github.com/sslab-gatech/perf-fuzz)
50-
There also is/was a FreeBSD project at [https://github.com/veracode-research/freebsd-perf-fuzz](https://github.com/veracode-research/freebsd-perf-fuzz)
51-
52-
This enables snapshot fuzzing on Linux with an incredible performance!
30+
Expand on [snapshot LKM](https://github.com/AFLplusplus/AFL-Snapshot-LKM)
31+
To make it thread safe, can snapshot several processes at aonce and increase
32+
overall performance.
5333

5434
Mentor: any
55-
Idea/Issue tracker: [https://github.com/AFLplusplus/AFLplusplus/issues/248](https://github.com/AFLplusplus/AFLplusplus/issues/248)
5635

57-
## QEMU 4-based Instrumentation
36+
## QEMU 5-based Instrumentation
5837

5938
First tests to use QEMU 4 for binary-only AFL++ showed that caching behavior
6039
changed, which vastly decreases fuzzing speeds.
6140

62-
This is the cause why, right now, we cannot switch to QEMU 4.2.
41+
In this task test if QEMU 5 performs better and port the afl++ QEMU 3.1
42+
patches to QEMU 5.
6343

6444
Understanding the current instrumentation and fixing the current caching
6545
issues will be needed.
@@ -86,7 +66,7 @@ Either improve a single mutator thorugh learning of many different bugs
8666

8767
Mentor: domenukk
8868

89-
## Reengineer `afl-fuzz` as Thread Safe, Embeddable Library
69+
## Reengineer `afl-fuzz` as Thread Safe, Embeddable Library (currently in development)
9070

9171
Right now, afl-fuzz is single threaded, cannot safely be embedded in tools,
9272
and not multi-threaded. It makes use of a large number of globals, must always

0 commit comments

Comments
 (0)