From c18f6c2618bd247b77efeaf51562cc63872b5d2a Mon Sep 17 00:00:00 2001 From: Antonio Morales <55253029+antonio-morales@users.noreply.github.com> Date: Fri, 6 Mar 2020 16:09:43 +0100 Subject: Fixing 2 little mistakes This example doesn't compile due to two little errors: - There is a missing semicolon - "data" array doesn't exist. I think "buf" should be used instead. --- examples/custom_mutators/example.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/custom_mutators/example.c b/examples/custom_mutators/example.c index 63e4d6da..63201e23 100644 --- a/examples/custom_mutators/example.c +++ b/examples/custom_mutators/example.c @@ -53,7 +53,7 @@ size_t afl_custom_fuzz(uint8_t *buf, size_t buf_size, // Mutate the payload of the packet for (int i = 3; i < mutated_size; i++) { - mutated_out[i] = (data[i] + rand() % 10) & 0xff; + mutated_out[i] = (buf[i] + rand() % 10) & 0xff; } @@ -90,7 +90,7 @@ size_t afl_custom_pre_save(uint8_t *buf, size_t buf_size, uint8_t **out_buf) { } uint8_t *trim_buf; -size_t trim_buf_size +size_t trim_buf_size; int trimmming_steps; int cur_step; -- cgit 1.4.1 From 0d4f2da8db15df73ec9e0fc362cd2e98f7b5a2e7 Mon Sep 17 00:00:00 2001 From: hexcoder- Date: Fri, 6 Mar 2020 19:33:02 +0100 Subject: terminate afl-cmin early when signalled SIGINT --- afl-cmin | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/afl-cmin b/afl-cmin index 28d8c746..fb646503 100755 --- a/afl-cmin +++ b/afl-cmin @@ -397,10 +397,19 @@ BEGIN { cur = 0; if (!stdin_file) { print " Processing "in_count" files (forkserver mode)..." - system( "AFL_CMIN_ALLOW_ANY=1 \""showmap"\" -m "mem_limit" -t "timeout" -o \""trace_dir"\" -Z "extra_par" -i \""in_dir"\" -- \""target_bin"\" "prog_args_string) + retval = system( "AFL_CMIN_ALLOW_ANY=1 \""showmap"\" -m "mem_limit" -t "timeout" -o \""trace_dir"\" -Z "extra_par" -i \""in_dir"\" -- \""target_bin"\" "prog_args_string) } else { print " Processing "in_count" files (forkserver mode)..." - system( "AFL_CMIN_ALLOW_ANY=1 \""showmap"\" -m "mem_limit" -t "timeout" -o \""trace_dir"\" -Z "extra_par" -i \""in_dir"\" -- \""target_bin"\" "prog_args_string" 127) { + retval = retval - 128 + if (retval > 127) { + retval = retval - 128 + } + printf "[!]Signal %d received, terminating...\n", retval + exit 1 } ####################################################### -- cgit 1.4.1 From 13429d204d71ec1eef4b6b546e4739e9f2a9e869 Mon Sep 17 00:00:00 2001 From: hexcoder- Date: Fri, 6 Mar 2020 20:57:28 +0100 Subject: adapt child handling to nawk from *BSD --- afl-cmin | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/afl-cmin b/afl-cmin index fb646503..ea57015e 100755 --- a/afl-cmin +++ b/afl-cmin @@ -403,13 +403,13 @@ BEGIN { retval = system( "AFL_CMIN_ALLOW_ANY=1 \""showmap"\" -m "mem_limit" -t "timeout" -o \""trace_dir"\" -Z "extra_par" -i \""in_dir"\" -- \""target_bin"\" "prog_args_string" 127) { - retval = retval - 128 - if (retval > 127) { - retval = retval - 128 + if (retval) { + print "[!]Exit code != 0 received from afl-showmap, terminating..." + + if (!ENVIRON["AFL_KEEP_TRACES"]) { + system("rm -rf "trace_dir" 2>/dev/null") } - printf "[!]Signal %d received, terminating...\n", retval - exit 1 + exit retval } ####################################################### -- cgit 1.4.1