Share via


Biztonsági rés kiaknázása elleni védelem testre szabása

Érintett szolgáltatás:

Szeretné megismerni a Végponthoz készült Defendert? Regisztráció az ingyenes próbaverzióra

A biztonsági rés kiaknázása elleni védelem automatikusan alkalmaz számos biztonsági rés kiaknázása elleni védelmi technikát az operációs rendszer folyamataira és az egyes alkalmazásokra is.

Konfigurálja ezeket a beállításokat az Windows Biztonság appal egy adott eszközön. Ezután exportálja a konfigurációt XML-fájlként, hogy más eszközökön is üzembe helyezhesse. A Csoportházirend használatával egyszerre több eszközre is terjesztheti az XML-fájlt. A kockázatcsökkentéseket a PowerShell használatával is konfigurálhatja.

Ez a cikk felsorolja a biztonsági rés kiaknázása elleni védelemben elérhető összes kockázatcsökkentést. Jelzi, hogy a kockázatcsökkentés alkalmazható-e a rendszerszintű vagy az egyes alkalmazásokra, és rövid leírást ad a kockázatcsökkentés működéséről.

Azt is ismerteti, hogyan engedélyezheti vagy konfigurálhatja a kockázatcsökkentéseket a Windows-biztonság, a PowerShell és a mobileszköz-kezelési (MDM) konfigurációs szolgáltatók (CSP-k) használatával. Ez az első lépés egy olyan konfiguráció létrehozásához, amelyet üzembe helyezhet a hálózaton. A következő lépés a konfiguráció létrehozása, exportálása, importálása és üzembe helyezése több eszközön.

Figyelmeztetés

Egyes biztonsági kockázatcsökkentési technológiák kompatibilitási problémákat okozhatnak bizonyos alkalmazásoknál. A biztonsági rés kiaknázása elleni védelmet minden célhasználati forgatókönyvben tesztelnie kell a naplózási mód használatával, mielőtt üzembe helyezné a konfigurációt egy éles környezetben vagy a hálózat többi részén.

Biztonsági rés kiaknázása elleni védelem kockázatcsökkentései

Minden kockázatcsökkentés konfigurálható az egyes alkalmazásokhoz. Bizonyos kockázatcsökkentések az operációs rendszer szintjén is alkalmazhatók.

Az egyes kockázatcsökkentéseket be- és kikapcsolhatja, illetve beállíthatja az alapértelmezett értékükre. Egyes kockázatcsökkentések további lehetőségeket is tartalmaznak, amelyeket a táblázat leírása jelez.

Az alapértelmezett értékek mindig szögletes zárójelben vannak megadva az Alapértelmezett használata beállításnál az egyes kockázatcsökkentésekhez. Az alábbi példában az adatvégrehajtás megakadályozása alapértelmezett értéke „Bekapcsolva“.

Az Alapértelmezett konfiguráció használata az egyes kockázatcsökkentési beállításokhoz azt jelzi, hogy az otthoni felhasználók számára a mindennapi használat alapvető szintű védelmére vonatkozó javaslatot ad. A vállalati üzemelő példányoknak figyelembe kell venniük az egyéni igényeikhez szükséges védelmet, és előfordulhat, hogy az alapértelmezett beállításoktól távol kell módosítaniuk a konfigurációt.

Az egyes kockázatcsökkentésekhez kapcsolódó PowerShell-parancsmagokat a cikk alján található PowerShell-referenciatáblázatban találja.

