2009-10-14 12 views
55

Ich bin auf der Suche nach einem Sniffer, der mit der Loopback-Adresse in Windows arbeiten kann.Sniffer für localhost (Windows OS)

Bisher fand ich Microsoft Network Monitor, der ein nettes Tool, aber für localhost nutzlos es ist, weil auf Windows, localhost-Pakete über den regulären Netzwerk-Stack nicht passieren, so dass sie unsichtbar zu einem Ethernet-Sniffer wie MS Netzwerkmonitor.

Wie debuggen Sie Anwendungen, die Daten im Loopback-Mechanismus senden? Jeder gute (Open Source) Sniffer, der mit localhost arbeiten kann?

UPDATE: Wenn Sie Erfahrung mit einem Werkzeug haben, wäre es schön, eine kurze Beschreibung für die Zukunft haben

+1

Bitte versuchen Sie Npcap: https://github.com/nmap/npcap, es basiert auf WinPcap und unterstützt Loopback Traffic Capturing 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/). – hsluoyz

Antwort

58

Ich war mit diesem Problem konfrontiert und kam nach viel Forschung nicht weiter. Grundsätzlich basieren alle verfügbaren Sniffer auf dem Netzwerktreiberstapel und Windows stellt keine Aufrufe von localhost durch es bereit.

Was ich am Ende verwendet wurde, war ein Tool namens SocketSniffer, die Winsocks Aufrufe und überwachen TCP, UDP-Socket-Verbindungen. Es half mir, ein Anwendungsproblem zu debuggen, das nur in Gewinn 2k3 auftrat.

Die Download-Site ist auf http://www.nirsoft.net/utils/socket_sniffer.html

Beachten Sie, dass dies nicht mehr funktioniert in Windows 8. Microsoft Message Analyzer ist nun in der Lage Loopback-Verkehr aus dem Kasten heraus schnüffeln. Offizieller Blogeintrag hier: http://blogs.msdn.com/b/winsdk/archive/2014/08/15/rejoice-we-can-now-capture-loopback-traffic.aspx

+1

Ja, jetzt sehe ich meine localhost-Pakete. Danke für das Schnüffeltool. Ich werde es meiner Debugging "Toolbox" hinzufügen. – citn

+0

+1 Wirklich nützlich – leonbloy

+0

sieht einige Systemprozesse (dh SMTP-Server) nicht –

-5

Ich würde Wireshark empfehlen, kann es zu einem Gerät im Netzwerk anschließen und bietet einige nette Dienstprogramme die analize Verkehr, plus es ist freie Software.

+0

plus Wireshark ist für Windows, Mac OSX (Intel und PPC) und Linux verfügbar - wir verwenden es die ganze Zeit (gut, mindestens monatlich). – OldTroll

+0

Ich fand eine interessante Bemerkung auf http://wiki.wireshark.org/CaptureSetup/Loopback: "Sie können eine virtuelle Netzwerkkarte namens Microsoft Loopback Adapter hinzufügen, aber in den meisten Fällen gibt es auch keine Ergebnisse wie erwartet." Das bedeutet, dass es einige Nachteile hat. Wie auch immer, es sieht vielversprechend aus. – citn

+4

Ich kann nichts mit Wireshark sehen, wenn es um localhost geht. – mackenir

5

Ich glaube, Sie können http://localhost./ (beachten Sie den Punkt am Ende), um Localhost-Pakete durch den regulären Netzwerk-Stack zu erzwingen.

Dies funktioniert, um http von einem Tool wie Fiddler erkannt werden - nicht sicher über andere Protokolle.

+1

Mit Fiddler können Sie auch einfach http: //ipv4.fiddler verwenden Natürlich erwähnt das OP nicht, wenn er HTTP (S) Verkehr sehen will. – EricLaw

+0

Ich wusste das nicht, danke für die Info Eric. Es sieht so aus, als ob das nur funktioniert, wenn der Fiddler läuft, richtig? –

+0

Ja, "ipv4.fiddler" wird von Fiddler implementiert, so dass es nur funktioniert, wenn Fiddler läuft. – EricLaw

32

Es gibt ein neues Tool für Windows, das den Netzwerkverkehr looback/localhost erfassen kann. Es heißt RawCap und ist hier erhältlich: http://www.netresec.com/?page=RawCap

Gerade RawCap wie diese beginnen die Loopback-Schnittstelle zu schnuppern: RawCap.exe 127.0.0.1 localhost.pcap

Sie können dann öffnen localhost.pcap in Wireshark oder irgendeinen anderen pcap analyzer, um den capured Verkehr zu betrachten.

Btw. RawCap ist nicht nur in der Lage, Loopback-Datenverkehr unter Windows zu erkennen, sondern kann auch Ihre WiFi-Schnittstelle sowie PPP-Schnittstellen wie 3G/UMTS-Verbindungen ausspionieren.

+3

Hinweis: "Die Das Hauptproblem mit Raw Socket Sniffing in Vista und Win7 ist, dass Sie entweder keine eingehenden Pakete (Win7) oder ausgehende Pakete (Vista) erhalten.Wenn Sie nur von localhost/loopback (127.0.0.1) schnüffeln wollen, dann neuere Version von Windows funktioniert tatsächlich besser als das alte XP. Wenn Sie von localhost in Windows XP schnüffeln, können Sie nur UDP- und ICMP-Datenverkehr und nicht TCP erfassen, aber TCP-, UDP- und ICMP-Pakete können alle von localhost unter Windows Vista ordnungsgemäß gelesen werden sowie Windows 7. " –

+2

Ich habe festgestellt, dass ich nur UDP-Pakete und TCP-SYN-Pakete unter Windows 7 x86-64 mit RawCap für das, was es wert ist, erfassen - was es nutzlos macht. – Tyson

+0

Ich habe es auf Windows 2008 R2 testen, kann nicht erfassen Verkehr über HTTP URLs von localhost und 127.0.0.1 – zhaorufei

2

Ich hatte solch ein Problem, wenn ich den Verkehr auf localhost überwachen möchte, nachdem ich SelfSSL darauf eingerichtet habe. Nach der Suche nach anderen nützlichen Tools, fand ich fidlre irgendwie passend für mein Problem Sie sollten versuchen, diese Fiddler for Http and Https

Hope this dir helfen!

+0

Ich mag den Fiddler auch! –