代码之家  ›  专栏  ›  技术社区  ›  Scott Whitlock

如何为我的.NET应用程序启用DEP或ASLR?

  •  5
  • Scott Whitlock  · 技术社区  · 14 年前

    我正在用VS2010编写我的程序,构建目标是.NET4 DEP 默认情况下,“兼容性标志”处于启用状态。是真的吗?

    默认情况下,.NET是否也与兼容 ASLR ,对于我的进程,ASLR是默认打开的,还是必须在运行时请求它?

    1 回复  |  直到 13 年前
        1
  •  15
  •   Hans Passant    9 年前

    是的,从.NET2.0SP1开始,标准.NET语言编译器就启用了NXCOMPAT标志。

    更强大的是ASLR的数据,更重要的反攻击措施。这一点很重要,因为绝大多数攻击都是从恶意数据开始的。每次启动程序时,线程的堆栈位置、GC堆和静态数据都会发生变化。可能是相当痛苦的你正在试图调试一个AVE顺便说一句。