
Outil de traçage ETW et WPP pour la recherche en sécurité. S'abonne à plusieurs fournisseurs, analyse automatiquement les événements en JSON, et prend en charge le filtrage avancé, la mise en mémoire tampon, et la sortie vers stdout, un fichier ou le journal des événements Windows pour l'ingestion SIEM.
J'ai créé ce projet pour aider les non-développeurs à se plonger dans la recherche sur le traçage d'événements Windows (ETW) et le traçage par préprocesseur Windows (WPP).

Sealighter utilise la bibliothèque riche en fonctionnalités Krabs ETW pour permettre un filtrage et un tri détaillés des fournisseurs et événements ETW et WPP.
Vous pouvez vous abonner et filtrer plusieurs fournisseurs, y compris les fournisseurs en mode utilisateur, le traçage du noyau et le traçage WPP, et produire les événements au format JSON vers la sortie standard, un fichier ou le journal des événements Windows (utile pour les traces à volume élevé comme FileIO). Aucune connaissance préalable des événements que le fournisseur peut produire ou de leur format n'est nécessaire : Sealighter capture et analyse automatiquement tous les événements demandés.
Les événements peuvent ensuite être analysés à partir du JSON en Python, PowerShell, ou transmis à Splunk ou ELK pour des recherches plus poussées.
Le filtrage peut être effectué sur divers aspects d'un événement, de son ID ou Opcode, à la correspondance d'une valeur de propriété, à une recherche de chaîne arbitraire sur l'ensemble de l'événement (utile dans les traces WPP ou lorsque vous ne connaissez pas la structure de l'événement mais avez une idée de son contenu). Vous pouvez également chaîner plusieurs filtres ensemble ou inverser le filtre. Vous pouvez aussi filtrer le nombre maximum d'événements par ID, utile pour étudier un nouveau fournisseur sans être submergé par des événements similaires.
ETW est un système incroyablement utile pour les équipes rouges et bleues. Les équipes rouges peuvent obtenir des informations sur le fonctionnement interne des composants Windows, et les équipes bleues peuvent obtenir des informations précieuses sur les activités suspectes.
Une boucle de recherche typique serait :
logman query providers ou en recherchant des traces WPP dans les binairesFaire cela avec des événements ETW peut être difficile sans écrire de code pour interagir avec et analyser les événements à partir de l'API ETW obtuse. Si vous n'êtes pas un programmeur chevronné (ou ne voulez pas vous occuper de l'API), vos seules autres options sont d'utiliser une combinaison d'outils Windows intégrés plus anciens pour écrire sur le disque sous forme de fichiers binaires .etl, puis de les traiter. Les traces WPP aggravent les problèmes, ne fournissant presque aucune donnée facile à trouver sur les fournisseurs et leurs événements.
Des projets comme JDU2600's Event List et ETWExplorer donnent un aperçu statique, mais les fournisseurs contiennent souvent des noms d'événements obscurs comme Event(1001), ce qui signifie que les données les plus intéressantes ne deviennent visibles qu'en exécutant dynamiquement une trace et en observant la sortie.
D'une certaine manière, cela se situe dans un espace similaire à SilkETW de FuzzySec. Mais tandis que Silk est plus prêt pour la production pour les défenseurs, celui-ci est conçu pour les chercheurs comme moi, et contient donc un certain nombre de fonctionnalités que je n'ai pas pu obtenir avec Silk, principalement en raison de la bibliothèque différente utilisée pour alimenter l'outil. Veuillez voir Ici pour plus d'informations.
Probablement quelqu'un qui comprend les bases d'ETW et qui souhaite vraiment plonger dans la découverte des données que l'on peut en tirer, sans avoir à écrire de code ou à comprendre manuellement comment obtenir et analyser les événements.
Veuillez lire les pages suivantes :
Installation - Comment démarrer Sealighter, y compris une configuration simple, et comment configurer la journalisation des événements Windows si nécessaire.
Configuration - Comment configurer Sealighter, y compris comment spécifier les fournisseurs à journaliser et où journaliser.
Filtrage - Plongée en profondeur dans tous les types de filtrage fournis par Sealighter.
Mise en mémoire tampon - Comment utiliser la mise en mémoire tampon pour signaler plusieurs événements similaires comme un seul
Analyse des données - Comment obtenir et analyser les données de Sealighter.
Scénarios - Exemples de scénarios pas à pas de la façon dont j'ai utilisé Sealighter dans mes recherches.
Limitations - Ce que Sealighter ne fait pas bien ou pas du tout.
Le nom est une contraction de Seafood Highlighter, ce qu'on appelle la fausse chair de crabe en Australie. Comme il est construit sur Krabs ETW, j'ai trouvé le nom amusant.
N'hésitez pas à ouvrir un ticket, même si comme je le dis dans les documents de comparaison, je suis seul et cet outil est prêt pour la recherche, pas pour la production.