Kockázatcsökkentés Leírás Alkalmazható a következőre: Naplózási mód érhető el
Vezérlésfolyam-szabályozás (CFG) Biztosítja a vezérlési folyam integritását közvetett hívások esetén. Letilthatja az exportálásokat, és szigorú CFG-t használhat. Rendszer- és alkalmazásszintű Nem
Adatvégrehajtás megakadályozása (DEP) Megakadályozza a kód futtatását csak adatot tartalmazó memórialapokról, például halommemóriákból és vermekből. Csak 32 bites (x86) alkalmazásokhoz konfigurálható, minden más architektúrához véglegesen engedélyezve. Engedélyezheti az ATL típusú tönkemulálást. Rendszer- és alkalmazásszintű Nem
Véletlenszerűsítés kényszerítése a lemezképeknél (kötelező ASLR) Kényszeríti a nem a /DYNAMICBASE kapcsolóval lefordított lemezképek áthelyezését. Sikertelen lehet az áthelyezési információkkal nem rendelkező lemezképek betöltése. Rendszer- és alkalmazásszintű Nem
Véletlenszerű memóriafoglalás (ASLR alulról felfelé) Véletlenszerű helykiosztást végez a virtuális memória lefoglalásakor. Rendszerszerkezeti halommemóriákat, vermeket, TEB-eket és PEB-eket tartalmaz. Szélesebb véletlenszerűsítési eltérést is használhat a 64 bites folyamatokhoz. Rendszer- és alkalmazásszintű Nem
Kivételláncok ellenőrzése (SEHOP) Biztosítja a kivétellánc integritását a kivételküldés során. Csak 32 bites (x86) alkalmazásokhoz konfigurálható. Rendszer- és alkalmazásszintű Nem
Halommemória-integritás ellenőrzése Leállítja a folyamatot halommemória-sérülés észlelésekor. Rendszer- és alkalmazásszintű Nem
Tetszőleges programkód futtatása elleni védelem (ACG) Megakadályozza a nem lemezkép-alapú végrehajtható kód bevezetését, és megakadályozza a kódlapok módosítását. Engedélyezheti a szál elutasítását és a távoli visszaminősítést (csak a PowerShell használatával konfigurálható). Csak alkalmazásszintű Igen
Alacsony integritású lemezképek blokkolása Megakadályozza az alacsony integritásúként jelölt lemezképek betöltését. Csak alkalmazásszintű Igen
Távoli lemezképek blokkolása Megakadályozza a lemezképek betöltését távoli eszközökről. Csak alkalmazásszintű Nem
Nem megbízható betűkészletek blokkolása Megakadályozza a rendszer betűkészletkönyvtárában nem telepített GDI-alapú betűtípusok betöltését, különös tekintettel a webes betűtípusokra. Csak alkalmazásszintű Igen
Kódintegritás-védelem Korlátozza a Microsoft, WHQL vagy újabb által aláírt lemezképek betöltését. Nem kötelezően engedélyezheti a Microsoft Store által aláírt lemezképeket. Csak alkalmazásszintű Igen
Hosszabbítópontok letiltása Letiltja a különböző bővíthetőségi mechanizmusokat, amelyek lehetővé teszik a DLL-injektálását az összes folyamatba, például az AppInit DLL-ekbe, az ablak beavatkozási pontokba és a Winsock-szolgáltatókba. Csak alkalmazásszintű Nem
Win32k rendszerhívások letiltása Megakadályozza, hogy egy alkalmazás használja a Win32k rendszerhívási táblázatát. Csak alkalmazásszintű Igen
Gyermekfolyamatok tiltása Megakadályozza, hogy egy alkalmazás gyermekfolyamatokat hozhasson létre. Csak alkalmazásszintű Igen
Exportcímszűrés (EAF) Észleli a kártékony kód által feloldott veszélyes műveleteket. Opcionálisan ellenőrizheti a hozzáférést a biztonsági rések által gyakran használt modulok alapján. Csak alkalmazásszintű Igen
Importcímszűrés (IAF) Észleli a kártékony kód által feloldott veszélyes műveleteket. Csak alkalmazásszintű Igen
Végrehajtás szimulálása (SimExec) Biztosítja, hogy a bizalmas API-k hívásai visszakerülhessenek a jogosult hívókhoz. Csak 32 bites (x86) alkalmazásokhoz konfigurálható. Nem kompatibilis az ACG-vel. Csak alkalmazásszintű Igen
API-meghívás ellenőrzése (CallerCheck) Biztosítja, hogy a bizalmas API-kat jogosult hívók hajtsák végre. Csak 32 bites (x86) alkalmazásokhoz konfigurálható. Nem kompatibilis az ACG-vel Csak alkalmazásszintű Igen
Leírókezelés ellenőrzése Kivételt vált ki az érvénytelen leíróhivatkozások esetén. Csak alkalmazásszintű Nem
Lemezképfüggőség-integritás ellenőrzése Kényszeríti a kódaláírást a Windows-lemezkép függőségeinek betöltéséhez. Csak alkalmazásszintű Nem
Halomintegritás ellenőrzése (StackPivot) Biztosítja, hogy a verem ne legyen átirányítva a bizalmas API-khoz. Nem kompatibilis az ACG-vel. Csak alkalmazásszintű Igen

