|
Posted by jameshanley39@yahoo.co.uk on October 14, 2007, 12:40 pm
If you were Registered and logged in, you could reply and use other advanced thread options >
>
>
>
>
>
> > Will wrote:
> > > Can someone recommend a sniffer for Windows that will show the
> > > process ID and name of the process sending or receiving each packet
> > > shown in the sniffer?
>
> > > I normally use ethereal or wireshark and didn't see a straightforward
> > > way to include this information.
>
> > this is indeed a noble search ! I have looked for the same thing
> > myself.
>
> > netstat can see process id, but only offers a snapshot, it's
> > stateless, and as a result of it only doing a snapshot, it doesn't
> > record whether the packet is incoming or outgoing. And of course it's
> > only a snapshot style port status thing.
>
> > You said something like TCPView do what you want ""if you had the
> > patience of a saint?" But from what I remember, TCPView is not a packet
> > sniffer. You never see inside the packet.
>
> > I did find a port logger (software running on the machine of course,
> > it's necessary for this) that records process id , and whether the
> > packet is incoming or outgoing. But it's not a packet sniffer.
> > Sygate personal firewall, probably the last free version. Maybe
> > available from oldversion.com or elsewhere. You can turn off the
> > firewall feature leaving just the port logger. Though the last time i
> > installed it it crashed, maybe blocking outgoing , and so I removed it
> > and haven't tried it since.
>
> > Somebody should really write what you suggest. It'd be only a small
> > addition to Ethereal.
>
> Can you expand on that last thought? Are you saying the developers of
> Ethereal could do this easily, or did you mean that there is some add-on API
> for Wireshark that would let us add this in?
>
I don't know C/C++ , but I'm saying that for developers it'd be easy.
netstat is a tiny program and does it.
sygate firewall had a very simple port logger program that did it.
So there would be an API. Not for Wireshark. But an API - presumably a
windows or linux one - that can be accessed by the language that
wireshark is written in. Wireshark or any program could access it.
when I say "did it", netstat or sygate firewall did it, i'm referring
to knowing it for 'connections'. Essentially that means it knows it
for packets. Worst case scenario, this shows that if sitting on a
client or server, the software can only know the process id when one
process is used for the entire connection(i've never even see more
than one used anyway. So even for a worst case scenario, 1 process is
a fair assumption to make). One doesn't know if one doesn't try it.
But either way, reasoning shows it's a simple , small thing.
|