Sdílet prostřednictvím


Přizpůsobení ochrany před zneužitím

Platí pro:

Chcete používat Defender pro Endpoint? Zaregistrujte se a získejte bezplatnou zkušební verzi,

Ochrana před zneužitím automaticky aplikuje řadu technik zmírnění zneužití na procesy operačního systému i na jednotlivé aplikace.

Nakonfigurujte tato nastavení pomocí aplikace Zabezpečení Windows na jednotlivých zařízeních. Potom exportujte konfiguraci jako soubor XML, abyste ho mohli nasadit do jiných zařízení. Použijte Zásady skupiny k distribuci souboru XML do více zařízení najednou. Zmírnění rizik můžete také nakonfigurovat pomocí PowerShellu.

Tento článek uvádí všechna zmírnění rizik, která jsou k dispozici při ochraně před zneužitím. Označuje, jestli se zmírnění rizik dá použít v celém systému, nebo na jednotlivé aplikace, a poskytuje stručný popis, jak zmírnění rizik funguje.

Popisuje také, jak povolit nebo nakonfigurovat zmírnění rizik pomocí poskytovatelů konfiguračních služeb (CSP) Zabezpečení Windows, PowerShellu a správy mobilních zařízení (MDM). Toto je první krok při vytváření konfigurace, kterou můžete nasadit v síti. Dalším krokem je generování, export, import a nasazení konfigurace do více zařízení.

Upozornění

Některé technologie pro zmírnění rizik zabezpečení můžou mít s některými aplikacemi problémy s kompatibilitou. Před nasazením konfigurace do produkčního prostředí nebo zbytku sítě byste měli otestovat ochranu exploit protection ve všech scénářích použití cíle pomocí režimu auditování.

Zmírnění rizik ochrany před zneužitím

Všechna zmírnění rizik je možné nakonfigurovat pro jednotlivé aplikace. Některá zmírnění rizik lze také použít na úrovni operačního systému.

Každé omezení rizik můžete nastavit na hodnotu zapnuto, vypnuto nebo na výchozí hodnotu. Některá omezení rizik mají další možnosti, které jsou uvedené v popisu v tabulce.

Výchozí hodnoty se vždy zadávají v hranatých závorkách v možnosti Použít výchozí pro každé zmírnění rizik. V následujícím příkladu je výchozí pro zabránění spuštění dat „Zapnuto“.

Možnost Použít výchozí konfiguraci pro každé nastavení zmírnění rizik označuje naše doporučení pro základní úroveň ochrany každodenního používání pro domácí uživatele. Podniková nasazení by měla zvážit ochranu vyžadovanou pro jejich individuální potřeby a může být nutné změnit konfiguraci mimo výchozí nastavení.

Související rutiny PowerShellu pro každé zmírnění rizik najdete v referenční tabulce PowerShellu v dolní části tohoto článku.