Fontos

Ha felvesz egy alkalmazást a Programbeállítások szakaszban és ott konfigurálja az egyes kockázatcsökkentési beállításokat, azok a Rendszerbeállítások szakaszban megadott azonos kockázatcsökkentések konfigurációja felett lesznek figyelembe véve. Az alábbi mátrix és példák segítenek az alapértelmezett értékek működésének szemléltetésében:

Engedélyezve a Programbeállítások között Engedélyezve a Rendszerbeállítások között Viselkedés
Igen Nem A Programbeállítások között megadottak szerint
Igen Igen A Programbeállítások között megadottak szerint
Nem Igen A Rendszerbeállítások között megadottak szerint
Nem Nem Alapértelmezett az Alapértelmezett érték használata között megadottak szerint
  • 1. példa Tibor úgy konfigurálja az Adatvégrehajtás megakadályozását (DEP) a Rendszerbeállítások szakaszban, hogy az Alapértelmezés szerint ki legyen kapcsolva. Tibor ezután hozzáadja a test.exe alkalmazást a Programbeállítások szakaszhoz. Az adott alkalmazás beállításaiban az Adatvégrehajtás megakadályozása (DEP) területen engedélyezi a Rendszerbeállítások felülbírálása lehetőséget, és Be állásba kapcsolja a kapcsolót. A Programbeállítások szakaszban nincsenek más alkalmazások. Az eredmény az lesz, hogy a DEP csak a test.exefájlhoz lesz engedélyezve. Az összes többi alkalmazásra nem lesz alkalmazva a DEP.

  • 2. példa Zsolt úgy konfigurálja az Adatvégrehajtás megakadályozását (DEP) a Rendszerbeállítások szakaszban, hogy az Alapértelmezés szerint ki legyen kapcsolva. Zsolt ezután hozzáadja a test.exe alkalmazást a Programbeállítások szakaszhoz. Az adott alkalmazás beállításaiban az Adatvégrehajtás megakadályozása (DEP) területen engedélyezi a Rendszerbeállítások felülbírálása lehetőséget, és Be állásba kapcsolja a kapcsolót. Josie emellett hozzáadja a miles.exe alkalmazást is a Programbeállítások szakaszhoz, és konfigurálja a Vezérlésfolyam-őrfeltételt (CFG)Be értékre állítja. Zsolt nem engedélyezi a DEP Rendszerbeállítások felülbírálása beállítását, sem egyéb kockázatcsökkentést az alkalmazásra. Az eredmény az lesz, hogy a DEP a test.exefájlhoz lesz engedélyezve. A DEP nem lesz engedélyezve semmilyen más alkalmazáshoz, beleértve a miles.exe fájlt is. A CFG engedélyezve lesz a miles.exe fájlhoz.

Megjegyzés:

Ha bármilyen problémát talált ebben a cikkben, jelentheti azt közvetlenül egy Windows Server-/Windows-ügyfélpartnernek, vagy használhatja az országa/régiója microsoftos technikai támogatási telefonszámait.

