Ich habe eine einfache Server-App in C geschrieben, die auf localhost läuft. Wie kann der Localhost-Verkehr mit Wireshark erfasst werden?
Ich habe eine einfache Server-App in C geschrieben, die auf localhost läuft. Wie kann der Localhost-Verkehr mit Wireshark erfasst werden?
Antworten:
Wenn Sie Windows verwenden , ist dies nicht möglich - lesen Sie unten. Sie können stattdessen die lokale Adresse Ihres Computers verwenden und dann Inhalte erfassen. Siehe CaptureSetup / Loopback .
Zusammenfassung: Sie können auf der Loopback-Oberfläche unter Linux, auf verschiedenen BSDs einschließlich Mac OS X und unter Digital / Tru64 UNIX erfassen, und Sie können dies möglicherweise unter Irix und AIX tun, aber unter Solaris, HP, können Sie dies definitiv nicht -UX ... .
Obwohl auf der Seite erwähnt wird, dass dies unter Windows mit Wireshark allein nicht möglich ist, können Sie es mithilfe einer Problemumgehung aufzeichnen, wie in einer anderen Antwort erwähnt .
EDIT: Etwa 3 Jahre später ist diese Antwort nicht mehr ganz richtig. Die verlinkte Seite enthält Anweisungen zum Erfassen auf der Loopback-Oberfläche .
Aus irgendeinem Grund hat in meinem Fall keine der vorherigen Antworten funktioniert, daher werde ich etwas posten, das den Trick getan hat. Es gibt ein kleines Juwel namens RawCap , das den lokalen Host- Verkehr unter Windows erfassen kann. Vorteile:
Nachdem der Datenverkehr erfasst wurde, können Sie ihn öffnen und in Wireshark normal untersuchen. Der einzige Nachteil, den ich festgestellt habe, ist, dass Sie keine Filter festlegen können, dh Sie müssen den gesamten lokalen Host-Verkehr erfassen, der stark sein kann. Es gibt auch einen Fehler in Bezug auf Windows XP SP 3.
Einige weitere Ratschläge:
Auf der Windows-Plattform ist es auch möglich, den lokalen Host-Verkehr mit Wireshark zu erfassen. Was Sie tun müssen, ist, den Microsoft Loopback-Adapter zu installieren und dann daran zu schnüffeln.
Ich habe das noch nicht ausprobiert, aber diese Antwort aus dem Internet klingt vielversprechend:
Wireshark kann unter Windows XP aufgrund der Art des Windows-TCP-Stacks keine lokalen Pakete erfassen. Wenn Pakete auf demselben Computer gesendet und empfangen werden, scheinen sie die von Wireshark überwachte Netzwerkgrenze nicht zu überschreiten.
Es gibt jedoch eine Möglichkeit, dies zu umgehen. Sie können den lokalen Datenverkehr über Ihr Netzwerk-Gateway (Router) weiterleiten, indem Sie auf Ihrem Windows XP-Computer eine (temporäre) statische Route einrichten.
Angenommen, Ihre XP-IP-Adresse lautet 192.168.0.2 und Ihre Gateway-Adresse (Router) lautet 192.168.0.1. Sie können den folgenden Befehl über die Windows XP-Befehlszeile ausführen, um den gesamten lokalen Datenverkehr über die Netzwerkgrenze hinaus zu erzwingen, sodass wireshark die Adresse verfolgen kann Daten (Beachten Sie, dass wireshark in diesem Szenario Pakete zweimal meldet, einmal, wenn sie Ihren PC verlassen, und einmal, wenn sie zurückkehren).
route add 192.168.0.2 mask 255.255.255.255 192.168.0.1 metric 1
http://forums.whirlpool.net.au/archive/1037087 , gerade zugegriffen.
Bitte versuchen Sie es mit Npcap: https://github.com/nmap/npcap . Es basiert auf WinPcap und unterstützt die Erfassung von Loopback-Datenverkehr unter Windows. Npcap ist ein Teilprojekt von Nmap ( http://nmap.org/ ). Bitte melden Sie alle Probleme auf der Entwicklungsliste von Nmap ( http://seclists.org/nmap-dev/ ).
Starting from Windows Vista: Npcap is an update of WinPcap using NDIS 6 Light-Weight Filter (LWF), done by Yang Luo for Nmap project during Google Summer of Code 2013 and 2015. Npcap has added many features compared to the legacy WinPcap.
Sie können den Loopback-Verkehr live in Wireshark anzeigen , indem Sie die Ausgabe von RawCap sofort lesen lassen . cmaynard beschreibt diesen genialen Ansatz in den Wireshark-Foren . Ich werde es hier zitieren:
[...] Wenn Sie Live-Verkehr in Wireshark anzeigen möchten, können Sie dies dennoch tun, indem Sie RawCap über eine Befehlszeile und Wireshark über eine andere ausführen. Angenommen, Sie haben Cygwins Schwanz zur Verfügung, könnte dies folgendermaßen erreicht werden:
cmd1: RawCap.exe -f 127.0.0.1 dumpfile.pcap
cmd2: tail -c +0 -f dumpfile.pcap | Wireshark.exe -k -i -
Es erfordert Cygwins Schwanz, und ich konnte mit den sofort einsatzbereiten Tools von Windows keinen Weg finden, dies zu tun. Sein Ansatz funktioniert für mich sehr gut und ermöglicht es mir, alle Wiresharks-Filterfunktionen für erfassten Loopback-Verkehr live zu nutzen.
stdout
. Ab heute kann die oben bereitgestellte Lösung wie folgt wie folgt vereinfacht tail
werden: RawCap.exe -q 127.0.0.1 - | Wireshark.exe -i - -k
Weitere Informationen zu den neuen RawCap-Funktionen finden Sie auf der Ankündigungsseite von RawCap Redux hier: netresec.com/?page=Blog&month=2020-01&post=RawCap -Redux
Für Windows - ,
Sie können in Wireshark keine Pakete für Local Loopback erfassen. Sie können jedoch ein sehr kleines, aber nützliches Programm namens RawCap verwenden .
Führen Sie RawCap an der Eingabeaufforderung aus und wählen Sie die Loopback-Pseudo-Schnittstelle (127.0.0.1) aus. Schreiben Sie dann einfach den Namen der Paketerfassungsdatei ( .pcap) ).
Eine einfache Demo ist wie folgt;
C:\Users\Levent\Desktop\rawcap>rawcap
Interfaces:
0. 169.254.125.51 Local Area Connection* 12 Wireless80211
1. 192.168.2.254 Wi-Fi Wireless80211
2. 169.254.214.165 Ethernet Ethernet
3. 192.168.56.1 VirtualBox Host-Only Network Ethernet
4. 127.0.0.1 Loopback Pseudo-Interface 1 Loopback
Select interface to sniff [default '0']: 4
Output path or filename [default 'dumpfile.pcap']: test.pcap
Sniffing IP : 127.0.0.1
File : test.pcap
Packets : 48^C
Sie können Loopback unter Solaris, HP-UX oder Windows nicht erfassen. Sie können diese Einschränkung jedoch mit einem Tool wie RawCap ganz einfach umgehen .
RawCap kann Rohpakete auf jeder IP erfassen, einschließlich 127.0.0.1
(localhost / loopback). Rawcap kann auch eine pcap
Datei generieren . Sie können die pcap
Datei mit Wireshark öffnen und analysieren .
Sehen Sie hier für weitere Informationen darüber , wie RawCap und Wireshark zu überwachen localhost verwenden.