Delen via


App-beheer gebruiken om PowerShell te beveiligen

Windows 10 bevat twee technologieën, App Control voor Bedrijven en AppLocker, die u kunt gebruiken om toepassingen te beheren. Hiermee kunt u een vergrendelingservaring maken om uw PowerShell-omgeving te beveiligen.

AppLocker is gebaseerd op de toepassingsbeheerfuncties van softwarerestrictiebeleid. Met AppLocker kunt u regels maken om apps toe te staan of te weigeren voor specifieke gebruikers of groepen. U identificeert de apps op basis van unieke eigenschappen van de bestanden.

Met Toepassingsbeheer voor Bedrijven, geïntroduceerd in Windows 10 als Windows Defender Application Control (WDAC), kunt u bepalen welke stuurprogramma's en toepassingen mogen worden uitgevoerd in Windows.

Detectie van vergrendelingsbeleid

PowerShell detecteert zowel AppLocker- als App Control for Business-beleid voor het hele systeem. AppLocker heeft geen manier om een query uit te voeren op de status van het afdwingen van beleid. Om te detecteren of een systeembreed toepassingsbeheerbeleid wordt afgedwongen door AppLocker, maakt PowerShell twee tijdelijke bestanden en tests als ze kunnen worden uitgevoerd. De bestandsnamen gebruiken de volgende naamindeling:

  • $env:TEMP/__PSAppLockerTest__<random-8dot3-name>.ps1
  • $env:TEMP/__PSAppLockerTest__<random-8dot3-name>.psm1

App Control voor Bedrijven is het voorkeurssysteem voor toepassingsbeheer voor Windows. App Control biedt API's waarmee u de beleidsconfiguratie kunt detecteren. App Control is ontworpen als een beveiligingsfunctie onder de onderhoudscriteria die zijn gedefinieerd door het Microsoft Security Response Center (MSRC). Zie Toepassingsbesturingselementen voor Windows - en app-beheer en beschikbaarheid van AppLocker-functies voor meer informatie.

Notitie

Wanneer u kiest tussen App Control of AppLocker, wordt u aangeraden toepassingsbeheer te implementeren met Behulp van App Control voor Bedrijven in plaats van AppLocker. Microsoft investeert niet meer in AppLocker. Hoewel AppLocker mogelijk nog steeds beveiligingsoplossingen ontvangt, worden er geen functieverbeteringen ontvangen.

Afdwingen van app-beheerbeleid

Wanneer PowerShell wordt uitgevoerd onder een App Control-beleid, wordt het gedrag ervan gewijzigd op basis van het gedefinieerde beveiligingsbeleid. Onder beleid voor app-beheer voert PowerShell vertrouwde scripts en modules uit die zijn toegestaan door het beleid in FullLanguage de modus. Alle andere scripts en scriptblokken zijn niet vertrouwd en worden uitgevoerd in ConstrainedLanguage de modus. PowerShell genereert fouten wanneer de niet-vertrouwde scripts proberen acties uit te voeren die niet zijn toegestaan in ConstrainedLanguage de modus. Het kan lastig zijn om te weten waarom een script niet correct kan worden uitgevoerd in ConstrainedLanguage de modus.

Controle van app-beheerbeleid

PowerShell 7.4 heeft een nieuwe functie toegevoegd ter ondersteuning van app-beheerbeleid in de controlemodus . In de controlemodus voert PowerShell de niet-vertrouwde scripts uit in ConstrainedLanguage de modus zonder fouten, maar registreert berichten in het gebeurtenislogboek. In de logboekberichten wordt beschreven welke beperkingen van toepassing zijn als het beleid zich in de modus Afdwingen bevindt .

Geschiedenis van wijzigingen

Windows PowerShell 5.1 was de eerste versie van PowerShell ter ondersteuning van App Control. De beveiligingsfuncties van App Control en AppLocker worden verbeterd met elke nieuwe versie van PowerShell. In de volgende secties wordt beschreven hoe deze ondersteuning is gewijzigd in elke versie van PowerShell. De wijzigingen zijn cumulatief, dus de functies die in de latere versies worden beschreven, bevatten deze uit eerdere versies.

Wijzigingen in PowerShell 7.4

Wanneer PowerShell in Windows wordt uitgevoerd onder beleid voor app-beheer, wordt het gedrag ervan gewijzigd op basis van het gedefinieerde beveiligingsbeleid. Onder beleid voor app-beheer voert PowerShell vertrouwde scripts en modules uit die zijn toegestaan door het beleid in FullLanguage de modus. Alle andere scripts en scriptblokken zijn niet vertrouwd en worden uitgevoerd in ConstrainedLanguage de modus. PowerShell genereert fouten wanneer de niet-vertrouwde scripts proberen niet-toegestane acties uit te voeren. Het is moeilijk te weten waarom een script niet correct kan worden uitgevoerd in ConstrainedLanguage de modus.

PowerShell 7.4 ondersteunt nu app-beheerbeleid in de controlemodus . In de controlemodus voert PowerShell de niet-vertrouwde scripts uit in ConstrainedLanguage de modus, maar registreert berichten in het gebeurtenislogboek in plaats van fouten te genereren. In de logboekberichten wordt beschreven welke beperkingen van toepassing zijn als het beleid zich in de modus Afdwingen bevindt .

Wijzigingen in PowerShell 7.3

  • PowerShell 7.3 ondersteunt nu de mogelijkheid om PowerShell-scriptbestanden te blokkeren of toe te staan via de App Control-API.

Wijzigingen in PowerShell 7.2

  • Er is een scenario in de hoek in AppLocker waarin u alleen regels voor weigeren en beperkte modus hebt, niet wordt gebruikt om het beleid af te dwingen waarmee u het uitvoeringsbeleid kunt omzeilen. Vanaf PowerShell 7.2 is een wijziging aangebracht om ervoor te zorgen dat AppLocker-regels voorrang krijgen op een Set-ExecutionPolicy -ExecutionPolicy Bypass opdracht.

  • PowerShell 7.2 staat nu het gebruik van de Add-Type cmdlet in een NoLanguage modus PowerShell-sessie op een vergrendelde computer niet toe.

  • PowerShell 7.2 staat nu niet toe dat scripts COM-objecten gebruiken in de vergrendelingsvoorwaarden van het AppLocker-systeem. Cmdlets die intern COM of DCOM gebruiken, worden niet beïnvloed.

Meer lezen