AFLplusplus: Unicorn tests fail on Raspberry Pi 4
On my Raspberry Pi 4 (4GB) running Raspbian 32-Bit, I tried to run tests with unicorn_mode. Building unicorn_mode proceeded without error, but testing failed
[*] Testing: unicorn_mode
[*] Using python binary /usr/bin/python
[*] running afl-fuzz for unicorn_mode, this will take approx 25 seconds
CUT------------------------------------------------------------------CUT
[*] Spinning up the fork server...
[+] All right - fork server is up.
afl-fuzz++2.59d based on afl by Michal Zalewski and a big online community
[+] afl++ is maintained by Marc "van Hauser" Heuse, Heiko "hexcoder" Eissfeldt and Andrea Fioraldi
[+] afl++ is open source, get it at https://github.com/vanhauser-thc/AFLplusplus
[+] Power schedules from github.com/mboehme/aflfast
[+] Python Mutator and llvm_mode whitelisting from github.com/choller/afl
[+] afl-tmin fork server patch from github.com/nccgroup/TriforceAFL
[+] MOpt Mutator from github.com/puppet-meteor/MOpt-AFL
[*] Getting to work...
[+] Using exploration-based constant power schedule (EXPLORE)
[+] Looks like we're not running on a tty, so I'll be a bit less verbose.
[+] You have 4 CPU cores and 1 runnable tasks (utilization: 25%).
[+] Try parallel jobs - see docs/parallel_fuzzing.txt.
[*] Checking CPU core loadout...
[+] Found a free CPU core, binding to #0.
[*] Checking core_pattern...
[*] Setting up output directories...
[*] Scanning 'in'...
[+] No auto-generated dictionary tokens to reuse.
[*] Creating hard links for all input files...
[*] Validating target binary...
[*] Attempting dry run with 'id:000000,time:0,orig:in'...
[-] Oops, the program crashed with one of the test cases provided. There are
several possible explanations:
- The test case causes known crashes under normal working conditions. If
so, please remove it. The fuzzer should be seeded with interesting
inputs - but not ones that cause an outright crash.
- The current memory limit (200 MB) is too low for this program, causing
it to die due to OOM when parsing valid files. To fix this, try
bumping it up with the -m setting in the command line. If in doubt,
try something along the lines of:
( ulimit -Sd $[199 << 10]; /path/to/binary [...] <testcase )
Tip: you can use http://jwilk.net/software/recidivm to quickly
estimate the required amount of virtual memory for the binary. Also,
if you are using ASAN, see docs/notes_for_asan.txt.
- Least likely, there is a horrible bug in the fuzzer. If other options
fail, poke <afl-users@googlegroups.com> for troubleshooting tips.
[-] PROGRAM ABORT : Test case 'id:000000,time:0,orig:in' results in a crash
Location : perform_dry_run(), src/afl-fuzz-init.c:603
CUT------------------------------------------------------------------CUT
[!] afl-fuzz is not working correctly with unicorn_mode
I assume this should work (since unicorn does support ARM). Thanks!
About this issue
- Original URL
- State: closed
- Created 5 years ago
- Comments: 28 (26 by maintainers)
@andreafioraldi Sure, will do after work.