Udostępnij za pośrednictwem


/HIGHENTROPYVA (Adres 64-bitowej obsługi ASLR)

Określa, czy obraz wykonywalny obsługuje losowe układy przestrzeni adresowej o wysokiej entropii 64-bitowej (ASLR).

Składnia

/HIGHENTROPYVA[:NO]

Uwagi

/HIGHENTROPYVA Modyfikuje nagłówek pliku obrazu wykonywalnego (na przykład plik .dll lub .exe ), aby wskazać, czy ASLR może używać całej 64-bitowej przestrzeni adresowej. Aby mieć wpływ, ustaw opcję zarówno dla pliku wykonywalnego, jak i wszystkich modułów, od których zależy. Następnie system operacyjny, który obsługuje 64-bitowe asLR, może ponownie bazować segmenty obrazu wykonywalnego w czasie ładowania przy użyciu 64-bitowych losowych adresów wirtualnych. Ta duża przestrzeń adresowa utrudnia atakującemu odgadnięcie lokalizacji określonego regionu pamięci.

Domyślnie /HIGHENTROPYVA jest włączona dla 64-bitowych obrazów wykonywalnych. Ta opcja wymaga /LARGEADDRESSAWARE, która jest również domyślnie włączona dla obrazów 64-bitowych. /HIGHENTROPYVA nie ma zastosowania do 32-bitowych obrazów wykonywalnych, gdzie konsolidator ignoruje opcję. Aby jawnie wyłączyć tę opcję, użyj polecenia /HIGHENTROPYVA:NO.

Aby /HIGHENTROPYVA mieć wpływ na czas ładowania, /DYNAMICBASE należy również włączyć. /DYNAMICBASE jest domyślnie włączona i jest wymagana do włączenia funkcji ASLR w systemie Windows Vista i nowszych systemach operacyjnych. Starsze wersje systemu Windows ignorują tę flagę.

Aby ustawić tę opcję konsolidatora w programie Visual Studio

  1. Otwórz okno dialogowe Strony właściwości projektu. Aby uzyskać więcej informacji, zobacz Set C++ compiler and build properties in Visual Studio (Ustawianie właściwości kompilatora języka C++ i kompilacji w programie Visual Studio).

  2. Wybierz stronę właściwości wiersza polecenia konsolidatora>konfiguracji.>

  3. W obszarze Dodatkowe opcje wprowadź lub /HIGHENTROPYVA:NO/HIGHENTROPYVA .

Zobacz też