Open hexcoder- opened 5 years ago
Hi @hexcoder- . I can't reproduce this issue in binutils
and file
program. Can your provide the program you tested?
The logs shows that the fuzzer can not find any new branch. Can you make sure:
I tested in file
by Re-run
I updated the docker image, and tried again. First with -input i
, then after 5 seconds I terminated it. Angora showed 15 paths found, but output/queue is empty then! I don't understand why.
I repeated the runs and let it run a bit longer with -i i
. Then I saw that angora created alternative output directories o.1
, o.2
, ... and also in this format o.2019-01-10T07:18:00.792939624+00:00
, which contained queue entries, but these were not found when -o o
was given when restarting (leading to the error message).
The program translit is from schilytools (https://sourceforge.net/projects/schilytools/files/schily-2018-12-21.tar.bz2/download) and is like tr
. I compiled once with SUBARCH=fast_
and once with SUBARCH=_taint
in order to get the executables separated in different subdirectories.
o.1
is created because o
directory is existed. I removed the code, and give a panic error with warning directly now. https://github.com/AngoraFuzzer/Angora/commit/6f125afeea697fd55a817003211172f3ab7ed331
The logic of restart is rename the output directory o
to o.2019-01-10T07:18:00.792939624+00:00
(extend with timestamp). Then use its queue
directory as seed directory.
https://github.com/AngoraFuzzer/Angora/blob/6f125afeea697fd55a817003211172f3ab7ed331/fuzzer/src/depot/depot_dir.rs#L27-L34
I still can't find the reason now. I hope these can help you.
I get exceptions when I try to (re)run angora after a previous termination (with ^C). First run is like this
# /angora/bin/fuzzer -i
i-o o -j 24 -t translit/OBJ/x86_64-linux-clang_taint/translit -- translit/OBJ/x86_64-linux-clangfast_/translit ABCDAB VWXYZ
Then I terminate with^C
, and (re)run with# RUST_BACKTRACE=1 /angora/bin/fuzzer -i
--o o -j 24 -t translit/OBJ/x86_64-linux-clang_taint/translit -- translit/OBJ/x86_64-linux-clangfast_/translit ABCDAB VWXYZ
This is independent of the target program used. Maybe I am doing something wrong.