aboutsummaryrefslogtreecommitdiff
path: root/docs/fuzzing_binary-only_targets.md
diff options
context:
space:
mode:
authorllzmb <46303940+llzmb@users.noreply.github.com>2022-01-20 20:35:19 +0100
committerllzmb <46303940+llzmb@users.noreply.github.com>2022-01-20 20:35:19 +0100
commit29f8040f09fd08ebcc24e2551a321c78e8f7311a (patch)
tree19e4e8b8d6266a4287f55401d5426692f3b6ec84 /docs/fuzzing_binary-only_targets.md
parent029bfc386f3a164482a29d51bcd2e646c5d06d5c (diff)
downloadAFLplusplus-29f8040f09fd08ebcc24e2551a321c78e8f7311a.tar.gz
Fix formatting and line length
Diffstat (limited to 'docs/fuzzing_binary-only_targets.md')
-rw-r--r--docs/fuzzing_binary-only_targets.md23
1 files changed, 12 insertions, 11 deletions
diff --git a/docs/fuzzing_binary-only_targets.md b/docs/fuzzing_binary-only_targets.md
index 32e6c6c2..1a2b27c7 100644
--- a/docs/fuzzing_binary-only_targets.md
+++ b/docs/fuzzing_binary-only_targets.md
@@ -14,6 +14,7 @@ fuzzed with AFL++.
FRIDA mode and QEMU mode in persistent mode are the fastest - if persistent mode
is possible and the stability is high enough.
+
Otherwise, try Zafl, RetroWrite, Dyninst, and if these fail, too, then try
standard FRIDA/QEMU mode with `AFL_ENTRYPOINT` to where you need it.
@@ -127,13 +128,13 @@ Working examples already exist :-)
### Nyx mode
-Nyx is a full system emulation fuzzing environment with snapshot support that
-is built upon KVM and QEMU.
-It is only available on Linux and currently restricted to x86_x64.
+Nyx is a full system emulation fuzzing environment with snapshot support that is
+built upon KVM and QEMU. It is only available on Linux and currently restricted
+to x86_x64.
For binary-only fuzzing a special 5.10 kernel is required.
-See [nyx_mode/README.md](../nyx_mode/README.md)
+See [nyx_mode/README.md](../nyx_mode/README.md).
### Unicorn
@@ -198,15 +199,15 @@ afl-clang-fast's.
### RetroWrite
-RetroWrite is a static binary rewriter that can be combined with AFL++.
-If you have an x86_64 binary that still has its symbols (i.e., not stripped binary),
-is compiled with position independent code (PIC/PIE), and does not contain C++ exceptions,
-then the RetroWrite solution might be for you. It decompiles to ASM files which
-can then be instrumented with afl-gcc.
+RetroWrite is a static binary rewriter that can be combined with AFL++. If you
+have an x86_64 binary that still has its symbols (i.e., not stripped binary), is
+compiled with position independent code (PIC/PIE), and does not contain C++
+exceptions, then the RetroWrite solution might be for you. It decompiles to ASM
+files which can then be instrumented with afl-gcc.
Binaries that are statically instrumented for fuzzing using RetroWrite are close
-in performance to compiler-instrumented binaries and outperform
-the QEMU-based instrumentation.
+in performance to compiler-instrumented binaries and outperform the QEMU-based
+instrumentation.
[https://github.com/HexHive/retrowrite](https://github.com/HexHive/retrowrite)