Rendszerszintű kockázatcsökkentés konfigurálása az Windows Biztonság appal

  1. Nyissa meg a Windows biztonság alkalmazást a tálca pajzs ikonjának kiválasztásával, vagy keressen rá a Windows biztonság kifejezésre a Start menüben.

  2. Válassza az Alkalmazás- és böngészőszabályozás csempét (vagy a bal oldali menüsáv alkalmazásikonját), majd válassza a Biztonsági rés kiaknázása elleni védelem elemet.

  3. A Rendszerbeállítások szakaszban keresse meg a konfigurálni kívánt kockázatcsökkentést, majd válassza az alábbiak egyikét. Azok az alkalmazások, amelyek nincsenek külön konfigurálva a Programbeállítások szakaszban, az itt konfigurált beállításokat használják:

    • Alapértelmezés szerint bekapcsolva − A kockázatcsökkentés engedélyezve van az olyan alkalmazások esetében, amelyeken nincs beállítva ez a kockázatcsökkentés az alkalmazásspecifikus Programbeállítások szakaszban
    • Alapértelmezés szerint kikapcsolva − A kockázatcsökkentés le van tiltva az olyan alkalmazások esetében, amelyeken nincs beállítva ez a kockázatcsökkentés az alkalmazásspecifikus Programbeállítások szakaszban
    • Alapértelmezett használata − A kockázatcsökkentés vagy engedélyezve van, vagy le van tiltva, a Windows 10 vagy a Windows 11 telepítése által beállított alapértelmezett konfigurációtól függően; az alapértelmezett érték (Be vagy Ki) mindig az Alapértelmezett használata mellett van megadva az egyes kockázatcsökkentésekhez

    Megjegyzés:

    Bizonyos beállítások módosításakor megjelenhet a Felhasználói fiókok felügyelete ablak. A beállítás alkalmazásához adja meg az adminisztrátori hitelesítő adatokat.

    Egyes beállítások módosítása újraindítást igényelhet.

  4. Ismételje meg ezt az összes konfigurálni kívánt rendszerszintű kockázatcsökkentésre.

  5. Lépjen a Programbeállítások szakaszra, és válassza ki azt az alkalmazást, amelyre kockázatcsökkentést szeretne alkalmazni:

    1. Ha a konfigurálni kívánt alkalmazás már szerepel a listában, jelölje ki, majd válassza a Szerkesztés lehetőséget
    2. Ha az alkalmazás nem szerepel a listában, a lista tetején válassza a Testre szabni kívánt program hozzáadása lehetőséget, majd válassza ki, hogyan szeretné hozzáadni az alkalmazást:
      • A Hozzáadás programnév alapján lehetőséggel alkalmazhatja a kockázatcsökkentést az adott névvel rendelkező futó folyamatokra. Meg kell határoznia egy fájlt kiterjesztéssel. Megadhatja a teljes elérési utat, ha a kockázatcsökkentést csak az adott nevű alkalmazásra szeretné korlátozni az adott helyen.
      • A Pontos fájlelérési út kiválasztása lehetőséggel egy szabványos Windows Intéző fájlválasztó ablakot használhat a kívánt fájl megkereséséhez és kijelöléséhez.
  6. Az alkalmazás kiválasztása után megjelenik az összes alkalmazható kockázatcsökkentés listája. A kockázatcsökkentés engedélyezéséhez jelölje be a jelölőnégyzetet, majd állítsa a csúszkát Be beállításra. Válassza ki a további beállításokat. A Naplózás lehetőség választása csak naplózási módban alkalmazza a kockázatcsökkentést. Értesítést kap, ha újra kell indítania a folyamatot vagy az alkalmazást, vagy ha újra kell indítania a Windowst.

  7. Ismételje meg ezeket a lépéseket az összes konfigurálni kívánt alkalmazásra és kockázatcsökkentésre. Ha végzett a konfiguráció beállításával, válassza az Alkalmaz lehetőséget.

Ezeket a beállításokat exportálhatja XML-fájlként, vagy folytathatja az alkalmazásspecifikus kockázatcsökkentések konfigurálását.

A konfiguráció XML-fájlként való exportálásával átmásolhatja a konfigurációt az egyik eszközről más eszközökre.

PowerShell-referencia

A biztonsági rés kiaknázása elleni védelem konfigurálásához használhatja a Windows Biztonság appot, vagy használhat PowerShell-parancsmagokat.

A rendszer mindig alkalmazza a legutóbb módosított konfigurációs beállításokat, függetlenül attól, hogy a PowerShellt vagy a Windows Biztonság appot használja. Ez azt jelenti, hogy ha az appal konfigurálja a kockázatcsökkentést, majd a PowerShell használatával konfigurálja ugyanazt a kockázatcsökkentést, az app frissül, hogy megjelenjenek a PowerShellben végrehajtott módosítások. Ha ezután az alkalmazás használatával módosítaná újra a kockázatcsökkentést, ez a módosítás lépne életbe.