Zmírnění rizik Popis Dá se použít na K dispozici je režim auditování
Ochrana toku řízení (CFG) Zajistí integritu toku řízení pro nepřímá volání. Volitelně může potlačit exporty a používat striktní CFG. Systém a úroveň aplikace Ne
Zabránění spuštění dat (DEP) Zabraňuje spuštění kódu z paměťových stránek pouze pro data, jako je halda a zásobníky. Dá se konfigurovat jenom pro 32bitové (x86) aplikace, trvale povolené pro všechny ostatní architektury. Volitelně lze povolit emulaci převodní rutiny ATL. Systém a úroveň aplikace Ne
Vynutit randomizaci obrázků (povinné ASLR) Vynuceně přemístí image, které nejsou kompilované pomocí /DYNAMICBASE. Volitelně může selhat při načítání imagí, které nemají informace o přemístění. Systém a úroveň aplikace Ne
Náhodné přidělování paměti (ASLR zdola nahoru) Náhodně zařizuje umístění pro přidělení virtuální paměti. Zahrnuje haldy struktury systému, zásobníky, soubory TEB a PEB. Volitelně může pro 64bitové procesy použít širší odchylku randomizace. Systém a úroveň aplikace Ne
Ověřit řetězce výjimek (SEHOP) Zajišťuje integritu řetězu výjimek během odesílání výjimek. Dá se konfigurovat jenom pro 32bitové (x86) aplikace. Systém a úroveň aplikace Ne
Ověřit integritu haldy Ukončí proces při zjištění poškození haldy. Systém a úroveň aplikace Ne
Ochrana proti spuštění libovolného kódu (ACG) Zabrání zavedení spustitelného kódu bez obrázku a zabrání úpravám znakových stránek. Volitelně může povolit výslovný nesouhlas s vlákny a povolit vzdálený downgrade (dá se konfigurovat jenom pomocí PowerShellu). Pouze na úrovni aplikace Ano
Blokovat obrázky s nízkou integritou Zabrání načítání obrázků označených nízkou integritou. Pouze na úrovni aplikace Ano
Blokovat vzdálené obrázky Znemožní načítání imagí ze vzdálených zařízení. Pouze na úrovni aplikace Ne
Blokovat nedůvěryhodná písma Zabrání načítání písem založených na rozhraní GDI, která nejsou nainstalovaná v adresáři systémových písem, zejména písma z webu. Pouze na úrovni aplikace Ano
Ochrana integrity kódu Omezuje načítání obrázků podepsaných Microsoftem, WHQL nebo novějším. Volitelně může povolit Microsoft Store podepsaných imagí. Pouze na úrovni aplikace Ano
Zakázat body rozšíření Zakáže různé mechanismy rozšiřitelnosti, které umožňují injektáž knihovny DLL do všech procesů, jako jsou knihovny DLL AppInit, zavěšení oken a poskytovatelé služby Winsock. Pouze na úrovni aplikace Ne
Zakázat systémová volání Win32k Zabrání aplikaci v používání systémové tabulky volání Win32k. Pouze na úrovni aplikace Ano
Nepovolit podřízené procesy Zabrání aplikaci v vytváření podřízených procesů. Pouze na úrovni aplikace Ano
Export filtrování adres (EAF) Detekuje nebezpečné operace vyřešené škodlivým kódem. Volitelně může ověřit přístup moduly běžně používanými zneužitím. Pouze na úrovni aplikace Ano
Import filtrování adres (IAF) Detekuje nebezpečné operace vyřešené škodlivým kódem. Pouze na úrovni aplikace Ano
Simulovat provádění (SimExec) Zajišťuje, aby se volání citlivých rozhraní API vracela legitimním volajícím. Dá se konfigurovat jenom pro 32bitové (x86) aplikace. Není kompatibilní s ACG. Pouze na úrovni aplikace Ano
Ověřit vyvolání rozhraní API (CallerCheck) Zajišťuje, aby citlivá rozhraní API vyvolali legitimní volající. Dá se konfigurovat jenom pro 32bitové (x86) aplikace. Není kompatibilní s ACG Pouze na úrovni aplikace Ano
Ověřit použití popisovačů Způsobí vyvolání výjimky u všech neplatných odkazů na popisovač. Pouze na úrovni aplikace Ne
Ověřit integritu závislosti obrázku Vynucuje podepisování kódu pro načítání závislostí bitových kopií Systému Windows. Pouze na úrovni aplikace Ne
Ověřit integritu zásobníku (StackPivot) Zajišťuje, že zásobník nebyl přesměrován na citlivá rozhraní API. Není kompatibilní s ACG. Pouze na úrovni aplikace Ano

Důležité

Pokud přidáte aplikaci do části Nastavení programu a nakonfigurujete tam jednotlivá nastavení pro zmírnění rizik, budou se respektovat nad konfigurací pro stejná omezení rizik uvedená v části Nastavení systému. Následující matice a příklady vám ukážou, jak fungují výchozí hodnoty:

