Windows PowerShell.evtx C:\Windows\System32\winevt\Logs\Windows PowerShell.evtx
Journal classique « Windows PowerShell » : cycle de vie du moteur, des fournisseurs et, si activée, journalisation des modules. Format .evtx.
À quoi ça sert
Windows PowerShell.evtx est le journal classique « Windows PowerShell », propre à Windows PowerShell 5.1. Il suit la vie du moteur : démarrage et arrêt, chargement des fournisseurs, et le détail des pipelines si leur journalisation est activée. Ce n’est pas le journal des blocs de script, qui est Microsoft-Windows-PowerShell/Operational, ni celui de PowerShell 7, qui écrit dans PowerShellCore/Operational. Pour le fonctionnement général des .evtx, voir la fiche du dossier winevt\Logs.
Ce qu’il contient
400: démarrage du moteur, avecHostApplicationetEngineVersiondans le message.403: arrêt du moteur.600: démarrage d’un fournisseur (« Provider Registry is Started », par exemple).800: détails d’exécution d’un pipeline, quand la journalisation correspondante est activée par stratégie de groupe.
Risques et bonnes pratiques
- Les événements de pipeline peuvent contenir des commandes et leurs paramètres, donc des secrets saisis en clair. Limitez l’accès au journal et protégez les exports.
- Pour détecter une attaque, ce journal ne suffit pas. Activez par stratégie de groupe la journalisation des blocs de script (événement
4104dans l’Operational) et celle des modules, puis centralisez les journaux. - Cherchez les
400dontEngineVersionvaut2.0: c’est la signature d’un retour à l’ancien moteur, souvent utilisé pour contourner la journalisation. - N’essayez pas de supprimer le fichier : videz le journal ou exportez-le avec
wevtutil, en administrateur.
Commandes utiles
# Démarrages du moteur avec la version d'hôte (ID 400)Get-WinEvent -FilterHashtable @{LogName='Windows PowerShell'; Id=400} -MaxEvents 10 | Select-Object TimeCreated, Message
# Démarrages en moteur 2.0 (possible tentative de contournement)Get-WinEvent -FilterHashtable @{LogName='Windows PowerShell'; Id=400} | Where-Object Message -like '*EngineVersion=2.0*' | Select-Object TimeCreated, Message
# Taille et rétention du journalwevtutil gl "Windows PowerShell"Format
Fichier binaire XML (.evtx) géré par le service Journal des événements Windows. Chaque événement porte un identifiant, un niveau, un fournisseur, un horodatage et un message. Aucun éditeur de texte ne le lit.
Rotation et archivage
Taille maximale et rétention se règlent par journal (Observateur d’événements, stratégie de groupe ou wevtutil sl). Archivez par export : wevtutil epl "Windows PowerShell" C:\Temp\PowerShell.evtx.
Comment le lire
Observateur d’événements > Journaux des applications et des services > Windows PowerShell. En PowerShell, Get-WinEvent avec -FilterHashtable pour filtrer par ID (400, 403, 800). Pour un fichier copié : Get-WinEvent -Path ".\Windows PowerShell.evtx".