PowerShell: Echtzeit-Schutz deaktivieren mit Set-MpPreference
Mit PowerShell ist es möglich, ganz einfach den Echtzeit-Virenschutz zu deaktivieren oder zu aktivieren. Manche Tests an Scripte oder Programmen erfordern es, dass man seinen Windows Defender öder Ähnliches kurzzeitig deaktiviert. So gibt es in PowerShell das Cmdlet Set-MpPreference.
Set-MpPreference in PowerShell
Mit dem Cmdlet Set-MpPreference kann der Echtzeit-Schutz des Antiviren-Programms vorübergehend deaktiviert werden. Das ist natürlich nur für Testzwecke empfehlenswert. Natürlich lässt sich der Virenschutz auch wieder aktivieren. Um den oft umständlichen Weg über Einstellungen zu umgehen, kann das ganze in PowerShell abgebildet werden.
Da dies eine tiefgreifende Einstellung im System ist, werden für Set-MpPreference Administrator-Berechtigungen benötigt. Wenn man dieses Cmdlet in einem komplexeren Script verwendet, kann auch zur Laufzeit überprüft werden, ob PowerShell mit erhöhten Rechten ausgeführt wird.
Echtzeit-Virenschutz deaktivieren
Um nun den lokalen Echtzeit-Schutz deaktivieren zu können, wird das Cmdlet Set-MpPrefenerence benötigt, kombiniert mit dem Parameter -DisableRealtimeMonitoring
. Als Wert wird $true
benötigt.
Set-MpPreference -DisableRealtimeMonitoring $true
Wie man im Screenshot erkennen kann, ist der Schutz nun deaktiviert, aber PowerShell gibt hierzu keine Rückmeldung oder Bestätigung. Gewöhnungsbedürftig ist hier wohl, dass das Deaktivieren mit $true durchgeführt wird.
Echtzeit-Virenschutz aktivieren
Im Gegenzug zum Deaktivieren des Echtzeit Schutzes des Defenders, kann dieser natürlich wieder aktiviert werden. Der PowerShell Befehl ist der Selbe, allerdings muss der Wert (statt $true) $false übergeben werden. So setzt sich dann folgender Befehl zusammen:
Set-MpPreference -DisableRealtimeMonitoring $false
Auch hier wird keine Bestätigung zurückgegeben, der PowerShell Befehl trotzdem erfolgreich ausgeführt.
Fehlermeldung: Set-MpPreference : You don’t have enough permissions…
Wie oben bereits erwähnt, werden für den Vorgang Administrator-Rechte benötigt um den Echtzeit-Virenschutz zu deaktivieren. Das bedeutet, dass PowerShell als Administrator gestartet werden muss, um Set-MpPreference ausführen zu können. Andernfalls erscheint folgende Fehlermeldung:
Set-MpPreference : You don’t have enough permissions to perform the requested operation.