Fontos

A Csoportházirenden keresztül egy eszközre telepített módosítások felülbírálják a helyi konfigurációt. Kezdeti konfiguráció beállításakor olyan eszközt használjon, amely nem alkalmaz Csoportházirend konfigurációt, hogy a módosítások ne legyenek felülírva.

A(z) Get vagy Set PowerShell-parancsmagot használhatja a(z) ProcessMitigation parancsmaggal. A(z) Get használatával listázhatja az eszközön engedélyezett kockázatcsökkentések aktuális konfigurációs állapotát – adja hozzá a(z) -Name parancsmagot és az app exe alkalmazást, hogy csak az adott alkalmazásra vonatkozó kockázatcsökkentéseket láthassa:

Get-ProcessMitigation -Name processName.exe

Fontos

A nem konfigurált rendszerszintű kockázatcsökkentések NOTSET állapotot fognak megjeleníteni.

Rendszerszintű beállításoknál a(z) NOTSET azt jelzi, hogy a kockázatcsökkentés alapértelmezett beállítása alkalmazva lett.

Alkalmazásszintű beállításoknál a(z) NOTSET azt jelzi, hogy a kockázatcsökkentés rendszerszintű beállítása lesz alkalmazva.

Az egyes rendszerszintű kockázatcsökkentések alapértelmezett beállítása a Windows biztonság alkalmazásban látható.

A(z) Set használatával az alábbi formátumban konfigurálhatja az egyes kockázatcsökkentéseket:

Set-ProcessMitigation -<scope> <app executable> -<action> <mitigation or options>,<mitigation or options>,<mitigation or options>

Hely:

  • <Hatókör>:
    • -Name jelzi, hogy a kockázatcsökkentéseket egy adott alkalmazásra kell alkalmazni. Adja meg az alkalmazás végrehajtható fájlját a jelző után.
    • -System jelzi, hogy a kockázatcsökkentéseket rendszerszinten kell alkalmazni.
  • <Művelet>:
    • -Enable a kockázatcsökkentés engedélyezéséhez
    • -Disable a kockázatcsökkentés letiltásához
  • <Kockázatcsökkentés>:

Például, ha engedélyezni szeretné az Adatvégrehajtás megakadályozása (DEP) kockázatcsökkentést ATL thunk emulációval, egy testing.exe nevű végrehajtható fájlhoz a C:\Apps\LOB\tests mappában, és meg szeretné akadályozni, hogy a végrehajtható fájl gyermekfolyamatokat hozzon létre, a következő parancsot kell használnia:

Set-ProcessMitigation -Name c:\apps\lob\tests\testing.exe -Enable DEP, EmulateAtlThunks, DisallowChildProcessCreation

Fontos

Az egyes kockázatcsökkentési lehetőségeket vesszővel válassza el egymástól.

A DEP rendszerszintű alkalmazásához használja a következő parancsot:

Set-Processmitigation -System -Enable DEP

A kockázatcsökkentések letiltásához cserélje -Enable-t a következőre: -Disable. Azonban alkalmazásszintű kockázatcsökkentés esetén ez a művelet csak az adott alkalmazásra kényszeríti ki a kockázatcsökkentés letiltását.

Ha vissza kell állítania a kockázatcsökkentést a rendszer alapértelmezett értékére, a(z) -Remove parancsmagot is fel kell vennie a következő példába:

Set-Processmitigation -Name test.exe -Remove -Disable DEP

Néhány kockázatcsökkentést naplózási módra is beállíthat. A kockázatcsökkentéshez a PowerShell-parancsmag használata helyett használja a Naplózási mód parancsmagját az alábbi kockázatcsökkentési parancsmagok táblázatában megadottak szerint.

Ha például auditálási módban szeretné engedélyezni a Tetszőleges programkód futtatása elleni védelem (ACG) alkalmazást a korábban használt testing.exe fájlhoz, futtassa a következő parancsot:

Set-ProcessMitigation -Name c:\apps\lob\tests\testing.exe -Enable AuditDynamicCode

A naplózási módot ugyanazzal a paranccsal tilthatja le, a(z) -Enable értékét viszont helyettesítse -Disable értékkel.

