Tips : Supervision du firewall Windows
Bonjour à tous, nous allons voir dans cet article comment collecter les événements du firewall Windows sur QRadar. Ces événements vont nous permettre d’avoir une meilleure visualisation de la partie réseau sur un poste de travail ou un serveur, notamment quand les équipements réseaux ne sont pas accessibles à la collecte ou qu’il n’y en a pas.
Cette mise en place va se faire en 2 parties, dans un premier temps nous allons activer le logging sur la machine Windows, ensuite nous irons configurer la partie QRadar pour que tout fonctionne et soit compris.
Vous verrez dans la partie Mise en place côté QRadar que nous utilisons un WinCollect pour récupérer les événements de l’équipement Windows. Je ne vais pas revenir sur l’installation de ce dernier, pour cela je vous renvoie vers mon article sur les collectes de base dans QRadar : Comment surveiller vos équipements.
2. Mise en place côté Windows
a. Modification de la politique d’audit
Comme souvent dans Windows, la verbosité des logs que vous allez retrouver dans l’observateur d’événements, et donc à fortiori dans QRadar, passe par une modification de la politique d’audit de votre machine.
Pour cela il faut ouvrir un terminal en tant qu’administrateur pour effectuer ces activations et effectuer les commandes suivantes :
PS C:\> auditpol.exe /set /subcategory:"Rejet de paquet par la plateforme de filtrage" /success:enable /failure:enable PS C:\> auditpol.exe /set /subcategory:"Connexion de la plateforme de filtrage" /success:enable /failure:enable
Ensuite, il faut dire au firewall de logger les événements, un peu comme on spécifie à une règle sur un firewall standard de logger les événements. Il faut ouvrir le firewall en tapant “wf.msc” dans la fenêtre d’exécution Windows (touche Windows + “R”). Dans la fenêtre du firewall, cliquer sur “Propriétés” dans l’onglet de droite et activer les options comme ci-suit dans la capture :
En fonction de votre profil réseau il est peut-être nécessaire de faire la même chose pour les 2 autres onglets que sont :
- Profil de domaine
- Profil public
b. Vérification des logs
Maintenant que nous avons activé tout ce qui est nécessaire, nous allons vérifier que les logs arrivent bien dans l’observateur d’évènements. Pour l’ouvrir lancez la fenêtre d’exécution Windows puis tapez “eventvwr”. Dans la nouvelle fenêtre similaire à celle ci-dessous :
- Sélectionnez le journal “Sécurité”
- Cliquez sur “Filtrer le journal actuel…”
- Dans la nouvelle fenêtre, allez dans l’onglet “XML”
- Cochez “Modifiez la requête” puis mettez la requête suivante dans le champ surligné en jaune dans la capture :
<QueryList>
<Query Id="0">
<Select Path="Security">*[System[(EventID=5152 or EventID=5153 or EventID=5031 or EventID=5154 or EventID=5155 or EventID=5156 or EventID=5157 or EventID=5158 or EventID=5159)]]</Select>
</Query>
</QueryList>
- Cliquez sur “OK” pour valider le filtre
Si tout a été fait correctement, vous devriez avoir quelques événements dans la fenêtre centrale de l’observateur d’évènements. Si ce n’est pas le cas, n’hésitez pas à m’en faire part après avoir revalidé la bonne configuration vue dans la partie précédente.
3. Mise en place côté QRadar
a. Configuration du filtre XPath
Vous avez dû voir dans la partie précédente que nous avons utilisé un filtre personnalisé pour avoir la liste des événements, c’est exactement ce que nous allons utiliser pour collecter uniquement ces évènements dans votre log source Windows. Bien entendu, il vous est tout à fait possible de collecter tous les évènements du journal “Sécurité”.
Comme expliqué dans cet article concernant l’utilisation du XPath, il faut tout simplement rajouter le filtre dans la section “XPath Query” de votre log source Windows et le tour est joué.
b. Ajustement du DSM Windows
Une fois la configuration de la collecte modifiée, nous allons vérifier si les logs sont bien parsés et mappés. Pour la seconde interrogation tout est bon, nous avons bien un mapping qui se fait pour ces évènements, malheureusement si on se penche sur le contenu de l’évènement dans QRadar on constate plusieurs discordances.
Je les ai surlignées en rouge et j’ai encadré en rouge la partie du log qu’il faudrait récupérer. De plus, j’ai encadré en jaune 2 autres propriétés qu’il serait intéressant de parser, nous n’allons voir ici que les premières mais rien ne vous empêche de continuer le travail à ce niveau là.
Pour le parsing comme pour le XPath, je vous renvoie vers cette section de l’article sur les DSM Custom. La seule distinction ici est, que nous allons modifier un DSM intégré à QRadar, il va donc falloir réécrire certaines propriétés avec une nouvelle regex pour avoir la bonne information. Je vous ai mis le résumé dans le tableau ci-dessous :
Propriété | Regex |
Destination IP | Adresse de destination\s:\s+([0-9a-f:.]+)\s+ |
Destination Port | Port de destination\s:\s+(\d{0,5})\s+ |
Source IP | Adresse source\s:\s+([0-9a-f:.]+)\s+ |
Source Port | Port source\s:\s+(\d{0,5})\s+ |
Faites bien attention, nous avons ici une extraction pour des logs en français, pour ceux en anglais la regex ne va pas être la même.
Si vous le souhaitez, vous pouvez utiliser l’export que j’ai mis sur mon GitHub.
4. Conclusion
Et voilà ! Vous êtes à même de collecter les logs du firewall de n’importe quelle machine Windows. Cela va vous permettre d’étoffer encore plus votre supervision sur ces équipements surtout si vous manquez de sondes sur la partie réseau.
N’hésitez pas à me faire vos retours si vous avez des idées d’amélioration concernant cette collecte, mais également des idées de scenarii qui pourrait en découler.
5. Bibliographie
- Liste des EventID pour la sous-catégorie Windows Filtering Platform : Liste des EventID pour la sous-catégorie Windows Filtering
- Exemple de filtres XPath XML sous Windows : Documentation Microsoft
- Activation du logging du firewall Windows : Visualisation des logs firewall Windows / Logging des logs firewall Windows
- https://github.com/staze0/QRadar/blob/main/DSM%20Custom/Custom%20Windows%20Firewall.zip