PKTMON - Cheat Sheet Administrateur Windows
GuidePKTMON - Cheat Sheet Administrateur Windows
PKTMON (Packet Monitor) est un outil natif Windows permettant de
diagnosticcapturerPktmonet d'analyser le trafic réseau sans installer de logiciel tiers.
Vérifier la configuration actuelle
Contexte
Afficher
Serveurles filtres actifs :
pktmon Nomfilter :list
SRV
Adresse IP : 127.0.0.1
ApplicationAfficher les composants monitorés :
pktmon SE_DRVUTL.EXEcomp Cheminlist
:
C:\MICRO-SESAME\MICRO-SESAME_2024.3.15\prog\SE_DRVUTL.EXE
PortAfficher utilisél'aide :
pktmon UDPhelp
20500
ObjectifNettoyer les filtres
VérifierSupprimer quetous les filtres :
pktmon Lefilter clientremove
envoie
Capturer un port spécifique
UDP
Capturer le port UDP 20500 :
pktmon filter add -p 20500
TCP
Capturer le port TCP 443 :
pktmon filter add -p 443
Lister les paquets.filtres
pktmon filter list
Capture temps réel
Démarrer une capture en temps réel :
pktmon start --etw -m real-time
Arrêter la capture :
pktmon stop
Capture vers un fichier
Démarrer l'enregistrement :
pktmon start --capture --pkt-size 0
Arrêter :
pktmon stop
Fichier généré :
PktMon.etl
Export de capture
Conversion en texte
pktmon format PktMon.etl -o Capture.txt
Conversion Wireshark
pktmon etl2pcap PktMon.etl -o Capture.pcapng
Exemples de lecture
Trafic entrant
Direction Rx
192.168.1.10.50000 > 10.0.0.10.20500
Signification :
Client : 192.168.1.10
Port : 50000
Serveur : 10.0.0.10
Port : 20500
Le serveur reçoit lesun paquets.
Trafic reçoitsortant
Direction données.Tx
Le serveur répond au client.
Validation ned'un bloqueflux lefonctionnel
Rx
192.168.1.10.50000 > 10.0.0.10.20500
Tx
10.0.0.10.20500 > 192.168.1.10.50000
Interprétation :
✓ Trafic reçu
✓ Application joignable
✓ Réponse envoyée
VérifierFiltrer qu'par adresse IP
Capturer uniquement une IP :
pktmon filter add -i 192.168.1.10
Capturer plusieurs IP :
pktmon filter add -i 192.168.1.10
pktmon filter add -i 192.168.1.20
Capture pour analyse Wireshark
Méthode recommandée :
pktmon filter remove
pktmon filter add -p 20500
pktmon start --capture --pkt-size 0
Faire le test.
pktmon stop
Convertir :
pktmon etl2pcap PktMon.etl -o Capture.pcapng
Ouvrir directement dans Wireshark.
Rechercher une application écouteliée surà leun port 20500
Méthode 1UDP
Get-NetUDPEndpoint |
Where-Object LocalPort -eq 20500
Exemple :
TCP
LocalAddressGet-NetTCPConnection |
Where-Object LocalPort OwningProcess-eq ------------ --------- -------------
0.0.0.0 20500 2308443
Identifier
le
Associer un PID à un processus
Get-Process -Id 23081234
ouOu :
(Get-Process -Id 2308)1234).Path
Résultat attendu :
C:\MICRO-SESAME\MICRO-SESAME_2024.3.15\prog\SE_DRVUTL.EXEProgram Files\Application\App.exe
Vérifier lesrapidement règles dule pare-feu Windows
Rechercher
Règles unecontenant règleun existanteport :
Get-NetFirewallRule |
Where-Object DisplayName -match "20500|SESAME"20500"
Ports
Créerouverts une règle dédiée
:
New-NetFirewallRuleGet-NetFirewallPortFilter `|
Where-Object LocalPort -DisplayName "MICRO-SESAME - SE_DRVUTL - UDPeq 20500 Entrant" `
-Description "Autorise les communications UDP du service Micro-Sesame" `
-Direction Inbound `
-Action Allow `
-Program "C:\MICRO-SESAME\MICRO-SESAME_2024.3.15\prog\SE_DRVUTL.EXE" `
-Protocol UDP `
-LocalPort 20500 `
-Profile Domain
CapturerWorkflow le trafic avec PKTMONrecommandé
Nettoyer1. Supprimer les filtres
pktmon filter remove
2.
Ajouter un filtre sur le port
pktmon filter add -p 20500
3.
Démarrer la capture en temps réel
pktmon start --etw -m real-time
4. Réaliser le test applicatif
5. Vérifier
Rx uniquement
→ Requête reçue.
Rx + Tx
→ Communication bidirectionnelle.
Aucune trace
→ Le trafic n'arrive pas sur le serveur.
6. Arrêter la capture
pktmon stop
InterprétationCommandes desessentielles résultatsà retenir
Cas n°1 : Le serveur reçoit le paquet
Exemple :
Direction Rx
10.225.12.216.52097 > 10.208.9.134.20500
Signification :
✅ Le paquet arrive sur le serveur.
Cas n°2 : Le serveur répond
Exemple :
Direction Tx
10.208.9.134.20500 > 10.225.12.216.52097
Signification :
✅ L'application reçoit la requête.
✅ L'application génère une réponse.
✅ Le serveur renvoie un paquet.
Cas n°3 : Réception sans réponse
Direction Rx
10.225.12.216 > 10.208.9.134
Aucune ligne :
Direction Tx
Signification :
⚠️ Le serveur reçoit le paquet mais ne répond pas.
Causes possibles :
Cas n°4 : Réponse visible dans PKTMON
Exemple réel :
Direction Rx
10.200.111.3.20500 > 10.208.9.134.20500
Direction Tx
10.208.9.134.20500 > 10.200.111.3.20500
Conclusion :
✅ Flux fonctionnel.
Le serveur reçoit la requête et répond.
Vérifier les rejets du pare-feu Windows
Rechercher les événements de blocage
Get-WinEvent -LogName Security |
Where-Object Id -eq 5157
L'événement 5157 indique qu'un paquet réseau a été bloqué.
Export d'une capture PKTMON
Démarrer une capture
pktmon start --capture --pkt-size 0
Arrêter la capture
pktmon stop
Générer un fichier texte
pktmon format PktMon.etl -o C:\Temp\PktMon.txt
Générer un fichier PCAPNG
Compatible Wireshark.
pktmon etl2pcap PktMon.etl -o C:\Temp\Capture.pcapng
Méthode de diagnostic recommandée
Étape 1
Vérifier l'écoute :
Get-NetUDPEndpoint | Where-Object LocalPort -eq 20500
Étape 2
Identifier l'application :
(Get-Process -Id <PID>).Path
Étape 3
Démarrer PKTMON :
pktmon filter remove
pktmon filter add -p 20500
pktmon start --etw -m real-time
pktmon start
Étape--capture 4
--pkt-size Faire0
lepktmon teststop
depuispktmon leformat client.
-o
ÉtapeCapture.txt
5
pktmon Analyseretl2pcap :
Cas-o A :
Rx uniquementCapture.pcapng
=> Le serveur reçoit mais ne répond pas.
Cas B :
Rx + Tx
=> Le serveur communique correctement.
Cas C :
Aucun paquet
=> Problème réseau ou routage.
Exemple d'analyse complète
Client :
10.225.12.216
Serveur :
10.208.9.134
Capture :
Rx
10.225.12.216.52097 > 10.208.9.134.20500
Tx
10.208.9.134.20500 > 10.225.12.216.52097
Conclusion :
✅ Le client envoie.
✅ Le serveur reçoit.
✅ Micro-Sesame traite la requête.
✅ Le serveur répond.
✅ Le port UDP 20500 fonctionne.
Si l'utilisateur constate toujours un dysfonctionnement malgré ces traces, le problème se situe alors côté client ou sur le chemin retour réseau.