【发布时间】:2017-11-01 22:53:07
【问题描述】:
首先,我很抱歉提出一个不合理的问题,因为我的英语不好,我无法清楚地辨认出来。我也不知道是什么东西?它叫什么。
我的问题如下:
我用C语言写了一个程序:
#include <stdio.h>
#include <stdlib.h>
int main() {
char buf[2],buf1[10];
fgets(buf,2,stdin);
fgets(buf1,10,stdin);
puts(buf);
puts(buf1);
printf("Opening Shell...\n");
system("/bin/dash");
printf("\nEND\n");
return 0;
}
我的目的是将参数传递给溢出缓冲区变量并在 /bin/dash 之后插入一个命令来读取一些我不拥有的文件,等等......我试过: 管道:
python2.7 -c 'print "a"*12 + "\n" + " -c \"cat tes.c > show\""' | /myprogram
我的程序运行正常,但是shellcode-c "cat tes.c > show"可能没有被使用。
我设置了所有文件和权限7777。
那么,如何在/bin/dash之后插入shellcode?p>
感谢阅读!对不起我的英语不好。
【问题讨论】:
标签: c arguments parameter-passing buffer-overflow