如何修复MinGW -Wl --dynamicbase无法正常工作?

问题描述

我刚刚阅读了ASLR,发现gcc的here中有与ASLR相关的标志。标志是-Wl,--dynamicbase,因此我可以使用此命令gcc test.c -Wl,--dynamicbase -o test.exe进行尝试。我尝试运行它,并且一切运行良好,但是当我使用ProcessExplorer检查ASLR时,似乎我的程序的ASLR已关闭。我继续阅读并找到该标志-pie -fPIE,然后使用此命令gcc test.c -Wl,--dynamicbase -o test.exe -pie -fPIE再试一次,但是运行后,程序将收到SIGSEGV。我不确定是什么问题。 那么您能给我正确的标志还是我想念的东西吗?我的计算机支持ASLR,我知道这是因为ProcessExplorer在ASLR打开时显示了一些进程。感谢您的关注。

test.c

#include <stdio.h>

int main(){
    puts("lol");
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)