如何在MacOS 10.11中禁用堆栈/堆保护?

时间:2015-09-29 13:00:47

标签: c macos clang

例如,如果我编译:

gcc -o vuln vuln.c -fno-stack-protector -D_FORTIFY_SOURCE=0

并使用piestrip或change_mach_o_flags.py设置堆可执行文件并禁用ASLR:

https://src.chromium.org/svn/trunk/src/build/mac/change_mach_o_flags.py

如果我覆盖rip来说明包含shellcode的环境变量的地址,则进程会出现段错误。我可以在gdb中清楚地看到它在正确的位置,shellcode就在那里开始,但它已经被分段,因此必须有其他一些保护措施。

如何禁用此功能?

0 个答案:

没有答案