PowerShell-referenciatáblázat

Ez a táblázat felsorolja az egyes kockázatcsökkentések konfigurálásához használható PowerShell-parancsmagokat (és a kapcsolódó naplózási módú parancsmagokat).

Kockázatcsökkentés A következőkre vonatkozik: PowerShell-parancsmagok Naplózási mód parancsmagja
Vezérlésfolyam-szabályozás (CFG) Rendszer- és alkalmazásszintű CFG, StrictCFG, SuppressExports A naplózás nem érhető el
Adatvégrehajtás megakadályozása (DEP) Rendszer- és alkalmazásszintű DEP, EmulateAtlThunks A naplózás nem érhető el
Véletlenszerűsítés kényszerítése a lemezképeknél (kötelező ASLR) Rendszer- és alkalmazásszintű ForceRelocateImages A naplózás nem érhető el
Véletlenszerű memóriafoglalás (ASLR alulról felfelé) Rendszer- és alkalmazásszintű BottomUp, HighEntropy A naplózás nem érhető el
Kivételláncok ellenőrzése (SEHOP) Rendszer- és alkalmazásszintű SEHOP, SEHOPTelemetry A naplózás nem érhető el
Halommemória-integritás ellenőrzése Rendszer- és alkalmazásszintű TerminateOnError A naplózás nem érhető el
Tetszőleges programkód futtatása elleni védelem (ACG) Csak alkalmazásszintű DynamicCode AuditDynamicCode
Alacsony integritású lemezképek blokkolása Csak alkalmazásszintű BlockLowLabel AuditImageLoad
Távoli lemezképek blokkolása Csak alkalmazásszintű BlockRemoteImages A naplózás nem érhető el
Nem megbízható betűkészletek blokkolása Csak alkalmazásszintű DisableNonSystemFonts AuditFont, FontAuditOnly
Kódintegritás-védelem Csak alkalmazásszintű BlockNonMicrosoftSigned, AllowStoreSigned AuditMicrosoftSigned, AuditStoreSigned
Hosszabbítópontok letiltása Csak alkalmazásszintű ExtensionPoint A naplózás nem érhető el
Win32k rendszerhívások letiltása Csak alkalmazásszintű DisableWin32kSystemCalls AuditSystemCall
Gyermekfolyamatok tiltása Csak alkalmazásszintű DisallowChildProcessCreation AuditChildProcess
Exportcímszűrés (EAF) Csak alkalmazásszintű EnableExportAddressFilterPlus, EnableExportAddressFilter [1] A naplózás nem érhető el[2]
Importcímszűrés (IAF) Csak alkalmazásszintű EnableImportAddressFilter A naplózás nem érhető el[2]
Végrehajtás szimulálása (SimExec) Csak alkalmazásszintű EnableRopSimExec A naplózás nem érhető el[2]
API-meghívás ellenőrzése (CallerCheck) Csak alkalmazásszintű EnableRopCallerCheck A naplózás nem érhető el[2]
Leírókezelés ellenőrzése Csak alkalmazásszintű StrictHandle A naplózás nem érhető el
Lemezképfüggőség-integritás ellenőrzése Csak alkalmazásszintű EnforceModuleDepencySigning A naplózás nem érhető el
Halomintegritás ellenőrzése (StackPivot) Csak alkalmazásszintű EnableRopStackPivot A naplózás nem érhető el[2]

[1]: A következő formátummal engedélyezheti az EAF-modulokat a dll-ek számára egy folyamathoz:

Set-ProcessMitigation -Name processName.exe -Enable EnableExportAddressFilterPlus -EAFModules dllName1.dll,dllName2.dll

[2]: A kockázatcsökkentés naplózása Nem érhető el PowerShell-parancsmagokkal.

Az értesítés testreszabása

A szabály aktiválásakor és egy alkalmazás vagy fájl letiltásakor megjelenő értesítés testreszabásáról további információt a Windows-biztonság című témakörben talál.

Lásd még

Tipp

Szeretne többet megtudni? Engage a Microsoft biztonsági közösségével a technikai közösségünkben: Végponthoz készült Microsoft Defender Tech Community.