Sécurité Windows : Comment détecter les intrusions avec Sysmon ?

Vous pensez sans doute que si quelque chose de louche se produit sur votre PC, votre antivirus le détectera. Et c’est peut-être le cas… à terme. Mais le temps que les logiciels de sécurité traditionnels donnent l’alerte, le mal est peut-être déjà fait.

installation et utilisation de Sysmon pour Windows

Et si votre ordinateur pouvait tenir un journal détaillé et en temps réel de tout ce qui se passe en arrière-plan : chaque processus lancé, chaque connexion réseau établie, chaque fois que la date de création d’un fichier est modifiée de manière suspecte ?

C’est exactement ce que fait Sysmon. Il s’agit d’un outil gratuit développé par Microsoft, qui fait partie d’une gamme plus large d’outils Windows Sysinternals destinés à détecter les comportements suspects. Ce qui est intéressant, c’est que même si ces utilitaires constituent la référence absolue pour détecter les logiciels espions et publicitaires sur votre PC, la plupart des utilisateurs lambda de Windows n’en ont probablement jamais entendu parler.

Sysmon : Un niveau de journalisation inégalé

Windows conserve déjà des journaux d’événements, et si vous avez déjà ouvert l’Observateur d’événements pour résoudre des problèmes, vous avez sans doute remarqué à quel point ils peuvent sembler chaotiques. Il y a beaucoup de bruit et pas toujours assez de clarté.

Sysmon, abréviation de « System Monitor », est d’un tout autre acabit. Une fois installé, il fonctionne comme un service système et un pilote de périphérique persistants, survivant aux redémarrages, et consigne des événements très détaillés dans le journal des événements de Windows. La différence est comparable à celle entre une caméra de sécurité granuleuse et une caméra capable de lire les plaques d’immatriculation.

Le catalogue d’événements de Sysmon enregistre la création des processus ainsi que l’ensemble des arguments de ligne de commandes ; ainsi, vous ne voyez pas seulement qu’un programme s’est exécuté, mais aussi comment il a été lancé. Il enregistre également les connexions réseau, y compris le processus d’origine, l’adresse IP, le port et le nom d’hôte. Cela permet de retracer quelle application a contacté quel serveur et à quel moment. Il signale même les modifications apportées aux horodatages de création des fichiers, une astuce classique utilisée par les logiciels malveillants pour se faire passer pour des fichiers système légitimes.

Au-delà de cela, Sysmon surveille le chargement des pilotes, les modifications du registre, les requêtes DNS et des techniques plus avancées telles que le « process hollowing », enregistrées sous l’ID d’événement 25, où du code malveillant se cache à l’intérieur d’un processus Windows par ailleurs essentiel.

Voici un tableau récapitulatif des identifiants d’événements les plus pertinents en matière de sécurité :

ID de l’événement Nom de l’événement (FR / EN) Ce qu’il capture (Description)
1

Création de processus

 

(Process Create)

Chaque processus qui se lance, y compris la ligne de commande complète, le processus parent et le hachage du fichier. C’est l’événement le plus utile pour repérer les exécutions suspectes.
2

Modification de l’heure de création d’un fichier

 

(File Creation Time Changed)

Signale lorsqu’un processus modifie délibérément l’horodatage de création d’un fichier, une tactique classique des malwares pour se fondre parmi les fichiers système légitimes.
3

Connexion réseau

 

(Network Connection)

Enregistre les connexions TCP/UDP sortantes, en reliant chacune au processus qui l’a initiée. Essentiel pour détecter les communications de type beaconing (appels vers un serveur maître) ou l’exfiltration de données.
6

Pilote chargé

 

(Driver Loaded)

Enregistre les pilotes du noyau au moment de leur chargement, y compris l’état de leur signature. Les pilotes non signés ou inattendus constituent un signal d’alarme sérieux.
7

Image chargée

 

(Image Loaded)

Suit les DLL qui se chargent dans les processus ; désactivé par défaut en raison du volume de logs, mais très puissant pour détecter le détournement de DLL (DLL hijacking) s’il est filtré avec soin.
8

Création de thread distant

 

(Create Remote Thread)

Détecte lorsqu’un processus injecte un thread dans un autre, ce qui est une technique caractéristique des attaques par injection de code et d’évidement de processus (process hollowing).
10

Accès au processus

 

(Process Access)

Se déclenche lorsqu’un processus accède à la mémoire d’un autre, permettant d’intercepter les outils de vol d’identifiants ciblant LSASS (le processus qui stocke les secrets de connexion Windows).
11

Création de fichier

 

(File Create)

Enregistre les nouveaux fichiers créés ou écrasés. Particulièrement utile pour surveiller les dossiers Temp, Téléchargements et Démarrage.
12–14

Événements du Registre

 

(Registry Events)

Couvre la création, la suppression, la modification de valeur et le renommage des clés de registre. C’est le principal moyen pour les malwares d’établir une persistance entre les redémarrages.
15

Création de hachage de flux de fichier

 

(File Create Stream Hash)

Capture les fichiers téléchargés via un navigateur en enregistrant le flux « Zone Identifier » qui leur est rattaché. Utile pour retracer l’origine d’exécutables suspects.
17–18

