Implementácia náhodného rozloženia adresného priestoru v systéme Windows

Obsah:

Implementácia náhodného rozloženia adresného priestoru v systéme Windows
Implementácia náhodného rozloženia adresného priestoru v systéme Windows

Video: Implementácia náhodného rozloženia adresného priestoru v systéme Windows

Video: Implementácia náhodného rozloženia adresného priestoru v systéme Windows
Video: HOW TO DELETE FOLDER OR FILES ACCESS DENIED ? - YouTube 2024, November
Anonim

Výskumníci v oblasti bezpečnosti v spoločnosti CERT uviedli, že Windows 10, Windows 8,1 a Windows 8 nedokážu správne namapovať každú aplikáciu, ak je prostredníctvom systému EMET alebo Windows Defender Exploit Guard povolená celoplošná povinná ASLR. Microsoft reagoval tým, že povedal, že implementácia Randomizácia usporiadania rozmiestnenia adresy (ASLR) v systéme Microsoft Windows funguje podľa určenia. Pozrime sa na problém.

Image
Image

Čo je ASLR?

ASLR je rozšírená o Randomisation Layout rozloženia adresy, funkcia debutovala s operačným systémom Windows Vista a bola navrhnutá tak, aby zabraňovala opakovanému použitiu kódu. Útokom sa zabráni načítaním spustiteľných modulov na nepredvídateľné adresy, čím sa zmierňujú útoky, ktoré zvyčajne závisia od kódu umiestneného na predvídateľných miestach. ASLR je vyladený na boj s technikami využívania, ako je programovanie orientované na návrat, ktoré sa spoliehajú na kód, ktorý sa zvyčajne načíta na predvídateľné miesto. To okrem toho, že jedna z hlavných nedostatkov ASLR je, že musí byť prepojená / DYNAMICBASE flag.

Rozsah použitia

Program ASLR ponúkol ochranu aplikácii, nezahŕňal však zmierňovanie v celom systéme. V skutočnosti z tohto dôvodu bol prepustený Microsoft EMET. Spoločnosť EMET zabezpečila, že sa vzťahuje na zmiernenie systémov a aplikácie. EMET skončil ako tvár zmierňovania v celom systéme tým, že ponúkol front-end pre užívateľov. Od aktualizácie Windows 10 Fall Creators však boli funkcie EMET nahradené programom Windows Defender Exploit Guard.

ASLR môže byť povinne povolený pre EMET a Windows Defender Exploit Guard pre kódy, ktoré nie sú prepojené s príznakom / DYNAMICBASE, a to môže byť implementované buď na báze aplikácie alebo na celom systéme. Znamená to, že systém Windows automaticky premiestni kód do dočasnej tabuľky premiestnenia, a preto sa nové umiestnenie kódu bude líšiť pre každé reštartovanie. Počínajúc systémom Windows 8 sa zmenami konštrukcie vyžadovalo, aby systém ASLR v celom systéme mal systém ASLR zdola nahor, aby mohol poskytnúť entropiu povinnej ASLR.

Problém

ASLR je vždy efektívnejšie, keď je entropia viac. V oveľa jednoduchších termínoch zvyšuje entropia počet vyhľadávacích priestorov, ktoré musí útočník preskúmať. Avšak EMET aj Windows Defender Exploit Guard umožňujú systém ASLR v celom systéme bez toho, aby umožňovali systém zdola nahor ASLR. Keď k tomu dôjde, programy bez / DYNMICBASE sa premiestnia, ale bez entropie. Ako sme už vysvetlili, neprítomnosť entropie by pomohla útočníkom relatívne ľahšie, pretože program bude zakaždým reštartovať rovnakú adresu.

Tento problém v súčasnosti ovplyvňuje operačné systémy Windows 8, Windows 8.1 a Windows 10, ktoré majú povolenú funkciu ASLR na celom systéme prostredníctvom programu Windows Defender Exploit Guard alebo EMET. Keďže relokácia adresy nie je v princípe DYNAMICBASE, zvyčajne má prednosť pred výhodou ASLR.

Čo Microsoft musí povedať

Microsoft bol rýchly a už vydal vyhlásenie. To je to, čo ľudia v spoločnosti Microsoft museli povedať,

“The behaviour of mandatory ASLR that CERT observed is by design and ASLR is working as intended. The WDEG team is investigating the configuration issue that prevents system-wide enablement of bottom-up ASLR and is working to address it accordingly. This issue does not create additional risk as it only occurs when attempting to apply a non-default configuration to existing versions of Windows. Even then, the effective security posture is no worse than what is provided by default and it is straightforward to work around the issue through the steps described in this post”

Podrobne špecifikovali riešenia, ktoré pomôžu dosiahnuť požadovanú úroveň bezpečnosti. Existujú dve riešenia pre tých, ktorí by chceli povoliť povinnú ASLR a zdola nahor randomizáciu pre procesy, ktorých EXE sa nezapísal do ASLR.

1] Uložte nasledujúce do optin.reg a importujte ho, aby ste povolili povinnú ASLR a zdola nahor náhodný systém.

Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession Managerkernel] 'MitigationOptions'=hex:00,01,01,00,00,00,00,00,00,00,00,00,00,00,00,00

2] Povoliť povinnú ASLR a náhodnú zdola nahor pomocou konfigurácie špecifickej pre program pomocou WDEG alebo EMET.

Odporúča: