mirror of
https://github.com/AFLplusplus/AFLplusplus.git
synced 2025-06-18 04:38:08 +00:00
AFL_IGNORE_PROBLEMS + library checks and documentation
This commit is contained in:
@ -267,6 +267,13 @@ void read_afl_environment(afl_state_t *afl, char **envp) {
|
||||
afl->afl_env.afl_force_ui =
|
||||
get_afl_env(afl_environment_variables[i]) ? 1 : 0;
|
||||
|
||||
} else if (!strncmp(env, "AFL_IGNORE_PROBLEMS",
|
||||
|
||||
afl_environment_variable_len)) {
|
||||
|
||||
afl->afl_env.afl_ignore_problems =
|
||||
get_afl_env(afl_environment_variables[i]) ? 1 : 0;
|
||||
|
||||
} else if (!strncmp(env, "AFL_I_DONT_CARE_ABOUT_MISSING_CRASHES",
|
||||
|
||||
afl_environment_variable_len)) {
|
||||
|
@ -534,6 +534,20 @@ void show_stats(afl_state_t *afl) {
|
||||
t_bytes = count_non_255_bytes(afl, afl->virgin_bits);
|
||||
t_byte_ratio = ((double)t_bytes * 100) / afl->fsrv.real_map_size;
|
||||
|
||||
if (unlikely(t_bytes > afl->fsrv.real_map_size)) {
|
||||
|
||||
if (unlikely(!afl->afl_env.afl_ignore_problems)) {
|
||||
|
||||
FATAL(
|
||||
"Incorrect fuzzing setup detected. Your target seems to have loaded "
|
||||
"incorrectly instrumented shared libraries. If you use LTO mode "
|
||||
"please see instrumentation/README.lto.md. To ignore this problem "
|
||||
"and continue fuzzing just set 'AFL_IGNORE_PROBLEMS=1'.\n");
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (likely(t_bytes) && unlikely(afl->var_byte_count)) {
|
||||
|
||||
stab_ratio = 100 - (((double)afl->var_byte_count * 100) / t_bytes);
|
||||
|
@ -216,6 +216,7 @@ static void usage(u8 *argv0, int more_help) {
|
||||
"AFL_HANG_TMOUT: override timeout value (in milliseconds)\n"
|
||||
"AFL_I_DONT_CARE_ABOUT_MISSING_CRASHES: don't warn about core dump handlers\n"
|
||||
"AFL_IGNORE_UNKNOWN_ENVS: don't warn on unknown env vars\n"
|
||||
"AFL_IGNORE_PROBLEMS: do not abort fuzzing if an incorrect setup is detected during a run\n"
|
||||
"AFL_IMPORT_FIRST: sync and import test cases from other fuzzer instances first\n"
|
||||
"AFL_KILL_SIGNAL: Signal ID delivered to child processes on timeout, etc. (default: SIGKILL)\n"
|
||||
"AFL_MAP_SIZE: the shared memory size for that target. must be >= the size\n"
|
||||
|
Reference in New Issue
Block a user