Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我已经尝试在 ASLR 的链接器选项中使用-dynamicbase -pieand -e_mainCRTStartup,但是当我在 ollydbg 中加载它时,它总是以 400000 加载
-dynamicbase -pie
-e_mainCRTStartup
您可以使用-Wl,--nxcompat. 您也可以--dynamicbase以相同的方式传递给链接器,但遗憾的是它不会发出必要的重定位表。作为一种解决方法,您可以通过-Wl,--dynamicbase,--export-all-symbols. __declspec(dllexport)像这样的单个符号的显式main也可以,这是目前在 Rust 编译器中使用的解决方法。AFAIK,GCC 没有实现 SEH,所以你不会因为错过编译时健全性检查(SafeSEH)而错过任何东西。
-Wl,--nxcompat
--dynamicbase
-Wl,--dynamicbase,--export-all-symbols
__declspec(dllexport)
main