Povoleno vNastavení Programu Povoleno v Nastavení Systému Chování
Ano Ne Jak je definováno v Nastavení Programu
Ano Ano Jak je definováno v Nastavení Programu
Ne Ano Jak je definováno v Nastavení Systému
Ne Ne Výchozí, jak je definováno v části Použít výchozí možnost
  • Příklad 1 Michael konfiguruje zabránění spuštění dat (DEP) v části Nastavení systému tak, aby bylo ve výchozím nastavení vypnuté. Michael pak přidá soubor test.exe aplikace do části Nastavení programu. V možnostech pro tuto aplikaci v části Zabránění spuštění dat (DEP)povolí možnost Přepsat nastavení systému a nastaví přepínač na Zapnuto. V části Nastavení programu nejsou uvedené žádné další aplikace. Výsledkem bude, že program DEP bude povolen pouze pro test.exe. U všech ostatních aplikací se Zabránění spuštění dat (DEP) nepoužije.

  • Příklad 2 Jana konfiguruje zabránění spuštění dat (DEP) v části Nastavení systému tak, aby bylo ve výchozím nastavení vypnuté. Jana pak přidá soubor test.exe aplikace do části Nastavení programu. V možnostech pro tuto aplikaci v části Zabránění spuštění dat (DEP)povolí možnost Přepsat nastavení systému a nastaví přepínač na Zapnuto. Josie také přidá soubor miles.exe aplikace do části Nastavení programu a nakonfiguruje Ochranu toku řízení (CFG) na Zapnuto. Nepovolí možnost Přepsat nastavení systému pro DEP ani žádná jiná omezení rizik pro danou aplikaci. Výsledkem bude, že program DEP bude povolen pro test.exe. Zabránění spuštění dat (DEP) se nepovolí pro žádnou jinou aplikaci, včetně souboru miles.exe. Pro miles.exe se povolí Ochrana toku řízení (CFG).

Poznámka

Pokud jste v tomto článku našli nějaké problémy, můžete je ohlásit přímo partnerovi pro windows server nebo klienty Windows nebo použít čísla technické podpory Microsoftu pro vaši zemi nebo oblast.

Konfigurace zmírnění rizik na úrovni systému pomocí aplikace Zabezpečení Windows

  1. Otevřete aplikaci Zabezpečení Windows výběrem ikony štítu na hlavním panelu nebo vyhledáním v nabídce Start Zabezpečení Windows.

  2. Vyberte dlaždici Řízení aplikací a prohlížečů (nebo ikonu aplikace na levém řádku nabídek) a pak vyberte Ochrana Exploit Protection.

  3. V části Nastavení systému najděte zmírnění rizik, které chcete nakonfigurovat, a vyberte jednu z následujících možností. Aplikace, které nejsou nakonfigurované jednotlivě v části Nastavení programu, budou používat nastavení nakonfigurovaná tady:

    • Ve výchozím nastavení zapnuté – Omezení rizik je povolené pro aplikace, které nemají toto omezení rizik nastavené v části nastavení programu specifického pro aplikaci.
    • Vypnuto ve výchozím nastavení – Omezení rizik je zakázáno pro aplikace, které nemají toto omezení rizik nastaveno v části nastavení programu specifického pro aplikaci.
    • Použít výchozí – omezení rizik je buď povolené, nebo zakázané v závislosti na výchozí konfiguraci, která je nastavená instalací Windows 10 nebo Windows 11. Výchozí hodnota (Zapnuto nebo Vypnuto) je vždy zadaná vedle popisku Použít výchozí pro každé zmírnění rizik.

    Poznámka

    Při změně některých nastavení se může zobrazit okno Řízení uživatelských účtů. Pokud chcete nastavení použít, zadejte přihlašovací údaje správce.

    Změna některých nastavení může vyžadovat restartování.

  4. Tento postup opakujte pro všechna omezení rizik na úrovni systému, která chcete nakonfigurovat.

  5. Přejděte do části Nastavení programu a zvolte aplikaci, u které chcete zmírnit rizika:

    1. Pokud už je aplikace, kterou chcete nakonfigurovat, uvedená, vyberte ji a pak vyberte Upravit.
    2. Pokud aplikace není uvedená, v horní části seznamu vyberte Přidat program, který chcete přizpůsobit, a pak zvolte, jak chcete aplikaci přidat:
      • Pokud chcete, aby se zmírnění rizik použilo u všech spuštěných procesů s tímto názvem, použijte příkaz Přidat podle názvu programu. Musíte zadat soubor s příponou. Můžete zadat úplnou cestu, abyste omezení rizik omezili jenom na aplikaci s tímto názvem v daném umístění.
      • Pokud chcete k vyhledání a výběru požadovaného souboru použít standardní okno pro výběr Průzkumník Windows souboru, použijte možnost Zvolit přesnou cestu k souboru.
  6. Po výběru aplikace se zobrazí seznam všech omezení rizik, která je možné použít. Pokud chcete zmírnění rizik povolit, zaškrtněte políčko a pak nastavte posuvník na Zapnuto. Vyberte další možnosti. Výběrem možnosti Auditovat použijete omezení rizik pouze v režimu auditování. Pokud potřebujete restartovat proces nebo aplikaci nebo restartovat Windows, budete upozorněni.

  7. Tento postup opakujte pro všechny aplikace a omezení rizik, která chcete nakonfigurovat. Až dokončíte nastavení konfigurace, vyberte Použít.

