gpt4 book ai didi

使用 afl-gcc 编译 - 未检测到仪器

转载 作者:行者123 更新时间:2023-11-30 16:31:34 24 4
gpt4 key购买 nike

我想用 afl 模糊我的应用程序,但用 afl-gcc 替换 gcc 后,我仍然收到错误:[-] PROGRAM ABORT : No检测到仪器。

我创建了一个简单的 C 程序来调试该问题:

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

static int do_stuff(int fd) {
char buffer[3];
read(fd, buffer, sizeof(buffer));

int size = atoi(buffer);

char* str = malloc(size);

read(fd, str, size);

printf("'%s'\n", str);

free(str);

return 0;
}

int main(int argc, char** argv) {
if (argc < 2)
return 1;

int fd = open(argv[1], O_RDONLY);

if (fd < 0)
return 2;

int ret = do_stuff(fd);

close(fd);

return ret;
}

我用afl-gcc main.c -o main编译它。作为输入文件,我使用 echo "12 Hello World.foobar"> foo.txt

当我现在运行afl-analyze -i foo.txt ./main时,我得到了

afl-analyze 2.52b by <lcamtuf@google.com>

[+] Read 22 bytes from 'foo.txt'.
[*] Performing dry run (mem limit = 50 MB, timeout = 1000 ms)...

[-] PROGRAM ABORT : No instrumentation detected.
Location : main(), afl-analyze.c:1068

我错过了什么吗?我直接从 Ubuntu 存储库 (18.04) 安装了 afl (2.52b-2)。

最佳答案

可能是内存限制太低。尝试设置更多内存大小或将其设置为无。

afl-analyze -m none -i foo.txt ./main

关于使用 afl-gcc 编译 - 未检测到仪器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50510679/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com