Audit Windows et Sysmon : un socle de journalisation
Configurez les sous-catégories d'audit avancé, la capture des lignes de commande, la taille des journaux, Sysmon et WEF pour savoir qui, quoi, où et quand.
Lorsqu'un incident survient sur un réseau Windows, les premières questions sont toujours les mêmes : quel compte s'est connecté où, qu'est-ce qui a été exécuté, qu'est-ce qui a changé, et vers où les connexions sont-elles parties ? Avec les paramètres par défaut, Windows ne répond qu'à peu d'entre elles. La création de processus n'est pas journalisée, les lignes de commande ne sont pas capturées, le journal Sécurité boucle en quelques heures sur un serveur chargé, et rien ne quitte l'hôte.
Ce guide construit un socle de journalisation en quatre couches : stratégie d'audit avancée, quelques paramètres complémentaires, Sysmon et transfert des événements.
Couche 1 : la stratégie d'audit avancée
Commencez par rendre la stratégie d'audit avancée prioritaire. Sous Computer Configuration > Policies > Windows Settings > Security Settings > Local Policies > Security Options, activez Audit: Force audit policy subcategory settings (Windows Vista or later) to override audit policy category settings (forcer les paramètres de sous-catégorie à remplacer ceux des catégories).
Configurez ensuite les sous-catégories sous Security Settings > Advanced Audit Policy Configuration > Audit Policies. Un bon point de départ, globalement aligné sur les recommandations de référence de Microsoft :
| Catégorie | Sous-catégorie | Paramètre | Événements clés |
|---|---|---|---|
| Account Logon | Credential Validation | Success, Failure | 4776 (validation NTLM) |
| Account Logon | Kerberos Authentication Service | Success, Failure (DC) | 4768, 4771 |
| Account Logon | Kerberos Service Ticket Operations | Success, Failure (DC) | 4769 |
| Account Management | Security Group Management | Success | 4728, 4732, 4756 (membre ajouté) |
| Account Management | User Account Management | Success, Failure | 4720, 4722, 4724, 4738, 4740 |
| Account Management | Computer Account Management | Success (DC) | 4741, 4742 |
| Detailed Tracking | Process Creation | Success | 4688 |
| Detailed Tracking | PNP Activity | Success | 6416 (nouveau périphérique) |
| DS Access | Directory Service Changes | Success (DC) | 5136, 5137 |
| DS Access | Directory Service Access | Success, Failure (DC) | 4662 (avec SACL) |
| Logon/Logoff | Logon | Success, Failure | 4624, 4625 |
| Logon/Logoff | Special Logon | Success | 4672 (ouverture de session équivalente administrateur) |
| Logon/Logoff | Account Lockout | Failure | 4625 (statut 0xC0000234) |
| Logon/Logoff | Other Logon/Logoff Events | Success, Failure | 4778, 4779 (reconnexion/déconnexion RDP) |
| Object Access | Other Object Access Events | Success, Failure | 4698-4702 (tâches planifiées) |
| Object Access | Removable Storage | Success, Failure | 4663 sur support amovible |
| Policy Change | Audit Policy Change | Success | 4719 |
| Policy Change | Authentication Policy Change | Success | 4706, 4713, 4739 |
| Policy Change | MPSSVC Rule-Level Policy Change | Success | 4946-4950 (pare-feu) |
| Privilege Use | Sensitive Privilege Use | Success, Failure | 4673, 4674 (bruyant ; envisager les échecs uniquement) |
| System | Security System Extension | Success | 4697 (service installé) |
| System | Security State Change | Success | 4608, 4616 |
| System | System Integrity | Success, Failure | 4612, 5038 |
Vérifiez la stratégie effective sur un hôte :
auditpol /get /category:*
auditpol /get /subcategory:"Process Creation"En laboratoire, vous pouvez définir directement des sous-catégories individuelles (en production, la GPO reste la source de vérité) :
auditpol /set /subcategory:"Process Creation" /success:enableCouche 2 : les paramètres qui rendent les événements exploitables
| Paramètre | Chemin | Pourquoi |
|---|---|---|
| Include command line in process creation events | Administrative Templates > System > Audit Process Creation | Ajoute la ligne de commande complète au 4688. Sans lui, vous voyez powershell.exe, pas ce qu'il a exécuté. |
| Journalisation des blocs de script et des modules PowerShell | Voir le guide PowerShell | Événements 4104, 4103 |
| Taille maximale du journal Sécurité | Administrative Templates > Windows Components > Event Log Service > Security > Specify the maximum log file size | 1 Go et plus sur les serveurs, plusieurs Go sur les DC |
| Taille des journaux Système et Application | Même emplacement | 128 Mo ou plus |
| Conserver les anciens événements / sauvegarder automatiquement le journal | Laisser désactivé sauf si vous gérez l'espace disque | Sinon le journal s'arrête ou remplit le disque |
Les lignes de commande peuvent contenir des secrets (mots de passe passés en paramètres). C'est une raison de restreindre qui lit les journaux et de corriger ces scripts, pas de laisser la journalisation des lignes de commande désactivée.
Surveillez aussi la destruction de preuves : 1102 (journal Sécurité effacé) et 104 (autre journal effacé, dans System) doivent toujours déclencher une alerte.
Couche 3 : Sysmon
Sysmon (System Monitor, issu de Microsoft Sysinternals) est un pilote et un service gratuits qui enregistrent l'activité détaillée des processus, du réseau, des fichiers et du registre dans Applications and Services Logs > Microsoft > Windows > Sysmon > Operational. Depuis 2026, c'est aussi une fonctionnalité facultative intégrée à Windows 11 et Windows Server 2025, désactivée par défaut et configurée avec le même XML ; le guide de déploiement de Sysmon explique comment choisir entre les deux. Ses événements les plus utiles :
| ID | Événement | Usage |
|---|---|---|
| 1 | Création de processus (avec hachages, ligne de commande du parent) | Chaînes d'exécution |
| 3 | Connexion réseau | Quel processus a parlé à quelle IP/quel port |
| 7 | Image chargée | DLL side-loading (filtrer fortement) |
| 8 | CreateRemoteThread | Injection de processus |
| 10 | Accès à un processus | Tentatives d'accès à LSASS |
| 11 | Fichier créé | Dépôts de charges utiles, fichiers de dump |
| 12 / 13 / 14 | Création/suppression de clé, valeur définie, renommage dans le registre | Clés de persistance |
| 22 | Requête DNS | Quel processus a résolu quel domaine |
| 23 / 26 | Suppression de fichier (archivée / journalisée) | Nettoyage d'outils |
| 25 | Altération de processus | Process hollowing / herpaderping |
Sysmon ne vaut que par sa configuration : une configuration vide journalise très peu, une configuration naïve inonde votre SIEM. Partez d'une configuration communautaire maintenue, comme sysmon-config de SwiftOnSecurity ou sysmon-modular d'Olaf Hartong, puis ajustez-la à votre environnement.
# Installer avec une configuration
Sysmon64.exe -accepteula -i sysmonconfig.xml
# Mettre à jour la configuration ultérieurement
Sysmon64.exe -c sysmonconfig.xml
# Afficher la configuration active
Sysmon64.exe -cDéployez Sysmon via votre outil de distribution logicielle, figez la version et vérifiez que le service Sysmon64 tourne : l'arrêter est un réflexe évident pour un attaquant (Sysmon journalise l'événement 4 pour les changements d'état du service et 16 pour les changements de configuration).
Couche 4 : sortir les événements de l'hôte
Les journaux locaux peuvent être effacés par n'importe qui disposant de droits d'administration. Transférez-les.
Windows Event Forwarding (WEF) est intégré et ne nécessite aucun agent :
- Sur un serveur collecteur :
wecutil qcpour configurer le service Windows Event Collector. - Créez des abonnements initiés par la source (requêtes XPath sélectionnant les ID d'événements ci-dessus).
- Par GPO sur les sources : Administrative Templates > Windows Components > Event Forwarding > Configure target Subscription Manager =
Server=http://wec01.corp.example:5985/wsman/SubscriptionManager/WEC,Refresh=60. - Donnez au compte Network Service l'accès en lecture au journal Sécurité sur les sources, en l'ajoutant au groupe Event Log Readers via les groupes restreints ou les préférences de stratégie de groupe.
Depuis le collecteur, envoyez ForwardedEvents vers votre SIEM. Si vous exploitez déjà un agent SIEM ou EDR, pointez-le plutôt sur les mêmes ID d'événements ; l'essentiel est que les événements quittent l'hôte en quelques minutes.
À quoi ressemble un bon résultat
Une façon rapide de tester le socle consiste à poser les questions d'un incident imaginaire et à vérifier que vos journaux y répondent :
- Qui s'est connecté au serveur X mardi dernier, et depuis où ? 4624 avec type d'ouverture de session et IP source, transféré.
- Qu'a exécuté cette session ? 4688 avec lignes de commande, Sysmon 1, PowerShell 4104.
- Quelque chose a-t-il touché LSASS ? Sysmon 10 filtré sur
lsass.exe. - Une persistance a-t-elle été ajoutée ? 4697 / 7045 (service), 4698 (tâche planifiée), Sysmon 13 sur les clés Run.
- Vers où s'est-il connecté ? Sysmon 3 et 22.
- Quelqu'un a-t-il tenté de le masquer ? 1102, 104, Sysmon 4/16, Defender 5001/5007.
Liste de contrôle
- Stratégie d'audit avancée forcée à prévaloir ; sous-catégories définies comme ci-dessus
- Capture de la ligne de commande dans le 4688 activée
- Journal Sécurité dimensionné pour des jours, pas des heures ; alertes sur l'effacement des journaux
- Sysmon déployé avec une configuration maintenue et ajustée
- Événements transférés (WEF ou agent) et conservés de façon centralisée
- Questions d'incident traitées de bout en bout lors d'un exercice sur table
La journalisation n'empêche rien, mais chaque autre contrôle de cette cartographie devient plus fiable lorsque vous pouvez le voir fonctionner, et voir le moment où il cesse de fonctionner.
Questions fréquentes
Ai-je besoin de Sysmon si j'ai déjà un EDR ?
Pas forcément : la plupart des EDR collectent une télémétrie comparable. Sysmon reste utile là où aucun EDR n'est déployé, comme source indépendante lors des investigations, ou pour alimenter votre propre SIEM en événements de processus, réseau et DNS sans coût de licence.
Quelle taille donner au journal Sécurité ?
Suffisamment grande pour conserver localement plusieurs jours d'événements, même si le transfert tombe en panne. Sur les postes de travail, 256 Mo à 1 Go est courant ; sur les contrôleurs de domaine et les serveurs chargés, plusieurs Go. Centralisez les événements pour que la taille locale soit un tampon, pas votre rétention.
Pourquoi utiliser la stratégie d'audit avancée plutôt que la stratégie d'audit de base ?
Les neuf catégories de base sont trop grossières : en activer une allume des sous-catégories bruyantes dont vous n'avez pas besoin. La stratégie d'audit avancée compte une soixantaine de sous-catégories, ce qui permet de collecter l'essentiel sans être submergé. Forcez-la à prévaloir pour éviter tout conflit entre les deux.
Audit Windows et Sysmon : un socle de journalisation