2009-10-14 10 views
55

Sto cercando uno sniffer che possa funzionare con l'indirizzo di loopback in Windows.Sniffer per localhost (sistema operativo Windows)

Finora, ho trovato Microsoft Network Monitor che è uno strumento piacevole, ma per localhost è inutile perché su Windows, i pacchetti localhost non passano attraverso lo stack regolare della rete, quindi sono invisibili a uno sniffer Ethernet come MS Network Monitor.

Come si esegue il debug di applicazioni che inviano dati nel meccanismo di loopback? Qualsiasi sniffer valido (open source) che possa funzionare con localhost?

UPDATE: Se avete esperienza con uno strumento, sarebbe bello avere una breve descrizione per riferimento futuro

+1

Prova Npcap: https://github.com/nmap/npcap, si basa su WinPcap e supporta il rilevamento del traffico di loopback su Windows. Npcap è un sottoprogetto di Nmap (http://nmap.org/), quindi si prega di segnalare eventuali problemi sulla lista di sviluppo di Nmap (http://seclists.org/nmap-dev/). – hsluoyz

risposta

58

Mi sono trovato di fronte a questo problema e non ho ottenuto nulla dopo molte ricerche. Fondamentalmente tutti gli sniffer disponibili si basano sullo stack dei driver di rete e Windows non espone le chiamate localhost attraverso di esso.

Quello che ho finito per usare era uno strumento chiamato SocketSniffer, che dà un'occhiata alle chiamate di Winsock e controlla le connessioni socket TCP, UDP. Mi ha aiutato a eseguire il debug di un problema di applicazione che si verificava solo in win 2k3.

Il suo sito di download è a http://www.nirsoft.net/utils/socket_sniffer.html

Si noti che questa non funziona più in Windows 8. Microsoft Message Analyzer è ora in grado di sniffing del traffico di loopback, fuori dalla scatola. Post del blog ufficiale qui: http://blogs.msdn.com/b/winsdk/archive/2014/08/15/rejoice-we-can-now-capture-loopback-traffic.aspx

+1

Sì, ora vedo i miei pacchetti localhost. Grazie per lo strumento sniffer. Lo aggiungerò alla mia "cassetta degli attrezzi" di debug. – citn

+0

+1 Davvero utile – leonbloy

+0

non vede alcuni processi di sistema (es. Server smtp) –

-5

Suggerirei Wireshark, si può collegare a qualsiasi dispositivo di rete e offrire una buona utilità per analizzare il traffico, in più è un software gratuito.

+0

plus wireshark è disponibile per Windows, Mac OSX (Intel e PPC) e Linux - lo usiamo sempre (beh, almeno mensilmente). – OldTroll

+0

Ho trovato un'osservazione interessante su http://wiki.wireshark.org/CaptureSetup/Loopback: "È possibile aggiungere una scheda di rete virtuale denominata Microsoft Loopback Adapter, ma nella maggior parte dei casi potrebbe non dare risultati come previsto.". Quindi, questo significa che ha alcuni inconvenienti. Ad ogni modo, sembra promettente. – citn

+4

Non riesco a vedere nulla con Wireshark quando si tratta di localhost. – mackenir

5

Credo che si possa fare http://localhost./ (notare il punto alla fine) per forzare i pacchetti localhost attraverso lo stack regolare della rete.

Questo funziona per far riconoscere http da uno strumento come il violinista - non sono sicuro di altri protocolli.

+1

Con Fiddler, puoi anche usare semplicemente http: //ipv4.fiddler Ovviamente, l'OP non ha menzionato se vuole vedere il traffico HTTP (S). – EricLaw

+0

Non lo sapevo, grazie per le informazioni Eric. Sembra che funzioni solo quando il violinista è in esecuzione, giusto? –

+0

Sì, "ipv4.fiddler" è implementato da Fiddler, quindi risolve solo quando è in esecuzione Fiddler. – EricLaw

32

C'è un nuovo strumento disponibile per Windows in grado di catturare il traffico di rete looback/localhost. Si chiama RawCap ed è disponibile qui: http://www.netresec.com/?page=RawCap

Basta iniziare RawCap come questo per fiutare l'interfaccia di loopback: RawCap.exe 127.0.0.1 localhost.pcap

Si può quindi aprire localhost.pcap in Wireshark o qualsiasi altro pcap analyzer per guardare il traffico catturato.

Btw. RawCap è in grado non solo di annusare il traffico loopback su Windows, ma anche di sniffare l'interfaccia WiFi e le interfacce PPP come le connessioni 3G/UMTS.

+3

Nota però: "The il problema principale con raw socket sniffing in Vista e Win7 è che potresti non ricevere pacchetti in entrata (Win7) o pacchetti in uscita (Vista). Se vuoi solo sniff da localhost/loopback (127.0.0.1), allora, la versione più recente di Windows funziona davvero meglio del vecchio XP. Quando si annota da localhost in Windows XP, sarà possibile acquisire il traffico UDP e ICMP e non il TCP, ma i pacchetti TCP, UDP e ICMP possono essere tutti individuati correttamente da localhost su Windows Vista come bene come Windows 7. " –

+2

Ho notato che posso catturare solo pacchetti UDP e pacchetti TCP SYN in Windows 7 x86-64 utilizzando RawCap, per quello che vale - il che lo rende inutile. – Tyson

+0

L'ho provato su Windows 2008 R2, non posso acquisire traffico tramite url HTTP di localhost e 127.0.0.1 – zhaorufei

2

Ho avuto un tale problema quando voglio monitorare il traffico su localhost dopo aver configurato SelfSSL su di esso. Dopo aver cercato su altri strumenti utili, ho trovato fidllre in qualche modo adatto per il mio numero si dovrebbe provare questo Fiddler for Http and Https

Spero che questo ti aiuti!

+0

Anche a me piace il Fiddler! –