Skip to content

Glossaire

Journalisation des modules (4103)

Journalisation de l'exécution du pipeline PowerShell : l'événement 4103 enregistre les commandes et les paramètres liés au fil de leur exécution.

La journalisation des modules enregistre les détails d'exécution du pipeline, c'est-à-dire les commandes invoquées par PowerShell et les paramètres qui leur sont liés, dans l'événement 4103 du journal Microsoft-Windows-PowerShell/Operational. Elle s'active par le paramètre de stratégie de groupe « Activer la journalisation des modules », sous Modèles d'administration → Composants Windows → Windows PowerShell, soit pour une liste de noms de modules, soit pour tous les modules avec *. Elle est désactivée par défaut.

Pourquoi c'est important en investigation

La journalisation des modules complète la journalisation des blocs de script. L'événement 4104 montre le code qui a été compilé ; le 4103 montre ce qui s'est réellement exécuté et avec quelles valeurs d'arguments, y compris des valeurs calculées à l'exécution qui n'apparaissent jamais littéralement dans le script. Lorsqu'un script construit une URL à partir de variables, le 4104 montre les variables tandis que le 4103 montre l'Uri final.

Chaque événement 4103 comporte un bloc ContextInfo indiquant l'application hôte, l'utilisateur, la version du moteur et la commande, ainsi qu'un Payload avec une ligne CommandInvocation par commande et une ligne ParameterBinding par paramètre lié. Avec * activé, elle est verbeuse et bruyante : mieux vaut donc la lire filtrée sur les applets de commande qui comptent, à savoir les requêtes web, la création de processus, l'écriture de fichiers et les paramètres de Defender.

Exemple

Un Payload abrégé pour un téléchargement de fichier :

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"

Le parseur lit les champs de ContextInfo et le payload, de sorte que l'entrée affiche l'utilisateur, l'application hôte et le nom de la commande à côté de l'invocation. Il applique au payload et à la ligne de commande de l'hôte les mêmes détections qu'à n'importe quelle autre entrée, ici un téléchargement.

Termes associés

Fusionnez le 4103 avec les autres événements PowerShell dans PowerShell Parser, et consultez le guide des journaux d'événements PowerShell pour voir tous les ID d'événement côte à côte.