我正在努力学习AFL-fuzzer,我有一些问题:
例如,我试图模糊这段代码:
void Check_buffer(char* data)
{
char buffer[5];
strcpy(buffer, data);
}
int main(int argc, char* argv[])
{
char tmp_data = argv[1];
Check_buffer(argv[1]);
return 0;
}我已经创建了输入和输出文件夹。在In文件夹中,我创建了一个包含以下内容的txt文件:"AAA“。
我执行的命令行是:afl-clang -fno-stack-protector -z execstack 4.c -o vul4
然后我运行:afl-fuzz -m none -i in/ -o out/ ./vul4 @@
我得到以下错误:perform_dry_run(), afl-fuzz.c:2852
如果我像这样运行命令:afl-fuzz -m none -i in/ -o out/ ./vul4 AA,它运行良好,但是它找不到任何新路径,也找不到崩溃。
同时,我也在努力理解这方面的概念。如果我想在特定的位置注入代码,我该如何做呢?
发布于 2020-01-21 15:42:58
附注:
#include <stdio.h>
#include <unistd.h>
#define INPUTSIZE 100
void Check_buffer(char* data)
{
char buffer[5];
strcpy(buffer, data);
}
int main(int argc, char* argv[])
{
char input[INPUTSIZE] = {0};
read (STDIN_FILENO, input, INPUTSIZE);
Check_buffer(input);
return 0;
}https://stackoverflow.com/questions/59548462
复制相似问题