Tato nastavení teď můžete exportovat jako soubor XML nebo pokračovat v konfiguraci zmírnění rizik specifických pro aplikaci.

Export konfigurace jako souboru XML umožňuje zkopírovat konfiguraci z jednoho zařízení do jiných zařízení.

Referenční informace k PowerShellu

Ke konfiguraci ochrany Exploit Protection můžete použít Zabezpečení Windows aplikaci nebo můžete použít rutiny PowerShellu.

Nastavení konfigurace, která se naposledy změnila, se použijí vždy bez ohledu na to, jestli používáte PowerShell nebo Zabezpečení Windows. To znamená, že pokud použijete aplikaci ke konfiguraci zmírnění rizik a pak pomocí PowerShellu nakonfigurujete stejné zmírnění rizik, aplikace se aktualizuje, aby zobrazila změny, které jste provedli pomocí PowerShellu. Pokud byste pak k opětovné změně zmírnění rizik použili aplikaci, tato změna by se použila.

Důležité

Všechny změny nasazené do zařízení prostřednictvím Zásady skupiny přepíšou místní konfiguraci. Při nastavování počáteční konfigurace použijte zařízení, u kterého se nepoužije konfigurace Zásady skupiny, abyste zajistili, že se vaše změny nepřepíšou.

Můžete použít příkaz PowerShell Get nebo Set s rutinou ProcessMitigation. Pomocí Get zobrazíte seznam aktuálního stavu konfigurace všech zmírnění rizik, která byla na zařízení povolena – přidejte -Name rutinu a nástroj App Exe, abyste viděli zmírnění rizik pouze pro tuto aplikaci:

Get-ProcessMitigation -Name processName.exe

Důležité

Omezení rizik na úrovni systému, která nebyla nakonfigurována, zobrazí stav NOTSET.

U nastavení na úrovni systému NOTSET označuje, že bylo použito výchozí nastavení pro toto zmírnění.

U nastavení na úrovni aplikace NOTSET označuje, že se použije nastavení na úrovni systému pro zmírnění rizik.

Výchozí nastavení pro každé zmírnění rizik na úrovni systému je možné zobrazit v Zabezpečení Windows.

Ke konfiguraci jednotlivých zmírnění rizik použijte Set v následujícím formátu:

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

Kde:

  • <Obor>:
    • -Name, aby bylo zřejmé, že by se omezení rizik měla použít pro konkrétní aplikaci. Po tomto příznaku zadejte spustitelný soubor aplikace.
    • -System, aby bylo zřejmé, že by se omezení rizik mělo použít na úrovni systému
  • <Akce>:
    • -Enable pro povolení zmírnění rizik
    • -Disable pro zakázání zmírnění rizik
  • <Zmírnění rizik>:

Pokud chcete například povolit zmírnění rizik Zabránění spuštění dat (DEP) pomocí emulace převodní rutiny ATL a spustitelného souboru s názvem testing.exe ve složce C:\Apps\LOB\tests a zabránit tomuto spustitelnému souboru v vytváření podřízených procesů, použijte následující příkaz:

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

Důležité

Jednotlivé možnosti zmírnění rizik oddělte čárkami.

Pokud byste chtěli použít Zabránění spuštění dat DEP na úrovni systému, použili byste následující příkaz:

Set-Processmitigation -System -Enable DEP

Omezení rizik můžete zakázat tak, že -Enable nahradíte -Disable. V případě zmírnění rizik na úrovni aplikace to ale vynutí, aby se omezení rizik zakázaly jenom pro danou aplikaci.

Pokud potřebujete obnovit omezení rizik zpět do výchozího stavu systému, musíte zahrnout také rutinu -Remove, a to i v následujícím příkladu:

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

