1
如何启用可执行文件的地址空间布局随机化?如何在Windows PE二进制文件中启用ASLR?
注意:我没有使用Visual Studio或任何编译器提供编译器选项/dynamicbase
。
出于本讨论的目的,假设我正在向编译器添加功能以启用ASLR。
其他PE标志
有迹象表明,我已经知道如何设置其他Windows可执行映像选项。例如,然后IMAGE_FILE_NET_RUN_FROM_SWAP
标志。您可以设置在PE二进制头中的PE选项:
LOADED_IMAGE li;
MapAndLoad(fileName), null, li, false, false)
LI.FileHeader.FileHeader.Characteristics |= IMAGE_FILE_NET_RUN_FROM_SWAP;
UnMapAndLoad(li)
怎样才能使地址空间布局随机化?这是PE标志吗?是否是组装清单条目?
红利
我如何选择可执行文件到NX(不执行)?