Další informace o zabezpečení skriptů PowerShellu

Platí pro: Configuration Manager (Current Branch)

Správce zodpovídá za ověření navrhovaného použití parametrů PowerShellu a PowerShellu v jeho prostředí. Tady je několik užitečných zdrojů informací, které správcům pomůžou informovat o výkonu PowerShellu a potenciálních potenciálních rizikových plochách. Tyto doprovodné materiály vám pomůžou zmírnit potenciální rizika a umožnit použití bezpečných skriptů.

Zabezpečení skriptů PowerShellu

Funkce Configuration Manager skriptů umožňuje vizuálně kontrolovat a schvalovat skripty. O povolení skriptu může požádat jiný správce. Správci by měli vědět, že skripty PowerShellu můžou mít obfuskované skripty. Obfuskovaný skript může být škodlivý a obtížně zjistitelné vizuální kontrolou během procesu schvalování skriptu. Vizuálně zkontrolujte skripty PowerShellu a použijte nástroje pro kontrolu, které vám pomůžou odhalit problémy s podezřelými skripty. Tyto nástroje nemůžou vždy určit záměr autora PowerShellu, takže můžou upoutnout pozornost na podezřelý skript. Nástroje ale budou vyžadovat, aby správce posoudil, jestli se jedná o škodlivou nebo úmyslnou syntaxi skriptu.

Doporučení

  • Seznamte se s pokyny k zabezpečení PowerShellu pomocí různých odkazů, na které se odkazuje níže.
  • Podepsání skriptů: Další metodou, jak udržovat skripty zabezpečené, je jejich prověření a následné podepsání před jejich importem pro použití.
  • Neukládejte tajné kódy (například hesla) do skriptů PowerShellu a přečtěte si další informace o tom, jak nakládat s tajnými kódy.

Obecné informace o zabezpečení PowerShellu

Tato kolekce odkazů byla vybrána tak, aby správcům Configuration Manager poskytla výchozí bod pro seznámení s doporučeními k zabezpečení skriptů PowerShellu.

Ochrana před útoky PowerShellu

Ochrana proti injektáži škodlivého kódu

PowerShell – modrý tým se zabývá protokolováním bloků hlubokých skriptů, protokolováním chráněných událostí, rozhraním antimalwarového skenování a rozhraními API zabezpečeného generování kódu.

Rozhraní API pro antimalwarové kontroly

Zabezpečení parametrů PowerShellu

Předávání parametrů je způsob, jak mít flexibilní přístup ke skriptům a odložit rozhodnutí na dobu běhu. Otevírá také další rizikovou plochu.

Následující seznam obsahuje doporučení, jak zabránit škodlivým parametrům nebo injektáži skriptu:

  • Povolte pouze použití předdefinovaných parametrů.
  • K ověření povolených parametrů použijte funkci regulárního výrazu.
    • Příklad: Pokud je povolen pouze určitý rozsah hodnot, pomocí regulárního výrazu zkontrolujte pouze ty znaky nebo hodnoty, které můžou danou oblast vytvořit.
    • Ověřování parametrů může uživatelům zabránit v tom, aby se pokusili použít určité znaky, které mohou být řídicí, například uvozovky. Existuje více typů uvozovek, takže použití regulárních výrazů k ověření, které znaky jsou podle vás přípustné, je často jednodušší než se pokoušet definovat všechny vstupy, které nejsou přípustné.
  • V Galerie prostředí PowerShell použijte modul PowerShellu "injektáž hunter".
    • Může se jednat o falešně pozitivní výsledky, proto hledejte záměr, když se něco označí jako podezřelé, abyste zjistili, jestli se jedná o skutečný problém.
  • Microsoft Visual Studio obsahuje analyzátor skriptů, který vám může pomoct s kontrolou syntaxe PowerShellu.

Následující video s názvem: "DEF CON 25 - Lee Holmes - Get $pwnd: Attacking Battle Hardened Windows Server" poskytuje přehled typů problémů, které můžete zabezpečit (zejména oddíl 12:20 až 17:50):

Doporučení prostředí

Následující seznam obsahuje obecná doporučení pro správce PowerShellu:

  • Nasaďte nejnovější verzi PowerShellu, například verzi 5 nebo novější, která je integrovaná do Windows 10 nebo novější. Můžete také nasadit Windows Management Framework.
  • Povolte a shromážděte protokoly PowerShellu, volitelně včetně protokolování chráněných událostí. Začleňte tyto protokoly do pracovních postupů proaktivního vyhledávání podpisů, proaktivního vyhledávání a reakcí na incidenty.
  • Implementujte just enough administration v systémech s vysokou hodnotou, abyste eliminovali nebo omezili přístup správce k těmto systémům bez omezení.
  • Nasaďte zásady řízení aplikací Windows Defender, aby předem schválené úlohy správy mohly využívat všechny možnosti jazyka PowerShellu a zároveň omezit interaktivní a neschválené použití na omezenou podmnožinu jazyka PowerShellu.
  • Nasaďte Windows 10 nebo novější, abyste poskytovateli antivirového softwaru poskytli úplný přístup k veškerému obsahu (včetně obsahu generovaného nebo defuskovaného za běhu) zpracovávaného hostiteli skriptování Windows, včetně PowerShellu.