Événements de canal

 

(Pipe Events)

Surveille la création et les connexions aux canaux nommés (named pipes), une méthode de communication inter-processus couramment utilisée par les malwares et les frameworks de post-exploitation comme Cobalt Strike.
19–21

Événements WMI

 

(WMI Events)

Suit l’enregistrement des filtres et consommateurs WMI, une technique de persistance sans fichier (fileless) très prisée qui ne laisse presque aucune trace sans la surveillance de cet événement.
22

Requête DNS

 

(DNS Query)

Enregistre chaque recherche DNS effectuée par un processus, ce qui permet de repérer les connexions à des domaines malveillants connus avant même qu’une connexion TCP complète ne soit établie.
25

Falsification de processus

 

(Process Tampering)

Détecte les techniques d’évidement de processus (process hollowing) et de herpaderping (des techniques qui remplacent la mémoire d’un processus légitime par du code malveillant pour échapper à la détection).
29

Fichier exécutable détecté

 

(File Executable Detected)

Signale la création de tout nouveau fichier exécutable (format PE) sur le système. C’est un indicateur précoce et fort de l’exécution d’un dropper (goutteur) ou d’un programme d’installation.

Comment installer et configurer Sysmon ?

Sysmon est disponible en téléchargement gratuit sur la page Sysinternals de Microsoft (version 15.15 à la date de rédaction de cet article), et son installation se fait en une seule commande. Vous aurez besoin de droits d’administrateur et devrez passer brièvement par PowerShell ou l’invite de commandes, mais l’ensemble du processus prend moins de cinq minutes.

  • Rendez-vous sur la page officielle de Sysmon sur Microsoft Learn, téléchargez le fichier ZIP (environ 4,6 Mo) et extrayez son contenu.
  • Ouvrez ensuite PowerShell ou l’invite de commandes en tant qu’administrateur, accédez au dossier et exécutez la commande suivante :
.\sysmon64 -accepteula -i
  • Voilà pour l’installation de base : Sysmon installe son service et son pilote en arrière-plan. En fait, vous n’avez même pas besoin de redémarrer votre PC. Dès lors, Sysmon commence à enregistrer les événements dans la rubrique « Applications and Services Logs -> Microsoft -> Windows -> Sysmon -> Operational in Event Viewer » de l’Observateur d’événements. Vous pouvez consulter ces journaux immédiatement.

Note : La désinstallation de Sysmon est tout aussi simple avec la commande sysmon64 -u. L’outil ne cherche jamais à s’ancrer dans le système, ce qui est appréciable.

Configuration de Sysmon

L’installation par défaut de Sysmon est fonctionnelle, mais c’est avec un fichier de configuration qu’elle prend toute sa dimension. Sysmon accepte un fichier de configuration XML qui précise les événements à consigner, ceux à filtrer et le niveau de détail souhaité. Si vous n’êtes pas familier avec ce format, vous pouvez vous rafraîchir la mémoire sur ce qu’est un fichier XML et comment l’utiliser, car ces fichiers définissent la « logique » utilisée par Sysmon pour surveiller votre système. Écrire votre propre fichier à partir de zéro est un projet en soi, mais vous n’êtes pas obligé de le faire.

La communauté de la cybersécurité a produit d’excellentes configurations prêtes à l’emploi. La plus utilisée est la configuration Sysmon de SwiftOnSecurity, disponible gratuitement sur GitHub, avec près de 5 000 étoiles et plus de 1 700 forks. Elle a été soigneusement optimisée pour capturer les événements pertinents en matière de sécurité tout en filtrant le bruit qui rendrait autrement vos journaux illisibles. Chaque ligne est commentée, ce qui en fait également un tutoriel. Pour l’installer avec cette configuration, vous devez exécuter cette commande :

sysmon64 -accepteula -i sysmonconfig-export.xml

Pour mettre à jour une installation existante à l’aide d’un nouveau fichier de configuration, vous devez exécuter cette commande :

sysmon64 -c sysmonconfig-export.xml

Si vous recherchez une solution encore plus modulaire, le projet sysmon-modular d’Olaf Hartong (sur GitHub) propose une approche modulable, gérée par une communauté d’utilisateurs, qui s’aligne directement sur le cadre MITRE ATT&CK. Ces deux projets constituent d’excellents points de départ.

Conclusion

Pas besoin d’être un ingénieur en sécurité informatique pour bien utiliser Sysmon. Il suffit d’un fichier de configuration correct, d’être prêt à ouvrir l’Observateur d’événements de temps en temps, et d’avoir la satisfaction de savoir que si jamais quelque chose d’étrange se produit sur votre machine, vous en aurez une trace. Cette tranquillité d’esprit vaut largement les cinq minutes de configuration nécessaires.

Windows 10 / 11
Résumé de la politique de confidentialité

Ce site utilise des cookies afin que nous puissions vous fournir la meilleure expérience utilisateur possible. Les informations sur les cookies sont stockées dans votre navigateur et remplissent des fonctions telles que vous reconnaître lorsque vous revenez sur notre site Web et aider notre équipe à comprendre les sections du site que vous trouvez les plus intéressantes et utiles.