aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorvan Hauser <vh@thc.org>2021-03-01 10:13:31 +0100
committerGitHub <noreply@github.com>2021-03-01 10:13:31 +0100
commit41788950ccb99e8d2bdc274916ce815bf3d5035c (patch)
tree9b2335f357e84e18e4c8259581360923921ca8b2 /docs
parent78d96c4dc86ac20e2a6e244017407ccc037ff13b (diff)
parentbd0a23de73011a390714b9f3836a46443054fdd5 (diff)
downloadafl++-41788950ccb99e8d2bdc274916ce815bf3d5035c.tar.gz
Merge pull request #771 from AFLplusplus/stable
v3.10c
Diffstat (limited to 'docs')
-rw-r--r--docs/Changelog.md15
-rw-r--r--docs/custom_mutators.md5
-rw-r--r--docs/docs.md33
3 files changed, 45 insertions, 8 deletions
diff --git a/docs/Changelog.md b/docs/Changelog.md
index c4347baf..f3e15b6a 100644
--- a/docs/Changelog.md
+++ b/docs/Changelog.md
@@ -9,7 +9,7 @@ Want to stay in the loop on major new features? Join our mailing list by
sending a mail to <afl-users+subscribe@googlegroups.com>.
-### Version ++3.01a (dev)
+### Version ++3.10c (release)
- Mac OS ARM64 support
- Android support fixed and updated by Joey Jiaojg - thanks!
- New selective instrumentation option with __AFL_COVERAGE_* commands
@@ -42,16 +42,17 @@ sending a mail to <afl-users+subscribe@googlegroups.com>.
- switched to an even faster RNG
- added hghwng's patch for faster trace map analysis
- printing suggestions for mistyped `AFL_` env variables
+ - added Rust bindings for custom mutators (thanks @julihoh)
- afl-cc
- allow instrumenting LLVMFuzzerTestOneInput
- fixed endless loop for allow/blocklist lines starting with a
comment (thanks to Zherya for reporting)
- cmplog/redqueen now also tracks floating point, _ExtInt() + 128bit
- cmplog/redqueen can now process basic libc++ and libstdc++
- std::string comparisons (though no position or length type variants)
- - added support for __afl_coverage_interesting() for LTO and
- and our own PCGUARD (llvm 10.0.1+), read more about this function
- and selective coverage in instrumentation/README.instrument_list.md
+ std::string comparisons (no position or length type variants)
+ - added support for __afl_coverage_interesting() for LTO and our
+ own PCGUARD (llvm 10.0.1+), read more about this function and
+ selective coverage in instrumentation/README.instrument_list.md
- added AFL_LLVM_INSTRUMENT option NATIVE for native clang pc-guard
support (less performant than our own), GCC for old afl-gcc and
CLANG for old afl-clang
@@ -67,12 +68,12 @@ sending a mail to <afl-users+subscribe@googlegroups.com>.
- unicornafl
- Substantial speed gains in python bindings for certain use cases
- Improved rust bindings
- - Added a new example harness to compare python, c, and rust bindings
+ - Added a new example harness to compare python, c and rust bindings
- afl-cmin and afl-showmap now support the -f option
- afl_plot now also generates a graph on the discovered edges
- changed default: no memory limit for afl-cmin and afl-cmin.bash
- warn on any _AFL and __AFL env vars.
- - set AFL_IGNORE_UNKNOWN_ENVS to not warn on unknown AFL_... env vars.
+ - set AFL_IGNORE_UNKNOWN_ENVS to not warn on unknown AFL_... env vars
- added dummy Makefile to instrumentation/
- Updated utils/afl_frida to be 5% faster, 7% on x86_x64
- Added `AFL_KILL_SIGNAL` env variable (thanks @v-p-b)
diff --git a/docs/custom_mutators.md b/docs/custom_mutators.md
index a2c544e3..61d711e4 100644
--- a/docs/custom_mutators.md
+++ b/docs/custom_mutators.md
@@ -4,6 +4,11 @@ This file describes how you can implement custom mutations to be used in AFL.
For now, we support C/C++ library and Python module, collectivelly named as the
custom mutator.
+There is also experimental support for Rust in `custom_mutators/rust`.
+Please refer to that directory for documentation.
+Run ```cargo doc -p custom_mutator --open``` in that directory to view the
+documentation in your web browser.
+
Implemented by
- C/C++ library (`*.so`): Khaled Yakdan from Code Intelligence (<yakdan@code-intelligence.de>)
- Python module: Christian Holler from Mozilla (<choller@mozilla.com>)
diff --git a/docs/docs.md b/docs/docs.md
index 0f98bd54..ed6ec85e 100644
--- a/docs/docs.md
+++ b/docs/docs.md
@@ -63,6 +63,31 @@ The project does not require writing new documentation or tutorials beside the
cheat sheet. The technical information for the cheat sheet will be provided by
us.
+## Metrics
+
+afl++ is a the highest performant fuzzer publicly available - but is also the
+most feature rich and complex. With the publicity of afl++' success and
+deployment in Google projects internally and externally and availability as
+a package on most Linux distributions we see more and more issues being
+created and help requests on our Discord channel that would not be
+necessary if people would have read through all our documentation - which
+is unrealistic.
+
+We expect the the new documenation after this project to be cleaner, easier
+accessible and lighter to digest by our users, resulting in much less
+help requests. On the other hand the amount of users using afl++ should
+increase as well as it will be more accessible which would also increase
+questions again - but overall resulting in a reduction of help requests.
+
+In numbers: we currently have per week on average 5 issues on Github,
+10 questions on discord and 1 on mailing lists that would not be necessary
+with perfect documentation and perfect people.
+
+We would consider this project a success if afterwards we only have
+2 issues on Github and 3 questions on discord anymore that would be answered
+by reading the documentation. The mailing list is usually used by the most
+novice users and we don't expect any less questions there.
+
## Project Budget
We have zero experience with technical writers, so this is very hard for us
@@ -70,13 +95,19 @@ to calculate. We expect it to be a lot of work though because of the amount
of documentation we have that needs to be restructured and partially rewritten
(44 documents with 13k total lines of content).
+We assume the daily rate of a very good and experienced technical writer in
+times of a pandemic to be ~500$ (according to web research), and calculate
+the overall amout of work to be around 20 days for everything incl. the
+graphics (but again - this is basically just guessing).
+
Technical Writer 10000$
Volunteer stipends 0$ (waved)
T-Shirts for the top 10 contributors and helpers to this documentation project:
10 afl++ logo t-shirts 20$ each 200$
10 shipping cost of t-shirts 10$ each 100$
-
+
Total: 10.300$
+(in the submission form 10.280$ was entered)
## Additional Information