Verwenden von PowerShell zum Untersuchen der Malware-Signaturdefinitionen von Windows Defender
Windows Defender kann nun nach der Veröffentlichung von Windows 10 vollständig als Antivirenprogramm bezeichnet werden. Wie jedes Antivirenprogramm verfügt Windows Defender über eine Datenbankdefinition, mit der Bedrohungen oder Malware identifiziert und blockiert oder entfernt werden. Eine Datenbankdefinition ist eine Sammlung von Malware-Signaturen, für deren Identifizierung ein Antivirenprogramm programmiert wurde. Wenn eine bestimmte Signatur mit einem bestimmten Programm identifiziert wird, wird dieses Programm als Sicherheitsbedrohung gekennzeichnet. Jetzt können Sie mit Windows PowerShell einen Blick hinter die Kulissen werfen und die Engine sehen, auf der Windows Defender läuft. Sie können viel mehr ohne viel Aufwand tun.
In diesem Handbuch wird kurz erläutert, was Windows Defender und Windows PowerShell sind. Anschließend erhalten Sie eine kurze Einführung in die Funktionsweise von Windows PowerShell und die Verwendung von PowerShell zum Verwalten von Windows Defender. Wir werden schließlich sehen, wie wir PowerShell verwenden können, um zu sehen, welche Viren Windows Defender identifizieren kann, indem er in seine Signaturdefinitionsdatenbank schaut.
Was ist Windows Defender?
Windows Defender ist ein Malwareschutz, der in Windows enthalten ist und in Windows integriert ist. Diese Software hilft beim Identifizieren und Entfernen von Viren, Spyware und anderer bösartiger Software. Windows Defender wird im Hintergrund ausgeführt und benachrichtigt Sie, wenn Sie bestimmte Maßnahmen ergreifen müssen. Sie können es jedoch jederzeit verwenden, um nach Malware zu suchen, wenn Ihr Computer nicht ordnungsgemäß funktioniert oder wenn Sie auf einen verdächtigen Link online oder in einer E-Mail-Nachricht geklickt haben.
Windows Defender scheint nach Jahren mit einer ähnlichen Benutzeroberfläche für einen Übergang in eine moderne Windows-App geplant zu sein. Windows Defender erschien zuerst als Anti-Virus-Dienstprogramm für Windows XP. Seit der Vista-Version wurde es in allen Microsoft-Betriebssystemen als Schutz gegen bösartige Software eingebaut. Vor Windows 8 war Windows Defender vor Spyware geschützt. Es enthielt eine Reihe von Echtzeit-Sicherheitsagenten, die mehrere gängige Bereiche von Windows auf Änderungen, die möglicherweise durch Spyware verursacht wurden, überwachten. Es beinhaltete auch die Möglichkeit, installierte ActiveX-Software einfach zu entfernen.
In Windows 8 wurde Windows Defender mit einem anderen Antivirenprodukt - Microsoft Security Essentials - zusammengeführt und jetzt wurde es zu einer umfassenden Antivirensoftware. In Windows 10 werden die Windows Defender-Einstellungen von der App "Einstellungen" gesteuert, auf die Sie über die Einstellungen zugreifen. Das Windows 10-Jubiläumsupdate ermöglicht nun das Anzeigen von Toastbenachrichtigungen und die Ankündigung der Ergebnisse eines Scans, selbst wenn keine Viren gefunden werden.
Der Hauptvorteil von Defender ist, dass es einfach zu bedienen ist, bereits in Windows vorinstalliert ist, standardmäßig aktiviert ist und praktisch keine manuelle Konfiguration benötigt. Es ist auch eine sehr leichte Anwendung und stört Sie nicht mit Pop-ups die ganze Zeit.
Was ist Windows PowerShell?
Windows PowerShell ist eine von Microsoft für die Aufgabenautomatisierung und Konfigurationsverwaltung entwickelte Shell. Diese leistungsstarke Shell basiert auf dem .NET-Framework und enthält eine Befehlszeilenshell und eine Skriptsprache. Ursprünglich nur eine Windows-Komponente, wurde PowerShell am 18. August 2016 als Open-Source- und Cross-Plattform-Plattform eingeführt, sodass jeder Benutzer Befehle zur Verwendung mit PowerShell entwickeln konnte.
Windows Defender hatte immer eine Befehlszeilenversion, die Sie in Ihrem normalen Eingabeaufforderungsfenster ausführen können. Windows 10 enthält jedoch Cmdlets für Windows Defender.
Ein Cmdlet (gesprochen als Befehl-let ) ist ein einfacher Befehl, der in der Windows PowerShell-Umgebung verwendet wird. Die Windows PowerShell-Laufzeit ruft diese Cmdlets im Kontext von Automatisierungsskripten auf, die in der Befehlszeile bereitgestellt werden. Die Windows PowerShell-Laufzeit ruft sie auch programmgesteuert über Windows PowerShell-APIs (Anwendungsprogrammschnittstelle) auf. Cmdlets führen eine Aktion durch und geben in der Regel ein Microsoft .NET Framework-Objekt an den nächsten Befehl in der Pipeline zurück. Wie bei jeder anderen Eingabeaufforderung muss ein Cmdlet vorhanden sein, um Ergebnisse zurückgeben zu können. Andernfalls wird ein Fehler angezeigt.
So starten Sie Windows PowerShell im Administratormodus
Sie können PowerShell ausführen, indem Sie im Run Window PowerShell eingeben, aber das wird nicht ganz ausreichen. Dies liegt daran, dass diese Methode die PowerShell nicht im Administratormodus ausführen kann und dass Sie ohne Administratormodus eingeschränkt sind, was Sie aufgrund von Berechtigungen tun können. Hier sind die Möglichkeiten, PowerShell im Administratormodus zu starten.
- In Windows 10 können Sie den Datei- / Windows-Explorer am einfachsten starten , einen beliebigen Ordner öffnen, das Menü " Datei" öffnen, zu Windows PowerShell öffnen und dann den Befehl Windows PowerShell als Administrator öffnen auswählen.
- Die andere Möglichkeit besteht darin, in den Ordner C : \ Windows \ System32 \ WindowsPowerShell \ v1.0 oder eine andere verfügbare Version zu wechseln. Klicken Sie mit der rechten Maustaste auf die Datei namens PowerShell.exe und öffnen Sie sie als Administrator. Die Datei mit dem Namen " PowerShell_ise.exe" stellt PowerShell in der grafischen Benutzeroberfläche und nicht in der Eingabeaufforderung bereit, aber beide funktionieren auf die gleiche Weise mit denselben Cmdlets.
- Die letzte Option besteht darin, die Eingabeaufforderung als Administrator zu öffnen und mit ihr PowerShell zu öffnen. Gehen Sie zu Start> Alle Apps / Alle Programme> Windows-System / Zubehör> Klicken Sie mit der rechten Maustaste auf Eingabeaufforderung, und führen Sie sie als Administrator aus . Geben Sie PowerShell in das Eingabeaufforderungsfenster ein und drücken Sie die Eingabetaste. Der Pfad wird in PS C: \ Windows \ System32> geändert. Dies bedeutet, dass Sie bereit sind, die PowerShell-Umgebung zu verwenden.
PowerShells Defender-Cmdlets und ihre Verwendung
Wir haben darüber gesprochen, was Cmdlets sind, also wie benutzt du sie? Sie müssen diese Befehle einfach in das PowerShell-Fenster eingeben.
Windows PowerShell bietet 12 Cmdlets für Windows Defender. Um sie anzuzeigen, geben Sie einfach Get-Command -Module Defender in das Eingabeaufforderungsfenster von PowerShell ein und drücken Sie die Eingabetaste. Hier ist die vollständige Liste der Cmdlets für Windows Defender.
Seriell | Cmdlet | Beschreibung |
Add-Mp-Referenz | Ändert die Einstellungen für Windows Defender. | |
Get-MpComputerStatus | Ruft den Status der Anti-Malware-Software auf dem Computer ab. | |
Get-MpPreference | Ruft Einstellungen für die Windows Defender-Scans und -Updates ab. | |
Holen-MpThreat | Ruft den Verlauf der auf dem Computer erkannten Bedrohungen ab. | |
Get-MpThreatCatalog | Ruft bekannte Bedrohungen aus dem Definitionskatalog ab. | |
Get-MpThreatDetection | Ruft aktive und vergangene Malware-Bedrohungen ab, die von Windows Defender erkannt wurden. | |
Remove-MpPreference | Entfernt Ausschlüsse oder Standardaktionen. | |
Remove-MpThreat | Entfernt aktive Bedrohungen vom Computer. | |
Set-Mp-Referenz | Konfiguriert Einstellungen für Windows Defender-Scans und -Updates. | |
Starten Sie MpScan | Startet einen Scan auf dem Computer. | |
Start-MpWDOScan | Startet einen Windows Defender-Offline-Scan. | |
Update-MpSignatur | Aktualisiert die Anti-Malware-Definitionen auf dem Computer. |
Hilfe von PowerShell erhalten, wenn Sie nicht weiterkommen
PowerShell enthält eine umfangreiche konsolenbasierte Hilfe. Wenn Sie nicht weiterkommen oder einfach Hilfe, Beschreibung oder Beispiele zu einem Cmdlet benötigen, verwenden Sie diese Befehle, um Informationen zu erhalten.
Get-Help - Detailliert | Dadurch erhalten Sie eine detaillierte Beschreibung darüber, wozu das Cmdlet gehört und was es tut, einschließlich der erforderlichen Parameter. |
Get-Help -Beispiele | Dieser Befehl enthält Beispiele zur Verwendung des Cmdlets. |
Get-Help-Vollständig | Dies wird eine detaillierte Beschreibung mit Beispielen geben. |
Wenn Sie keine Informationen erhalten, müssen Sie die Windows Defender-Cmdlet-Hilfedateien aktualisieren. Um das Hilfemenü zu aktualisieren, geben Sie diesen Befehl in das Windows PowerShell-Fenster Update-Help ein und warten Sie einige Minuten, bis die neuesten Hilfedateien heruntergeladen und installiert wurden.
Einige standardmäßige Vorgänge in der PowerShell zum Verwalten von Windows Defender
Mit dem Start-MpScan- Cmdlet an der PowerShell-Eingabeaufforderung können Sie einen Scan auf Ihrem System ausführen. Dies sind die Windows Defender-Scans, die Sie mit Windows PowerShell auf Ihrem PC ausführen können.
- FullScan - Dieser Scan wird für alle Dateien auf Ihrem Computer sowie für die Systemregistrierung und laufende Anwendungen durchgeführt. Verwenden Sie diesen Befehl, um einen vollständigen Scan durchzuführen: Start-MpScan -ScanType QuickScan
- QuickScan - Dies wird nur die Bereiche analysieren, die am wahrscheinlichsten mit Malware infiziert sind. Verwenden Sie den folgenden Befehl, um einen schnellen Scan durchzuführen: Start-MpScan -ScanType FullScan
- CustomScan - Bei einem benutzerdefinierten Scan kann ein Benutzer die zu durchsuchenden Ordner und Laufwerke auswählen. Ein Pfadparameter wird für diesen Scan benötigt. Im Folgenden finden Sie ein Cmdlet-Beispiel zum Ausführen eines benutzerdefinierten Scans: Start-MpScan -ScanPath C: \ Users \ User1 \ Downloads
Wenn Sie nach neuen Virensignaturdefinitionsupdates suchen und Windows Defender aktualisieren möchten, verwenden Sie den Befehl: Update-MpSignature
Um den aktuellen Status von Windows Defender-aktivierten Optionen, Virendefinitionsdatum und -version, letzte Scanzeit und andere anzuzeigen, geben Sie diesen Befehl in PowerShell ein: Get-MpComputerStatus
Wenn Sie den Defender-Echtzeitschutz deaktivieren möchten, verwenden Sie den Befehl: Set-MpPreference -DisableRealtimeMonitoring $ true
Es gibt viel mehr und sogar komplizierte Windows Defender-Cmdlets, aber diese Seite wird sich nicht damit befassen. Nachdem Sie nun die grundlegenden Windows Defender-Cmdlets kennen, erfahren Sie, wie Sie einen Blick in die Windows Defender-Signaturdefinitionsdatenbank werfen können.
PRO TIPP: Wenn das Problem bei Ihrem Computer oder Laptop / Notebook auftritt, sollten Sie versuchen, die Reimage Plus Software zu verwenden, die die Repositories durchsuchen und beschädigte und fehlende Dateien ersetzen kann. Dies funktioniert in den meisten Fällen, in denen das Problem aufgrund einer Systembeschädigung auftritt. Sie können Reimage Plus herunterladen, indem Sie hier klickenZugriff auf die Malware-Signaturdefinitionsdatenbank von Windows Defender mithilfe von PowerShell
Die Windows Defender-Signaturdefinitionsdatenbank teilt Ihnen mit, welcher Windows-Defender eine Bedrohung erkennen und erfolgreich neutralisieren kann. Mit dem Cmdlet Get-MpThreatCatalog können Sie dies tun. Die ganze Liste wird lang sein und wird mit einer rasenden Geschwindigkeit auf Ihrem Bildschirm erzeugt werden. Sie könnten sich jedoch Zeit nehmen, um zu finden, was Sie suchen und was möglicherweise fehlt. Geben Sie diesen Befehl einfach in die PowerShell-Eingabeaufforderung ein und drücken Sie die Eingabetaste.
Get-MpThreatCatalog
Sie können die Pause / Break-Taste auf Ihrem PC verwenden, um die Ausgabe vorübergehend anzuhalten. Um die Erstellung der gesamten Liste vollständig anzuhalten oder abzubrechen, drücken Sie Strg + C. Wenn Sie eine der beiden Aktionen ausführen, wird für jede Bedrohung in der Datenbank ein Datensatz mit sechs Feldern angezeigt. Hier ist ein Beispiel:
KategorieID: 4
SeverityID: 5
BedrohungID: 5145
ThreatName: TrojanDownloader: Win32 / Zlob.CH
TypID: 0
PSComputerName:
Lassen Sie uns kurz betrachten, was jedes Feld bedeutet.
CategoryID: Zeigt den Typ der aufgelisteten Malware / Bedrohung an. Hier sind die bekannten Werte und die Art der Bedrohung / Malware, auf die sie verweisen:
ICH WÜRDE | Art der Malware |
0 | Ungültig |
1 | Adware |
2 | Spyware |
3 | Passwordstealer |
4 | Trojandownloader |
5 | Wurm |
6 | Hintertür |
7 | Remoteaccesstrojan |
8 | Trojaner |
9 | Emailflöter |
10 | Keylogger |
11 | Dialer |
12 | Überwachungssoftware |
13 | Browsermodifikator |
14 | Plätzchen |
15 | Browserplugin |
16 | Alexexploit |
17 | Nuker |
18 | Sicherheitsdisabler |
19 | Witzprogramm |
20 | Hostileactivexcontrol |
21 | Softwarebundler |
22 | Stealthnotifier |
23 | Einstellungsmodifikator |
24 | Symbolleiste |
25 | Fernsteuerungssoftware |
26 | Trojanftp |
27 | MöglicheunerwünschteSoftware |
28 | Icqexploit |
29 | Trojantelnetz |
30 | Filesharing-Programm |
31 | Malware_Creation_Tool |
32 | Remote_Control_Software |
33 | Werkzeug |
34 | Trojan_Denialofservice |
36 | Trojan_Dropper |
37 | Trojan_Massmailer |
38 | Trojan_Monitorsoftware |
39 | Trojan_Proxyserver |
40 | Virus |
42 | Bekannt |
43 | unbekannte |
44 | Spp |
45 | Verhalten |
46 | Verletzlichkeit |
47 | Politik |
SeverityID: Dies ist eine Skala von 1-5, die angibt, wie schlimm eine Bedrohung ist, wobei 5 die höchste ist. Hier ist was sie meinen.
ICH WÜRDE | Schwere |
0 | unbekannte |
1 | Niedrig |
2 | Mäßig |
4 | Hoch |
5 | Schwer |
ThreatID: Dies ist eine Nummer, die der Malware / Bedrohung als eine Form der Identifizierung zugewiesen wurde.
ThreatName: Dies ist der Name der Malware, die der ThreatID-Nummer entspricht.
TypeID: Der TypeID-Wert gibt an, wie Windows Defender die Malware identifiziert. Ist es eine bekannte oder unbekannte Bedrohung? Hier sind die Werte und was sie bedeuten.
ICH WÜRDE | Identifikationsmethode |
0 | Bekannte schlechte Bedrohung |
1 | Verhaltensüberwachung |
2 | Unbekannte Bedrohung |
3 | Bekannte gute Bedrohung |
4 | Network Inspection System (NIS) Bedrohung |
Möglicherweise stellen Sie fest, dass alle auf Ihrem Bildschirm angezeigten Bedrohungen Typ-0-Bedrohungen sind. Dies liegt daran, dass die meisten der Signaturdefinitionen, die bereits hinzugefügt wurden, erforscht wurden und die Art der Bedrohung, die sie darstellen, dokumentiert wurde.
PSComputerName: Der Name des Computers, auf dem die Aktivität ausgeführt wird. Dies ist normalerweise leer, wenn Sie sich nicht in einem Netzwerk befinden und aus einem einfachen Grund, dass diese Datenbank ein Katalog und keine Aktivität ist.
Dinge zu erinnern
- Die Signaturdefinitionen sind ein ziemlich großer Katalog. Es kann also eine Weile dauern, bis Sie die generierten Daten auf Ihrem Bildschirm sehen. Sei geduldig.
- Da die Datenbank riesig ist, könnte es Ihr Gedächtnis ersticken. Cmdlets haben jedoch eine Beschränkung für den von ihnen verwendeten Speicher. Diese Meldung wird Ihnen wahrscheinlich angezeigt: WARNUNG: Die Speicherauslastung eines Cmdlets hat eine Warnstufe überschritten. PowerShell kann wiederherstellen und mit dem Prozess fortfahren oder Sie nur zu der Eingabeaufforderung-Pipeline zurückgeben. Sei geduldig. Andernfalls können Sie das Ereignis durch Drücken von Strg + C abbrechen.
- Wenn Ihr Bildschirm zu voll wird, geben Sie den Befehl "CLS" ein, um den Bildschirm zu löschen. Dies verbessert auch die Speichernutzung.
Abfragen der Windows Defender-Signaturdefinitionsdatenbank
Eine Abfrage ist einfach eine Anfrage nach verfeinerten Informationen / Daten, die bestimmte Kriterien aus einer Datenbank erfüllen. Wir haben gesehen, wie die Windows Defender-Definitionsdatenbank aussieht. Wir wissen jetzt, dass es eine extrem große Datenbank ist. Sie können jedoch die Menge der Informationen, die angezeigt werden können, durch Hinzufügen einiger Parameter zu Ihrem Cmdlet reduzieren. Hier sind ein paar Beispiele, wie Sie das tun können.
- Verwenden Sie dieses Cmdlet, um alle Datensätze in der Datenbank für die schwerwiegendste Malware anzuzeigen:
Get-MpThreatCatalog | Where-Objekt {$ _. SeverityID -eq 5}
Der Wert 5 gibt nur Definitionen mit dem Schweregrad 5 zurück.
- Es gibt verschiedene Arten von Malware, die Windows Defender identifizieren kann. Um nur einen Typ auf Null zu setzen, müssen Sie einen TypeID-Parameter oder einen ThreatName-Parameter übergeben. Ein Beispiel wäre, nur Bedrohungen zu sehen, die als Viren bekannt sind. Geben Sie Folgendes in das PowerShell-Eingabeaufforderungsfenster ein:
Get-MpThreatCatalog | where-object {$ _. Bedrohungsname -Match ^ Virus. *}
Sie können auch mehr als ein Kriterium verwenden, um die Datenbank abzufragen. Angenommen, Sie müssen alle Viren mit einem Schweregrad von 5 anzeigen. Geben Sie diesen Befehl einfach in das PowerShell-Fenster ein:
Get-MpThreatCatalog | where-Objekt {$ _. SeverityID -eq 5} | where-object {$ _. Bedrohungsname -Match ^ Virus. *}
Auf diese Weise können Sie mehrere Abfragekriterien verwenden, um die angezeigten Informationen einzugrenzen.
- Selbst nach der Abfrage Ihrer Datenbank werden möglicherweise immer noch viele Daten auf dem Bildschirm angezeigt. Wenn Sie die Ausgabe auf dem Bildschirm nur eine Seite nach der anderen sehen möchten, geben Sie den folgenden Befehl an der PowerShell-Eingabeaufforderung ein:
Get-MpThreatCatalog | where-Objekt {$ _. SeverityID -eq 5} | Wählen Sie Bedrohungsname | Mehr
Oder
Get-MpThreatCatalog | where-Objekt {$ _. SeverityID -eq 5} | where-object {$ _. Bedrohungsname -Match ^ Virus. *} | Wählen Sie Bedrohungsname | Mehr
Diese Befehlszeile leitet die Ausgabe in den more-Befehl, der seinerseits die Ausgabe jeweils eine Seite anzeigt. Um zur nächsten Seite zu gelangen, drücken Sie [Leertaste] . Wenn Sie [Enter] drücken , wird der Bildschirm jeweils um eine Zeile weitergeschaltet. Dadurch sparen Sie viel Zeit, die benötigt wird, um alle Daten auf einmal anzuzeigen, bevor Sie Ihre Ergebnisse anzeigen und scrollen können.
Es gibt viele weitere Befehle, mit denen Sie Ihre Abfrage eingrenzen können. Anhand der Informationen und Beispiele, die wir aufgelistet haben, können Sie dies leicht tun. Denken Sie daran, dass die Version von Windows Defender und die Version von Windows PowerShell bestimmen, ob Sie Cmdlets für Windows Defender verwenden können. Dies wurde für Windows 10 getestet. Die Microsoft Support-Seite zeigt an, dass dies für Windows Server 2016 und Windows 10 verfügbar ist. Die Einzelhandelsversion (nicht aktualisiert) von Windows 7 scheint diese Cmdlets nicht zu erkennen. In der Tat wird die Windows PowerShell von Windows 7 Fehler oder Leerzeichen zurückgeben, wenn Sie diese Cmdlets eingeben. Durch die Aktualisierung dieser beiden Anwendungen (Defender und PowerShell) werden Sie möglicherweise wieder auf Kurs gebracht.
PRO TIPP: Wenn das Problem bei Ihrem Computer oder Laptop / Notebook auftritt, sollten Sie versuchen, die Reimage Plus Software zu verwenden, die die Repositories durchsuchen und beschädigte und fehlende Dateien ersetzen kann. Dies funktioniert in den meisten Fällen, in denen das Problem aufgrund einer Systembeschädigung auftritt. Sie können Reimage Plus herunterladen, indem Sie hier klicken