ICMP-Anfragen auf einem Windows 10-System erkennen

ICMP-Anfragen auf einem Windows 10-System erkennen

Ich suche nach einer Möglichkeit, ICMP-Anfragen (z. B. Ping) auf einem Windows 10-System zu erkennen. Leider funktioniert dies nicht mit netstat, da ICMP nicht von einem Port abhängt und daher auch alle anderen einfachen Tools wie TCPview nicht funktionieren.

Gibt es einen nativen Befehl zum Überwachen von ICMP auf einem Windows 10-System? Alternativ würde ich, wenn es keine andere Lösung gibt, auf ein Drittanbietertool zurückgreifen, vorzugsweise etwas Einfacheres/Leichtgewichtigeres als Wireshark. Alle Hinweise/Lösungen sind willkommen!

Antwort1

Leider funktioniert es nicht mit netstat, da ICMP nicht von einem Port abhängig ist

Nein, es liegt daran, dass der ICMP-Handler keinen regulärenSteckdose, ist aber in den IP-Stack integriert. Aber wenn Sie ein Programm hätten, das „Raw Sockets“ verwendet, um z. B. UDP- oder TCP-Pakete zu generieren (ich glaube, nmap trifft z. B. darauf zu), würden Sie sie auch in netstat nicht sehen.

Außerdem würde es sowieso nicht funktionieren, da ICMP ein datagrammbasiertes Protokoll ist, bei dem ein einzelner "nicht verbundener" Socket Pakete von allen möglichen Quellen empfangen kann – selbst wenn es sich um UDP handelt (wastutin netstat angezeigt) wird normalerweise nur ein einziger „Foreign Address: *:*“-Socket angezeigt, selbst wenn der Server 50 verschiedenen Clients antwortet.

Gibt es einen nativen Befehl zum Überwachen von ICMP auf einem Windows 10-System?

Windows 10 ist pktmonseit der Veröffentlichung im Jahr 2018 verfügbar.

pktmon filter add -p ICMP
pktmon start --etw -m real-time
pktmon filter add -p ICMP
pktmon start -c
...
pktmon stop
pktmon etl2txt .\PktMon.etl

Die Ablaufverfolgung erfolgt auf verschiedenen Betriebssystemebenen, sodass es so aussieht, als würde dasselbe Paket mehrere Windows-Komponenten durchlaufen (im Gegensatz zu Npcap, das sie nur an einer Stelle abruft).

Die ETL-Erfassungsdateien von Pktmon können auchkonvertiert in .pcapngzur Verwendung in Wireshark.

Alternativ würde ich, wenn es keine andere Lösung gibt, auf ein Drittanbieter-Tool zurückgreifen, vorzugsweise auf etwas Einfacheres/Leichtgewichtigeres als Wireshark

Wireshark wird mit zwei Befehlszeilentools geliefert: tsharkeines, das Pakete an ein Terminal erfasst (sehr ähnlich wie tcpdump, nur mit den Analysefunktionen von Wireshark) und dumpcapeines, das die reine pcapng-Datei ausgibt (wie tcpdump mit der -wOption).

(Andere Tools verwenden möglicherweise auch direkt denselben Npcap-Treiber, der zusammen mit Wireshark installiert wird. Möglicherweise gibt es beispielsweise einen TCPdump-Port dafür. Sie müssen jedoch die Lizenzierung von Npcap beachten, die eine besondere Ausnahme für Wireshark enthält. Für einige dieser Tools muss Npcap möglicherweise auch im „WinPcap-kompatiblen“ Modus installiert werden.)

Antwort2

Ein kostenloses Tool, das ICMP-Sonden erkennen kann, ist Wireshark.

Nachdem Sie den Netzwerkadapter ausgewählt und mit der Erfassung begonnen haben, können Sie den Anzeigefilter auf ICMP einstellen.

Hier ist ein Beispiel zur Erkennung ping localhost:

Bildbeschreibung hier eingeben

verwandte Informationen