Některá omezení rizik můžete také nastavit na režim auditování. Místo použití rutiny PowerShellu ke zmírnění rizik použijte rutinu režimu auditování, jak je uvedeno v následující tabulce rutin pro zmírnění rizik.

Pokud například chcete povolit ochranu ACG (Arbitrary Code Guard) v režimu auditování pro dříve použitý testing.exe, použijte následující příkaz:

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

Režim auditování můžete zakázat pomocí stejného příkazu, ale nahradit -Enable-Disable.

Referenční tabulka PowerShellu

Tato tabulka obsahuje rutiny PowerShellu (a přidruženou rutinu režimu auditování), které se dají použít ke konfiguraci jednotlivých zmírnění rizik.

Zmírnění rizik Platí pro Rutiny PowerShellu Rutina režimu auditování
Ochrana toku řízení (CFG) Systém a úroveň aplikace CFG, StrictCFG, SuppressExports Audit není k dispozici
Zabránění spuštění dat (DEP) Systém a úroveň aplikace DEP, emulace AtlT orchestrace Audit není k dispozici
Vynutit randomizaci obrázků (povinné ASLR) Systém a úroveň aplikace ForceRelocateImages Audit není k dispozici
Náhodné přidělování paměti (ASLR zdola nahoru) Systém a úroveň aplikace BottomUp, HighEntropy Audit není k dispozici
Ověřit řetězce výjimek (SEHOP) Systém a úroveň aplikace SEHOP, SEHOPTelemetry Audit není k dispozici
Ověřit integritu haldy Systém a úroveň aplikace TerminateOnError Audit není k dispozici
Ochrana proti spuštění libovolného kódu (ACG) Pouze na úrovni aplikace DynamicCode AuditDynamicCode
Blokovat obrázky s nízkou integritou Pouze na úrovni aplikace BlockLowLabel AuditImageLoad
Blokovat vzdálené obrázky Pouze na úrovni aplikace BlockRemoteImages Audit není k dispozici
Blokovat nedůvěryhodná písma Pouze na úrovni aplikace DisableNonSystemFonts AuditFont, FontAuditOnly
Ochrana integrity kódu Pouze na úrovni aplikace BlockNonMicrosoftSigned, AllowStoreSigned AuditMicrosoftSigned, AuditStoreSigned
Zakázat body rozšíření Pouze na úrovni aplikace ExtensionPoint Audit není k dispozici
Zakázat systémová volání Win32k Pouze na úrovni aplikace DisableWin32kSystemCalls AuditSystemCall
Nepovolit podřízené procesy Pouze na úrovni aplikace DisallowChildProcessCreation AuditChildProcess
Export filtrování adres (EAF) Pouze na úrovni aplikace EnableExportAddressFilterPlus, EnableExportAddressFilter [1] Audit není k dispozici[2]
Import filtrování adres (IAF) Pouze na úrovni aplikace EnableImportAddressFilter Audit není k dispozici[2]
Simulovat provádění (SimExec) Pouze na úrovni aplikace EnableRopSimExec Audit není k dispozici[2]
Ověřit vyvolání rozhraní API (CallerCheck) Pouze na úrovni aplikace EnableRopCallerCheck Audit není k dispozici[2]
Ověřit použití popisovačů Pouze na úrovni aplikace StrictHandle Audit není k dispozici
Ověřit integritu závislosti obrázku Pouze na úrovni aplikace EnforceModuleDepencySigning Audit není k dispozici
Ověřit integritu zásobníku (StackPivot) Pouze na úrovni aplikace EnableRopStackPivot Audit není k dispozici[2]

[1]: Pomocí následujícího formátu povolte moduly EAF pro knihovny DLL pro proces:

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

[2]: Audit pro toto zmírnění rizik není dostupný prostřednictvím rutin PowerShellu.

Přizpůsobení oznámení

Další informace o přizpůsobení oznámení při aktivaci pravidla a blokování aplikace nebo souboru najdete v tématu Zabezpečení Windows.

Viz také

Tip

Chcete se dozvědět více? Engage s komunitou Microsoft Security v naší technické komunitě: Microsoft Defender for Endpoint Tech Community.