Teknik - Threat Hunting in KQL 101 - Parce que... c'est l'épisode 0x673!
Description
Parce que… c’est l’épisode 0x673!
Shameless plug
- 25 et 26 février 2026 - SéQCure 2026
- 14 au 17 avril 2026 - Botconf 2026
- 28 et 29 avril 2026 - Cybereco Cyberconférence 2026
- 9 au 17 mai 2026 - NorthSec 2026
- 3 au 5 juin 2025 - SSTIC 2026
Description
Introduction
Dans cet épisode technique du podcast, Yoan Schinck, directeur de la pratique de cyber réponse chez KPMG Canada, partage son expertise sur le threat hunting utilisant le Kusto Query Language (KQL). Fort de 12 ans d’expérience en technologies de l’information, dont 6 ans chez KPMG et la moitié en cybersécurité, Schinck se spécialise dans la réponse aux incidents, particulièrement les ransomwares et les compromissions de courriels d’affaires (business email compromise).
Le workshop de threat hunting
Lors de l’événement DeathC, dédié au detection engineering et au threat hunting, Schinck a conçu un workshop intitulé “Threat hunting en KQL 101”. Ce workshop vise à démontrer comment effectuer du threat hunting dans l’environnement Microsoft Sentinel en utilisant le KQL, le langage de requête pour explorer les données dans l’univers Microsoft. L’accent est mis particulièrement sur la télémétrie de Microsoft Defender for Endpoint, un choix stratégique reflétant la réalité du terrain où les organisations utilisant Sentinel travaillent généralement avec la suite de produits Microsoft Defender.
Infrastructure et méthodologie
Pour créer un environnement d’apprentissage réaliste, Schinck a mis en place une infrastructure comprenant deux machines virtuelles : un client Windows et un serveur Windows. Sur ces machines, il a exécuté une attaque complète simulée, couvrant toutes les étapes depuis l’accès initial jusqu’à l’exfiltration de données. Cette approche synthétique permet aux participants d’explorer des artefacts d’attaque authentiques dans un environnement contrôlé.
L’infrastructure incluait également des politiques d’audit avancées Windows pour capturer des événements spécifiques dans le Security Event Log, notamment pour les processus, la gestion des utilisateurs et la création de comptes. Un déploiement de Sysmon avec une configuration étendue complétait le dispositif de collecte de données. Tous ces événements étaient ensuite envoyés vers Microsoft Sentinel, créant ainsi un environnement réaliste de threat hunting.
Les organisateurs de DeathC ont fourni l’infrastructure on-premise, incluant le contrôleur de domaine, l’Active Directory, le Windows Event Collector et la configuration des Group Policies pour le transfert des événements Windows. Schinck s’est chargé de créer les deux machines virtuelles localement, de les joindre au domaine et d’installer Microsoft Defender for Endpoint avant d’exécuter son scénario d’attaque.
Contenu pédagogique du workshop
Le workshop est structuré en quatre catégories principales de threat hunting. La première se concentre sur les vecteurs d’accès initial, explorant différentes techniques pour identifier comment un accès a été obtenu. La deuxième catégorie examine les services Windows, analysant leur création, exécution et configuration pour détecter les abus potentiels par des attaquants.
La troisième catégorie explore les tâches planifiées (scheduled tasks), un concept similaire aux services Windows en termes d’opportunités de hunting. Schinck souligne que la maîtrise de l’une de ces techniques facilite l’apprentissage de l’autre en raison de leurs similarités conceptuelles. Enfin, la quatrième catégorie aborde le hunting au niveau réseau en utilisant l’enrichissement de sources externes, notamment le projet Living Off Trusted Sites (LOTS) de Mr. D0x, qui répertorie les sites et domaines internet pouvant être abusés par des attaquants.
Pour les participants plus expérimentés, Schinck propose un défi bonus : effectuer les mêmes analyses en utilisant la télémétrie Sysmon ou les Windows Event Logs plutôt que les données de Microsoft Defender for Endpoint. Cette approche alternative permet d’explorer différentes sources de données et de développer une compréhension plus complète du threat hunting.
Expérience terrain et cas pratiques
L’expertise de Schinck en réponse aux incidents enrichit considérablement le workshop. Il partage des observations concrètes issues de ses interventions, notamment l’abus fréquent des comptes de service par les attaquants. Ces comptes, souvent configurés comme des comptes utilisateurs normaux dans Active Directory avec simplement le préfixe “SVC”, peuvent être exploités pour des connexions RDP sur des systèmes où ils ne devraient pas avoir accès. Schinck recommande de chasser activement ces anomalies en surveillant les connexions de comptes de service entre serveurs, particulièrement celles survenant en dehors des heures normales de travail.
Un autre pattern récurrent concerne l’emplacement des fichiers malveillants. Les attaquants déposent fréquemment leurs binaires ou scripts dans des emplacements moins surveillés comme la racine de Program Data, le dossier Users Public, ou divers répertoires AppData. Lors d’une intervention récente sur un cas de ransomware, Schinck a identifié rapidement un fichier DLL suspect dans le dossier Users Public, qui s’est révélé être un backdoor Cobalt Strike.
Méthodologie de hunting et conseils pratiques
Schinck insiste sur l’importance de filtrer le bruit dans les données de threat hunting. Une technique qu’il privilégie consiste à utiliser la fonction “distinct” pour regrouper les résultats uniques. Par exemple, lors de l’analyse de commandes PowerShell, plutôt que de parcourir 15 000 exécutions individuelles, le regroupement par lignes de commande distinctes peut réduire le jeu de données à 500 entrées, rendant l’analyse visuelle beaucoup plus efficace.
Il souligne également que l’œil humain possède une capacité remarquable à détecter des anomalies. En parcourant lentement 50 lignes de commande PowerShell sans filtres additionnels, un analyste expérimenté peut souvent repérer des éléments suspects. Cette capacité repose sur deux piliers : la connaissance approfondie de son environnement et l’expérience accumulée à travers de multiples incidents.
Accessibilité et reproductibilité
Un aspect important du workshop est son accessibilité. Schinck démontre qu’il est possible de créer un environnement de threat hunting fonctionnel avec seulement deux machines virtuelles, un Windows Event Collector et Microsoft Sentinel. Cette simplicité rend l’apprentissage accessible à quiconque souhaite créer un homelab, même sur un ordinateur personnel ou portable.
Il note qu’au Québec, le stack Microsoft (Sentinel et Defender) est devenu très populaire ces dernières années, rendant ces compétences particulièrement pertinentes. Paradoxalement, il observe que très peu d’organisations déploient Sysmon ou collectent les Security Event Logs dans Sentinel, malgré la gratuité de ces outils et leur valeur considérable en cas d’incident.
Conclusion
Le workshop de Yoan Schinck offre une approche pragmatique et réaliste du threat hunting en KQL, combinant expertise technique et expérience terrain. En se concentrant sur des scénarios d’attaque concrets et des outils largement déployés en entreprise, il prépare efficacement les participants aux défis réels de la cybersécurité moderne. Sa philosophie est claire : une fois les concepts de threat hunting maîtrisés, ils peuvent s’appliquer à n’importe quel produit ou langage de requête, seule la syntaxe change.
Collaborateurs
Crédits
- Montage par Intrasecure inc
- Locaux réels par DEATHcon Montréal



