101 Commits

Author SHA1 Message Date
Kuang-che Wu
55d534cd6d extract function afl_fsrv_setup_preload 2025-05-23 10:39:03 +08:00
Alexandre DOYEN
320d4b7ef8 Requested changes 2025-05-05 11:03:26 +02:00
Andy Knowles
4cabb81996 Better handling of exit codes used by sanitzers 2025-03-24 16:30:05 +01:00
vanhauser-thc
ecaddc09e8 code format 2025-02-10 13:29:22 +01:00
mio
1c9925c7d7
Initial integration 2025-01-19 23:49:52 +08:00
vanhauser-thc
4a1cf0b9af code format 2024-10-07 13:43:19 +02:00
Sergej Schumilo
1d6cd5dd19 fix AFL_AUTORESUME=1 for Nyx mode 2024-09-14 03:51:20 +02:00
vanhauser-thc
ba7313b521 AFL_CUSTOM_MUTATOR_LATE_SEND added 2024-06-27 18:51:58 +02:00
Christian Holler (:decoder)
8fcca6fb41 Collect persistent coverage data and dump it at the end of the run
With CODE_COVERAGE builds, we need to collect the coverage data of each
iteration in a persistant buffer that has the same size as the regular
trace buffer used for fuzzing. We dump this information at the end of
the run and when combined with pointer data and module info, this can be
used to calculate code coverage.
2024-06-19 12:36:58 +02:00
nj00001
831b8f35d5
Keep a backup of max_length in the afl_forkserver_t structure 2024-05-14 18:23:53 +08:00
vanhauser-thc
476aca5b67 nits 2024-04-19 15:45:00 +02:00
vanhauser-thc
ed1a6f8a57 2024 v4.10c release 2024-02-03 11:01:31 +01:00
Han Zheng
06f0982f0f
Enhancement on Deterministic stage (#1972)
* fuzzer: init commit based on aflpp 60dc37a8cf09f8e9048e4b6a2204d6c90b27655a

* fuzzers: adding the skip variables and initialize

* log: profile the det/havoc finding

* log: add profile log output

* fuzzers: sperate log/skipdet module

* fuzzers: add quick eff_map calc

* fuzzers: add skip_eff_map in fuzz_one

* fuzzers: mark whole input space in eff_map

* fuzzers: add undet bit threshold to skip some seeds

* fuzzers: fix one byte overflow

* fuzzers: fix overflow

* fix code format

* add havoc only again

* code format

* remove log to INTROSPECTION, rename skipdet module

* rename skipdet module

* remove log to stats

* clean redundant code

* code format

* remove redundant code format check

* remove redundant doc

* remove redundant objects

* clean files

* change -d to default skipdet

* disable deterministic when using CUSTOM_MUTATOR

* revert fix
2024-02-01 14:13:21 +00:00
Christian Holler (:decoder)
bfb841d013 Use proper AFL_NYX_AUX_SIZE for nyx_aux_string 2023-10-20 00:07:35 +02:00
Jesse Schwartzentruber
247d8539fe Add AFL_NYX_LOG to redirect NYX hprintf messages to a file. 2023-08-04 15:39:57 -04:00
vanhauser-thc
79640acbf1 nits 2023-08-04 09:25:19 +02:00
Sergej Schumilo
8f31086a7f make nyx aux buffer size configurable 2023-08-03 14:40:10 +02:00
vanhauser-thc
56f7e3aa08 hidden -Y option for nyx, code format 2023-04-16 12:42:32 +02:00
Sergej Schumilo
059d470e8d improved Nyx tmp dir handling (additional sanity checks) 2023-04-16 04:42:09 +02:00
Sergej Schumilo
a96cdc649f switch to latest libnyx API 2023-04-14 05:59:12 +02:00
Sergej Schumilo
eefd98f374 add Nyx support in various tools (like afl-cmin) 2023-04-14 02:25:33 +02:00
Marcello Maugeri
c86d06849b
Update forkserver.h
Fix typo
2023-02-08 15:54:27 +01:00
vanhauser-thc
35f09e11a4 welcome 2023 2023-01-03 09:38:07 +01:00
vanhauser-thc
05e0825d66 changelog update 2022-10-24 20:06:57 +02:00
Nils Bars
7512316b46 Add AFL_FORK_SERVER_KILL_SIGNAL environment variable.
The AFL_FORK_SERVER_KILL_SIGNAL variable allows to configure the signal
used to kill the fork server on termination.
2022-10-21 12:47:00 +02:00
Nils Bars
f84ea69660 Fix child reaping on fuzzer termination
This commit contains the following changes:
    - Call `waitpid()` on the child and the fork server when terminating the
      fuzzer; thus, we do not end up with zombies.
    - Rename `fsrv.kill_signal` to `fsrv.child_kill_signal`, since the
      documentation states that the signal is used to terminate the *child*.
    - Use SIGTERM instead of fsrv.(child)_kill_signal, thus the fork server
      can always reap the child.
2022-10-20 18:08:07 +02:00
vanhauser-thc
b847e0f414 clang format 14 2022-07-12 09:04:54 +02:00
vanhauser-thc
2eeba2dbf0 code format 2022-03-04 09:41:21 +01:00
Sergej Schumilo
0f7419fc91 write nyx crash logs to AFL++ work directory 2022-03-04 05:41:40 +01:00
vanhauser-thc
d4c01c057b test support for forced persistent mode 2022-02-04 12:09:07 +01:00
vanhauser-thc
61d79f85c5 code format 2022-01-23 19:20:32 +01:00
Sergej Schumilo
9d3e6a869e add LTO support in nyx_mode 2022-01-21 07:33:42 +01:00
vanhauser-thc
e1082f2548 welcome 2022 2022-01-01 00:49:17 +01:00
vanhauser-thc
8b8aaa93bd nyx code format 2021-12-28 17:26:54 +01:00
Sergej Schumilo
41291d8c72 add Nyx mode 2021-12-28 15:51:43 +01:00
Akira Moroo
9100f3c416 Add initial CoreSight mode support
The original code is:
https://github.com/RICSecLab/AFLplusplus-cs/tree/retrage/coresight-mode-pr

Signed-off-by: Akira Moroo <retrage01@gmail.com>
2021-11-11 09:52:21 +00:00
vanhauser-thc
9325a4fcbb http->https 2021-11-06 10:28:22 +01:00
vanhauser-thc
35153e9b49 correct map size for small targets 2021-06-16 15:33:03 +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
vanhauser-thc
c169cb3911 integrate frida_mode, code-format 2021-03-25 20:10:09 +01:00
van Hauser
00a53a870d
Merge pull request #833 from WorksButNotTested/frida
Frida
2021-03-25 19:42:27 +01:00
vanhauser-thc
ab394836a9 remove warnings 2021-03-25 08:40:33 +01:00
Your Name
e1384b5086 Add support for FRIDA mode 2021-03-24 18:17:10 +00:00
vanhauser-thc
7f062524c9 fixes 2021-03-06 23:01:13 +01:00
vanhauser-thc
4a0d4c50fc complete implemenation, still no test 2021-03-06 19:12:25 +01:00
vanhauser-thc
81442ba3f9 implementation without testing 2021-03-06 15:48:49 +01:00
vanhauser-thc
84f0b4f187 persistent replay env setup 2021-02-07 08:27:35 +01:00
van Hauser
981ffb27a8 making AFL_MAP_SIZE obsolete 2021-02-01 12:01:23 +01:00
van Hauser
60764ebdf1 forkserver debug flag support 2021-01-21 18:43:06 +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