Uwaga: Windows nieprawidłowo implementuje ASLR, poprawka jest dostępna
Począwszy od Vista, Windows jest wyposażony w randomizację układu przestrzeni adresowej (ASLR). ASLR to technika bezpieczeństwa komputerowego zaangażowana w zapobieganie wykorzystywaniu luk w zabezpieczeniach pamięci. Aby uniemożliwić atakującemu niezawodne przeskoczenie, na przykład, do konkretnej wykorzystywanej funkcji w pamięci, ASLR losowo rozmieszcza pozycje przestrzeni adresowej kluczowych obszarów danych procesu, w tym baza pliku wykonywalnego oraz pozycje stosu, sterty i biblioteki. W systemie Windows 8 i nowszych jest błąd, który sprawia, że ta technika jest bezużyteczna, ale możesz to naprawić.
Funkcja ASLR (randomizacja układu przestrzeni adresowej) została po raz pierwszy wprowadzona w systemie Windows Vista. Pozwala zapobiegać atakom polegającym na ponownym użyciu kodu. ASLR zapewnia losowy adres pamięci do wykonania kodu.
Reklama
W Windows 8, Windows 8.1 i Windows 10 funkcja ASLR nie działa poprawnie. Z powodu niewłaściwych ustawień domyślnych konfiguracji, ASLR nie używa losowych adresów pamięci.
Aktualizacja: W serwisie Technet znajduje się oficjalny wpis na blogu wyjaśniający sprawę. Przeczytaj to tutaj: Wyjaśnienie zachowania obowiązkowego ASLR.
Post mówi:
Problem z konfiguracją nie stanowi luki w zabezpieczeniach, nie stwarza dodatkowego ryzyka i nie osłabia istniejącego stanu bezpieczeństwa aplikacji.
Post na CERT wyjaśnia szczegółowo problem.
Zarówno EMET, jak i Windows Defender Exploit Guard umożliwiają ASLR dla całego systemu bez włączania ASLR dla całego systemu oddolnego. Chociaż funkcja Windows Defender Exploit Guard ma ogólnosystemową opcję oddolnego ASLR, domyślna wartość GUI „Domyślnie włączone” nie odzwierciedla podstawowej wartości rejestru (nieustawiona). Powoduje to relokację programów bez /DYNAMICBASE, ale bez entropii. W wyniku tego takie programy zostaną przeniesione, ale za każdym razem pod ten sam adres podczas ponownego uruchamiania, a nawet w różnych systemach.
Na szczęście rozwiązanie problemu jest łatwe.
Napraw ASLR w Windows 8, Windows 8.1 i Windows 10
- Otworzyć Aplikacja Edytor rejestru.
- Przejdź do następującego klucza rejestru.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel
Zobacz, jak przejść do klucza rejestru jednym kliknięciem.
- Po prawej stronie utwórz nową wartość REG_BINARY o nazwie MitigationOptions i ustaw jej dane wartości na
00,01,01,00,00,00,00,00,00,00,00,00,00,00,00,00
- Aby zmiany wprowadzone przez poprawkę Rejestru zaczęły obowiązywać, uruchom ponownie system Windows 10.
Aby zaoszczędzić czas, możesz pobrać następujące ulepszenie rejestru:
Pobierz poprawkę rejestru
Otóż to.