Share via


/HIGHENTROPYVA (支援 64 位元 ASLR)

指定可執行檔映像是否支援高熵 64 位元位址空間配置隨機載入 (ASLR)。

語法

/HIGHENTROPYVA[:NO]

備註

/HIGHENTROPYVA會修改可執行檔的 標頭 (例如 .dll.exe 檔案),以指出 ASLR 是否可以使用整個 64 位位址空間。 若要產生效果,請在可執行檔及其相依的所有模組上設定 選項。 然後,支援 64 位 ASLR 的作業系統可以使用 64 位隨機化虛擬位址,在載入時重新設定可執行檔映射的區段基底。 這個大型位址空間會使攻擊者較難猜到特定記憶體區域的位置。

根據預設, /HIGHENTROPYVA 會針對 64 位可執行檔映射啟用。 此選項需要 /LARGEADDRESSAWARE ,預設也會針對 64 位映射啟用。 /HIGHENTROPYVA 不適用於 32 位可執行檔映射,連結器會忽略選項。 若要明確停用此選項,請使用 /HIGHENTROPYVA:NO

若要 /HIGHENTROPYVA 在載入時產生效果, /DYNAMICBASE 也必須啟用。 /DYNAMICBASE 預設會啟用 ,而且必須在 Windows Vista 和更新版本的作業系統中啟用 ASLR。 舊版 Windows 會忽略此旗標。

在 Visual Studio 中設定這個連結器選項

  1. 開啟專案的 [屬性頁] 對話方塊。 如需詳細資料,請參閱在 Visual Studio 中設定 C ++ 編譯器和組建屬性

  2. 選取 [ 組態屬性 > 連結器 > 命令列 ] 屬性頁。

  3. [其他選項] 中,輸入 /HIGHENTROPYVA/HIGHENTROPYVA:NO

另請參閱