Glossar
Modulprotokollierung (4103)
Protokollierung der PowerShell-Pipeline-Ausführung: Ereignis-ID 4103 zeichnet Befehle und gebundene Parameter während ihrer Ausführung auf.
Die Modulprotokollierung zeichnet Details der Pipeline-Ausführung auf, also die Befehle, die PowerShell aufgerufen hat, und die daran gebundenen Parameter, und zwar als Ereignis-ID 4103 im Protokoll Microsoft-Windows-PowerShell/Operational. Sie wird über die Gruppenrichtlinie „Modulprotokollierung aktivieren“ unter Administrative Vorlagen → Windows-Komponenten → Windows PowerShell eingeschaltet, entweder für eine Liste von Modulnamen oder mit * für alle Module. Standardmäßig ist sie deaktiviert.
Warum es für Untersuchungen wichtig ist
Die Modulprotokollierung ergänzt die Skriptblockprotokollierung. Ereignis 4104 zeigt den kompilierten Code; 4103 zeigt, was tatsächlich ausgeführt wurde und mit welchen Argumentwerten, einschließlich zur Laufzeit berechneter Werte, die im Skript nie wörtlich vorkommen. Wenn ein Skript eine URL aus Variablen zusammensetzt, zeigt 4104 die Variablen, 4103 dagegen die endgültige Uri.
Jedes 4103-Ereignis hat einen ContextInfo-Block, der Host-Anwendung, Benutzer, Engine-Version und Befehl nennt, sowie einen Payload mit einer CommandInvocation-Zeile pro Befehl und einer ParameterBinding-Zeile pro gebundenem Parameter. Mit * ist die Protokollierung ausführlich und verrauscht, daher liest man sie am besten gefiltert auf die relevanten Cmdlets: Webanfragen, Prozesserstellung, Dateischreibvorgänge und Defender-Einstellungen.
Beispiel
Ein gekürzter Payload für einen Datei-Download:
CommandInvocation(Invoke-WebRequest): "Invoke-WebRequest"
ParameterBinding(Invoke-WebRequest): name="Uri"; value="https://files.example/tools.zip"
ParameterBinding(Invoke-WebRequest): name="OutFile"; value="C:\Users\Public\tools.zip"
Der Parser liest die ContextInfo-Felder und den Payload, sodass der Eintrag Benutzer, Host-Anwendung und Befehlsnamen neben dem Aufruf anzeigt. Er wendet auf den Payload und die Host-Befehlszeile dieselben Befundregeln an wie auf jeden anderen Eintrag, hier einen Download.
Verwandte Begriffe
- Ereignis-ID 4104, das Skriptblock-Ereignis im selben Protokoll
- Skriptblockprotokollierung, die begleitende Richtlinie
- Klassisches Windows-PowerShell-Protokoll, dessen Ereignis 800 ebenfalls die Pipeline-Ausführung aufzeichnet
- Download-Cradle, oft in den Parameterwerten von 4103 sichtbar
Führen Sie 4103 im PowerShell Parser mit den anderen PowerShell-Ereignissen zusammen, und sehen Sie sich im Leitfaden zu den PowerShell-Ereignisprotokollen alle Ereignis-IDs im Vergleich an.