gpt4 book ai didi

c - 防止 Ubuntu 12 中缓冲区溢出演示中的段错误

转载 作者:行者123 更新时间:2023-11-30 15:56:30 25 4
gpt4 key购买 nike

我正在尝试运行这段易受攻击的 C 代码:

#include <stdio.h>
#include <stdlib.h>

int add(int x, int y)
{
int z =10;
z = x + y;
return z;
}

main(int argc, char **argv)
{
int a = atoi(argv[1]);
int b = atoi(argv[2]);
int c;

char buffer[100];

gets(buffer);
puts(buffer);

c = add(a,b);

printf("Sum of %d+%d = %d\n",a, b, c);

exit(0);
}

我试图克服段错误,以便我可以输入整数,但段错误阻止了这一点。在终端我尝试过: gcc -ggdb -fno-stack-protector -U_FORTIFY_SOURCE -Wa,--execstack -o SimpleDemo SimpleDemo.c

我仍然遇到段错误。我不知道下一步该尝试什么。正如你可能知道的那样,我是一个 ubuntu 新手。我使用的 bash 代码来自这里:

http://www.evanjones.ca/buffer-overflow-101.html

我已经从事这个工作有一段时间了,所以非常感谢一些帮助

干杯

最佳答案

只是解释 hmjd 要求您做什么。

运行(二进制)10 20

关于c - 防止 Ubuntu 12 中缓冲区溢出演示中的段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11211239/

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