【问题标题】:prevent VC++ DLL rebasing by PE header editing通过 PE 头编辑防止 VC++ DLL 变基
【发布时间】:2011-12-08 17:16:12
【问题描述】:

我需要设置标志 /FIXED 以防止我的 VC++ dll 在不重新编译的情况下变基。 (http://msdn.microsoft.com/en-us/library/w368ysh2.aspx)。 PE头中的这个标志在哪里?

谢谢你, 里卡多

【问题讨论】:

    标签: visual-c++ dll reverse-engineering portable-executable


    【解决方案1】:

    /FIXED链接器开关不对应PE头中的标志,它实际上指定了链接器是否在PE文件中添加重定位节。

    DYNAMIC_BASE 标志 Hans Passant 讨论指定是否允许操作系统在加载图像时重新定位内存中的图像(如果启用了 ASLR)。

    • 与 /FIXED 链接对于 .exe 来说很好,只要您不需要 ASLR 来保证安全(Web 浏览器等)
    • 使用 /FIXED 链接 .dll 不是一个好主意,如果 dll 无法在其首选地址加载(可能已经加载了其他一些 dll),则 dll 加载将失败!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-26
      • 1970-01-01
      • 1970-01-01
      • 2018-01-05
      • 2019-01-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多