我正在编译下面的简单代码,并在gdb中运行它.我在strcpy行设置了一个断点,一旦我为abc的输入运行它,然后按s,我得到以下错误:
Breakpoint 1, main (argc=2, argv=0x7fffffffdd98) at ExploitMe.c:9
9 strcpy(buffer, argv[1]);
(gdb) s
__strcpy_sse2_unaligned () at ../sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S:48
48 ../sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S: No such file or directory.
Run Code Online (Sandbox Code Playgroud)
我使用的是ubuntu 12.04 AMD64和gcc 2.15.任何的想法?
main(int argc, char *argv[]) {
char buffer[80];
strcpy(buffer, argv[1]);
return 0;
}
Run Code Online (Sandbox Code Playgroud) 我试图禁用sse和sse2指令.我在x64系统中交叉编译x86.我也使用-static与libc静态链接.虽然我使用-mno-sse和-mno-sse2,但是当我反汇编二进制文件时,我仍然看到对strcpy_sse2的调用,任何解决方案?