Freigeben über


/HIGHENTROPYVA (Unterstützung für 64-Bit ASLR)

Gibt an, ob das ausführbare Image 64-bit-ASLR mit hoher Entropie unterstützt.

Syntax

/HIGHENTROPYVA[:NO]

Hinweise

/HIGHENTROPYVAändert den Header einer ausführbaren Bilddatei (z. B. eine oder .exe eine .dll Datei), um anzugeben, ob ASLR den gesamten 64-Bit-Adressraum verwenden kann. Um einen Effekt zu haben, legen Sie die Option sowohl für die ausführbare Datei als auch für alle Module fest, von denen sie abhängig ist. Anschließend kann ein Betriebssystem, das 64-Bit-ASLR unterstützt, die Segmente des ausführbaren Images zur Ladezeit mithilfe von 64-Bit-randomisierten virtuellen Adressen neu zuordnen. Aufgrund dieses großen Adressbereichs ist es für einen Angreifer schwieriger, den Ort eines bestimmten Speicherbereichs zu schätzen.

/HIGHENTROPYVA Standardmäßig ist für 64-Bit-ausführbare Images aktiviert. Für diese Option ist /LARGEADDRESSAWAREstandardmäßig auch für 64-Bit-Bilder aktiviert. /HIGHENTROPYVA gilt nicht für ausführbare 32-Bit-Images, bei denen der Linker die Option ignoriert. Um diese Option explizit zu deaktivieren, verwenden Sie /HIGHENTROPYVA:NO.

Damit /HIGHENTROPYVA die Ladezeit wirksam wird, /DYNAMICBASE muss auch aktiviert sein. /DYNAMICBASE ist standardmäßig aktiviert und ist erforderlich, um ASLR in Windows Vista und höheren Betriebssystemen zu aktivieren. Diese Kennzeichnung wird in früheren Versionen von Windows ignoriert.

So legen Sie diese Linkeroption in Visual Studio fest

  1. Öffnen Sie das Dialogfeld Eigenschaftenseiten des Projekts. Weitere Informationen erhalten Sie unter Set C++ compiler and build properties in Visual Studio (Festlegen der Compiler- und Buildeigenschaften (C++) in Visual Studio).

  2. Klicken Sie auf der Eigenschaftenseite auf Konfigurationseigenschaften>Linker>Befehlszeile.

  3. Geben Sie in "Zusätzliche Optionen" die Zeichenfolge /HIGHENTROPYVA ein./HIGHENTROPYVA:NO

Siehe auch