nsa
2b78a11b48
doc: afl fuzzing comment about afl-gcc and afl-g++
...
This commit includes a short comment in doc/fuzzing.md that gives
guidance on compiling Bitcoin Core with AFL instrumentation using
afl-gcc and afl-g++.
2020-07-05 20:55:11 -04:00
Vasil Dimov
0012471391
build: turn on --enable-c++17 by --enable-fuzz
...
Fuzzing code uses C++17 specific code (e.g. std::optional), so it is not
possible to compile with --enable-fuzz and without --enable-c++17.
Thus, turn on --enable-c++17 whenever --enable-fuzz is used.
2020-06-05 11:50:34 +02:00
Martin Zumsande
872aa25fa1
doc: add c++17-enable to fuzzing instructions
2020-05-11 01:18:17 +02:00
practicalswift
bb1ec36fb1
doc: Document how to fuzz Bitcoin Core using honggfuzz
2020-04-22 15:22:36 +00:00
practicalswift
33dd764984
doc: Add fuzzing quickstart guides for libFuzzer and afl-fuzz. Simplify instructions.
2020-03-18 22:32:01 +00:00
MarcoFalke
fa4fa88d76
doc: Remove --disable-ccache from docs
2020-03-09 11:13:48 -04:00
Fabian Jahr
b6c3e84e87
doc: Improve fuzzing docs for macOS users
2020-01-29 00:46:21 +01:00
practicalswift
595cc9bcaf
docs: Add undefined to --with-sanitizers=fuzzer,address
2019-10-30 13:34:10 +00:00
qmma
84edfc72e5
Update doc and CI config
2019-07-08 20:28:58 -04:00
MarcoFalke
fa7ca8ef58
qa: Add test/fuzz/test_runner.py
2019-02-13 17:12:28 -05:00
MarcoFalke
2ca632e5b4
test: Build fuzz targets into seperate executables
2019-01-29 19:03:06 -05:00
benthecarman
31097b7b02
docs: Spelling error fix on fuzzing.md
2019-01-16 20:25:51 -06:00
MarcoFalke
fad058a79f
build: Allow to configure --with-sanitizers=fuzzer
2019-01-05 19:06:03 +01:00
practicalswift
693247b82b
[test] Speed up fuzzing by ~200x when using afl-fuzz
...
Enable the `afl-clang-fast++` features deferred forkserver (`__AFL_INIT`) and persistent mode (`__AFL_LOOP(1000)`).
Before this patch:
```
$ afl-fuzz -i input -o output -m512 -- src/test/test_bitcoin_fuzzy
[*] Validating target binary...
[!] WARNING: The target binary is pretty slow! See /usr/local/share/doc/afl/perf_tips.txt.
[+] Here are some useful stats:
Test case count : 1 favored, 0 variable, 1 total
Bitmap range : 1072 to 1072 bits (average: 1072.00 bits)
Exec timing : 20.4k to 20.4k us (average: 20.4k us)
…
exec speed : 57.58/sec (slow!)
exec speed : 48.35/sec (slow!)
exec speed : 53.78/sec (slow!)
```
After this patch:
```
$ afl-fuzz -i input -o output -m512 -- src/test/test_bitcoin_fuzzy
[*] Validating target binary...
[+] Persistent mode binary detected.
[+] Deferred forkserver binary detected.
[+] Here are some useful stats:
Test case count : 1 favored, 0 variable, 1 total
Bitmap range : 24 to 24 bits (average: 24.00 bits)
Exec timing : 114 to 114 us (average: 114 us)
…
exec speed : 15.9k/sec
exec speed : 13.1k/sec
exec speed : 15.1k/sec
```
2017-05-19 07:28:46 +02:00
Wladimir J. van der Laan
8b15434b59
doc: Add bare-bones documentation for fuzzing
2016-12-15 13:29:03 +01:00