diff options
-rwxr-xr-x | afl-cmin | 15 | ||||
-rwxr-xr-x | afl-cmin.bash | 11 |
2 files changed, 15 insertions, 11 deletions
diff --git a/afl-cmin b/afl-cmin index 44716af1..4e0d78df 100755 --- a/afl-cmin +++ b/afl-cmin @@ -291,13 +291,14 @@ BEGIN { target_bin = tnew } - get_map_size = "AFL_DUMP_MAP_SIZE=1 " target_bin - get_map_size | getline mapsize - if (mapsize && mapsize > 65535) { - - AFL_MAP_SIZE = "AFL_MAP_SIZE="mapsize" " - print "[+] Setting "AFL_MAP_SIZE - + if (0 == system ( "grep -aq AFL_DUMP_MAP_SIZE" target_bin )) { + echo "[!] Trying to obtain the map size of the target ..." + get_map_size = "AFL_DUMP_MAP_SIZE=1 " target_bin + get_map_size | getline mapsize + if (mapsize && mapsize > 65535 && mapsize < 100000000) { + AFL_MAP_SIZE = "AFL_MAP_SIZE="mapsize" " + print "[+] Setting "AFL_MAP_SIZE + } } if (!ENVIRON["AFL_SKIP_BIN_CHECK"] && !qemu_mode && !frida_mode && !unicorn_mode) { diff --git a/afl-cmin.bash b/afl-cmin.bash index db3e8ae5..d2218cd0 100755 --- a/afl-cmin.bash +++ b/afl-cmin.bash @@ -215,10 +215,13 @@ if [ ! -f "$TARGET_BIN" -o ! -x "$TARGET_BIN" ]; then fi -MAPSIZE=`AFL_DUMP_MAP_SIZE=1 "./$TARGET_BIN" 2>/dev/null` -test -n "$MAPSIZE" && { - export AFL_MAP_SIZE=$MAPSIZE - echo "[+] Setting AFL_MAP_SIZE=$MAPSIZE" +grep -aq AFL_DUMP_MAP_SIZE "./$TARGET_BIN" && { + echo "[!] Trying to obtain the map size of the target ..." + MAPSIZE=`AFL_DUMP_MAP_SIZE=1 "./$TARGET_BIN" 2>/dev/null` + test -n "$MAPSIZE" && { + export AFL_MAP_SIZE=$MAPSIZE + echo "[+] Setting AFL_MAP_SIZE=$MAPSIZE" + } } if [ "$AFL_SKIP_BIN_CHECK" = "" -a "$QEMU_MODE" = "" -a "$FRIDA_MODE" = "" -a "$UNICORN_MODE" = "" ]; then |