78 Commits

Author SHA1 Message Date
WorksButNotTested
bf9a155418
Support for excluding JIT code (#1006)
Co-authored-by: Your Name <you@example.com>
2021-07-06 09:09:31 +02:00
WorksButNotTested
f348a35ec6
Added JS support (#992)
* Added JS support

* Added some documentation

Co-authored-by: Your Name <you@example.com>
2021-06-24 19:46:08 +02:00
WorksButNotTested
b9f260452e
Improve tracing support to include real addresses and edge ids and also support logging edges only once (#972)
Co-authored-by: Your Name <you@example.com>
2021-06-11 10:51:47 +02:00
WorksButNotTested
b8092c6227
FRIDA - Remove need for AFL_FRIDA_PERSISTENT_RETADDR_OFFSET (#970)
Co-authored-by: Your Name <you@example.com>
2021-06-10 10:07:21 +02:00
hexcoder
97a1f89881
Merge branch 'dev' into going_atomic 2021-05-31 19:18:24 +02:00
hexcoder-
c9539aa6b7 support new env var AFL_LLVM_THREADSAFE_INST to enable atomic counters.
add new test case for that.
2021-05-30 11:45:11 +02:00
WorksButNotTested
6883605d13
Support writing Stalker stats (#945)
* Support writing Stalker stats

* Fixed string handling in print functions

Co-authored-by: Your Name <you@example.com>
2021-05-29 00:43:14 +02:00
WorksButNotTested
f677be5e86
Support for AFL_FRIDA_PERSISTENT_RET (#941)
Co-authored-by: Your Name <you@example.com>
2021-05-27 22:33:44 +02:00
vanhauser-thc
87b16c4460 add AFL_TRY_AFFINITY 2021-05-25 10:45:24 +02:00
Dominik Maier
cdae3d3d03 cleaned up AFL_PRINT_FILENAMES env 2021-05-19 22:21:46 +02:00
WorksButNotTested
e40c0c2da1
FASAN Support (#918)
* FASAN Support

* Fix handling of Address Sanitizer DSO

* Changes to identification of Address Sanitizer DSO

Co-authored-by: Your Name <you@example.com>
2021-05-17 20:02:45 +02:00
Roman M. Iudichev
069e61dfc6
Exit on time (#904)
* Variable AFL_EXIT_ON_TIME description has been added.
Variables AFL_EXIT_ON_TIME and afl_exit_on_time has been added.
afl->exit_on_time variable initialization has been added.
The asignment of a value to the afl->afl_env.afl_exit_on_time variable from
environment variables has been added.
Code to exit on timeout if new path not found has been added.

* Type of afl_exit_on_time variable has been changed.
Variable exit_on_time has been added to the afl_state_t structure.

* Command `export AFL_EXIT_WHEN_DONE=1` has been added.

* Millisecond to second conversion has been added.
Call get_cur_time() has been added.

* Revert to using the saved current time value.

* Useless check has been removed.
2021-05-07 17:32:17 +02:00
WorksButNotTested
39ad3b8946
Frida persistent (#880)
* Added x64 support for persistent mode (function call only), in-memory teest cases and complog

* Review changes, fix NeverZero and code to parse the .text section of the main executable. Excluded ranges TBC

* Various minor fixes and finished support for AFL_INST_LIBS

* Review changes

Co-authored-by: Your Name <you@example.com>
2021-04-28 10:25:26 +02:00
vanhauser-thc
be880f2476 add AFL_EXIT_ON_SEED_ISSUES 2021-04-13 13:01:50 +02:00
vanhauser-thc
2e6e1e566b add missing env 2021-04-06 22:16:56 +02:00
van Hauser
c23183f1dc
Merge pull request #855 from MegaManSec/leak-sanitizer
Add support for standalone leak-sanitizer
2021-04-04 15:28:42 +02:00
Joshua Rogers
920e9402a4 Add support for standalone leak-sanitizer, introducting the environment
variable AFL_USE_LSAN.

AFL_USE_LSAN introduces the macro __AFL_CHECK_LEAK() which will check
for a memory leak when the macro is run. This is especially helpful
when using __AFL_LOOP().

If __AFL_LEAK_CHECK() is not used when AFL_USE_LSAN=1 is set,
the leak checker will run when the program exits.
2021-04-02 22:23:11 +00:00
van Hauser
00a53a870d
Merge pull request #833 from WorksButNotTested/frida
Frida
2021-03-25 19:42:27 +01:00
Your Name
e1384b5086 Add support for FRIDA mode 2021-03-24 18:17:10 +00:00
van Hauser
6e2a0ef233
Merge branch 'replay' into tmp 2021-03-24 18:19:13 +01:00
van Hauser
090128b3f8
Merge branch 'dev' into dev 2021-03-19 23:54:36 +01:00
fuzzah
d7e121e2c9 add AFL_TARGET_ENV to afl-fuzz 2021-03-20 01:32:28 +03:00
vanhauser-thc
e73c7c59c1 refactor finding binaries 2021-03-19 14:55:25 +01:00
vanhauser-thc
862cb3217f fix cmplog rtn 2021-03-16 14:38:13 +01:00
realmadsci
d4fb7f8b40 Add AFL_QEMU_CUSTOM_BIN environment flag
In QEMU mode (-Q), setting AFL_QEMU_CUSTOM_BIN cause afl-fuzz to skip
prepending afl-qemu-trace to your command line. Use this if you wish to use a
custom afl-qemu-trace or if you need to modify the afl-qemu-trace arguments.
2021-03-15 12:57:06 -07:00
vanhauser-thc
791c5c171d fix ctx-1 2021-03-09 18:44:42 +01:00
vanhauser-thc
47f2650a32 add AFL_NOOPT 2021-03-09 16:53:56 +01:00
vanhauser-thc
7f062524c9 fixes 2021-03-06 23:01:13 +01:00
Andrea Fioraldi
be5274d4a9 fix kctx compilation hang 2021-03-04 15:12:08 +01:00
realmadsci
8bdb40b763 cpu-exec: Add AFL_QEMU_EXCLUDE_RANGES
This environment variable allows rejection of
specific regions from instrumentation.

It takes priority over AFL_INST_LIBS and AFL_QEMU_INST_RANGES,
so it can be used to poke a "hole" in previously included sections.
2021-03-02 12:55:44 -08:00
vanhauser-thc
938512a6b9 minor fixes 2021-02-17 09:48:04 +01:00
Michael Rodler
6caec2169c Revert "llvm bug workaround for lto extint"
This reverts commit e3a5c31307f323452dc4b5288e0d19a02b596a33.
2021-02-15 19:14:28 +01:00
vanhauser-thc
e3a5c31307 llvm bug workaround for lto extint 2021-02-15 13:25:15 +01:00
vanhauser-thc
9bd1e19d7f added AFL_IGNORE_UNKNOWN_ENVS 2021-02-13 22:43:56 +01:00
vanhauser-thc
84f0b4f187 persistent replay env setup 2021-02-07 08:27:35 +01:00
van Hauser
9d08f0d098 added AFL_CMPLOG_ONLY_NEW feature 2021-01-30 15:39:47 +01:00
Andrea Fioraldi
28e1aaa0f1 qasan support in aflpp 2021-01-29 15:47:25 +01:00
van Hauser
2044c7e2b5 fix include 2021-01-27 08:41:45 +01:00
van Hauser
f571f074a8 update envs 2021-01-27 08:21:22 +01:00
buherator
9cdf5c4150
User defined kill signal value (#678)
* Adding AFL_KILL_SIGNAL environment variable

Controlling the kill signal used to end forked processes.

* Checking validity of AFL_KILL_SIGNAL env variable

This commit also sets a valid value in the environment to avoid
duplicating code in at_exit(). Changing data type of
fsrv->kill_signal to u8 to match last_kill_signal.

* Adding afl_kill_signal to AFL (environment) state

This commit simply introduces a struct member for future use. The
env variable is not used from the afl struct but from fsrv, where
its validity is checked, resulting in a FATAL in case of errors.
2021-01-07 22:35:34 +01:00
van Hauser
98ee17bc47 fix endless loop in afl-cc allow/blocklists starting a line with a comment 2020-12-20 14:30:06 +01:00
hexcoder-
12ebb351dc apply nocolor changes 2020-12-18 21:10:39 +01:00
Thomas Rooijakkers
d59d1fcd9f
Add missing env var used in bec7edf41d/accel/tcg/cpu-exec.c (L389) and ./qemu_mode/README.persistent.md 2020-12-04 17:15:25 +01:00
Dominik Maier
a2e2fae840 AFL_CRASH_EXITCODE env var added, u8->bool 2020-12-03 14:43:06 +01:00
van Hauser
8584f9d2b5 added AFL_NO_AUTODICT 2020-12-01 13:13:11 +01:00
Dominik Maier
f80f62f14b renamed env var to AFL_DEBUG_CHILD 2020-11-18 03:02:13 +01:00
van Hauser
0e748ccda7 set max testcache entries automated if not specified by the user 2020-10-23 14:05:34 +02:00
van Hauser
56ac3fcdc5
configurable testcache with malloc (#581)
* cache item number to cache memory size

* reload testcase if trimming changed the size

* fix splicing selection

* slim splicing

* import sync fix

* write testcache stats to fuzzer_stats

* fix new seed selection algo

* malloc+read instead of mmap

* fix

* testcache is configurable now and no reference counts

* fixes compilation, test script

* fixes

* switch TEST_CC to afl-cc in makefile

* code format

* fix

* fix crash

* fix crash

* fix env help output

* remove unnecessary pointer resets

* fix endless loop bug

* actually use the cache if set

* one more fix

* increase default cache entries, add default cache size value to config.h

Co-authored-by: hexcoder- <heiko@hexco.de>
2020-10-14 15:30:30 +02:00
Edznux
0220a8ff66
Add env var toggle for StatsD 2020-10-08 20:48:46 +02:00
Edznux
3d7bdc9f0b
[WIP: segfault on non dogstatsd] Adding MACROS for format 2020-10-06 23:00:11 +02:00