„Windows 8“, „8.1“ ir vėlesnės „Windows 10“ versijos gali nepalaikyti ASLR, todėl svarbios „Windows“ saugos funkcijos tampa nenaudingos.
Adreso erdvės išdėstymo atsitiktinis nustatymas (ASLR) yra kompiuterio saugos metodas, kuris atsitiktinai parenka atminties adresą, kuriame vykdomas programos kodas. ASLR pasirodė „Open BSD“ 2003 m. ir nuo tada buvo įtrauktas į visas pagrindines operacines sistemas, įskaitant „Linux“, „Android“, „MacOS“ ir „Windows“.
„Microsoft“ pridėjo ASLR funkciją sistemoje „Windows“, kai 2006 m. išleido „Vista“. Norėdami įjungti šią funkciją, vartotojai turi įdiegti „Microsoft EMET“ ir naudoti jos grafinę sąsają (GUI), kad įgalintų ASLR sistemoje „Windows“.
Kai „Microsoft“ išleido „Windows 10“, ASLR buvo įtraukta į „Windows Defender Exploit Guard“, o vartotojai turi ją įjungti naudodami „Windows Defender“ saugos centrą (skiltyje „Programų ir naršyklės valdymas“ ir „Exploit protection“ parametrai).
Neseniai CERT/CC analitikas Willas Dormannas išsiaiškino, kad ASLR tam tikromis sąlygomis atsitiktinai nenustato taikomųjų programų atminties vietos.
Dormann teigimu, kai vartotojai įjungia visos sistemos ASLR apsaugą, Windows 8 ir vėlesnėse versijose funkcijų diegimo klaida nesukurs pakankamai entropijos (atsitiktinių duomenų), kad būtų galima paleisti dvejetaines programas, paskirstytas atsitiktinėse atminties vietose.
Problema turi įtakos tik „Windows 8“ ir naujesnėms versijoms, nes „Microsoft“ pakeitė registro reikšmes, per kurias inicijuoja ASLR, teigė mokslininkai.
Sprendimas
Vartotojai turi įjungti ASLR visos sistemos konfigūracijoje, kad ASLR veiktų tinkamai, sakė Dormanas.
„Microsoft“ planuoja išspręsti šią problemą būsimoje pataisoje, tačiau kol kas vienintelis būdas tinkamai konfigūruoti ASLR yra koreguoti „Windows“ registrą. US CERT/CC suteikia vartotojams tokį sprendimą:
1 veiksmas: sukurkite tuščią tekstinį failą ir įveskite toliau pateiktą tekstą:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel] "MitigationOptions"=hex:00,01,01,00,00,00,00,00,00,00,00,00,00,00,00,00
2 veiksmas: išsaugokite aukščiau pateiktą tekstinį failą su plėtiniu .reg , pvz., ASLR.reg.
3 veiksmas: atidarykite „Windows“ registro rengyklę , meniu Pradėti ieškodami regedit .
4 veiksmas: pasirinkite Failas ir pasirinkite Importuoti , kad importuotumėte .reg failą, kurį ką tik sukūrėte aukščiau, ir viskas.
Čia mes sukūrėme ASLR registro klaidų taisymo failą , kurį vartotojai gali lengvai atsisiųsti.
Sėkmės!
Žr. daugiau: „Windows 10“ klaidas ištaisykite vienu paspaudimu naudodami „FixWin“.