linhlhq / TinyAFL

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TinyAFL for macOS doesn't operate well.

singleghost2 opened this issue · comments

Hi linhlhq!
I tried to use tinyAFL on macOS. I encountered a compilation error in tinyinst during the first compilation. After replacing tinyinst with the latest version, the compilation error was resolved.

However, when running, some testcases will hang during dry run (normally they will not). After I set the -t 5000+ option to ignore these timeout testcases, tinyAFL can enter the Fuzz phase. But after a few rounds of fuzzing, it crashed in the heap allocator, and the retrospective call stack crashed in a function in the tinyinst module.

When I added the environment variable DYLD_INSERT_LIBRARIES=/usr/lib/libgmalloc.dylib to AFL in order to debug this problem, AFL miraculously no longer crashed, but instead the memory usage of the system rose sharply. Use htop to check memory usage, process kernel_task occupies 80% of the system memory, and the statistics of tinyAFL show that the map coverage is 0. I want to know what causes so many strange phenomena.

The command is as follows:

sudo DYLD_INSERT_LIBRARIES=/usr/lib/libgmalloc.dylib   ~/workspace/TinyAFL/build/Debug/AFL -i in  -o out  -t 5000+  -instrument_module AudioToolboxCore -instrument_module AudioCodecs  -patch_return_addresses -stack_offset 0x1000  -cmp_coverage  -target_env DYLD_INSERT_LIBRARIES= -- audio_dec_jack @@

The AFL status screen is as follows:
image

Hi singleghost2,

At the moment I have no plans to further develop TinyAFL on MacOS.