Forum: PC-Programmierung Netzwerk Sniffer


von leo (Gast)


Angehängte Dateien:

Lesenswert?

Hi, ich habe da eine Frage bezüglich einem Sniffer für python.
Das ganze soll unter Windows laufen. Ich habe den Sniffer gestartet,
allerdings sehe ich keine ankommenden Packet obwohl ich auf 
Internetseite zugreife.

von Tim S. (Firma: tsx89) (freak_ts) Benutzerseite


Lesenswert?

leo schrieb:
> keine ankommenden Packet obwohl ich auf
> Internetseite zugreife.

Da ist viel zu wenig Beschreibung drin. Was hast du genau gemacht und 
wie testest du das? Was erwartest du? Und welche Internetseite? Die 
Pakete abgehend und ankommend werden wohl vom Browser (oder einem 
anderen Layer im OS) direkt abgearbeitet, ohne das phython das 
mitbekommt. Aber je nach dem was du grad machen und sniffen willst kann 
das auch ganz gewollt und klar sein. (Bin kein python experte)..

Was passiert wenn du (von einem anderen Gerät z.B. Handy) auf die IP des 
Sniffer-Rechners, oder per localhost auf DEINE EIGENE Internetseite 
(lokal gehostet) zugreifst?

Du willst damit wohl jedes einzelne Paket vom Ethernetadapter sniffen?

: Bearbeitet durch User
von leo (Gast)


Lesenswert?

Hi, hab von meinem Handy aus ping Nachrichten an den PC gesendet. Da hat 
der Sniffer auf dem PC nichts ausgespuckt. Dann habe ich auch auf dem PC 
den localhost 127.0.0.1 angepingt auch hier nix zu sehen.

von leo (Gast)


Lesenswert?

Kann das sein dass das an Windows 10 liegen könnte?

von leo (Gast)


Lesenswert?

Zusatz: Impacket wurde nach installiert

von Jim M. (turboj)


Lesenswert?

leo schrieb:
> Das ganze soll unter Windows laufen.

Wireshark gibt es auch für Windows in fertich.

Der obige Code sieht IMHO stark nach Unix(Linux)- only aus und kennt 
kein IPv6.

von leo (Gast)


Lesenswert?

Ok wenn ich aber den localhost anpinge dann ist das doch ipv4 oder?

von leo (Gast)


Lesenswert?

Im Code sehe ich keine Einstellung für ipv6 oder ipv4.

von Jens G. (jensig)


Lesenswert?

leo (Gast)

>Kann das sein dass das an Windows 10 liegen könnte?

Nöö, eher daran, daß das vielleicht nicht für Windows generell gedacht 
ist.
Zumindest solltest Du das explizit als Admin ausführen (also 
Kommandozeile oder Citrix explizit "Als Administrator ausführen ...").

von cppbert3 (Gast)


Lesenswert?

leo schrieb:
> Hi, ich habe da eine Frage bezüglich einem Sniffer für python.
> Das ganze soll unter Windows laufen. Ich habe den Sniffer gestartet,
> allerdings sehe ich keine ankommenden Packet obwohl ich auf
> Internetseite zugreife.

was sagt der Multiplatform Gold-Standard-Paket-Sniffer Wireshark?
wenn der auch nichts anzeigt liegt es an was anderem

von Εrnst B. (ernst)


Lesenswert?

Dumme Frage: Tatsächlich mit Windows-Python(.exe) ausgeführt, oder in 
einem WSL(2)-Container mit virtuellem Netzwerk?

Falls WSL, kannst du darin auch maximal WSL-Traffic sehen.

von Linuxprofi (Gast)


Lesenswert?

Jens G. schrieb:
> leo (Gast)
>
>>Kann das sein dass das an Windows 10 liegen könnte?
>
> Nöö, eher daran, daß das vielleicht nicht für Windows generell gedacht
> ist.
> Zumindest solltest Du das explizit als Admin ausführen (also
> Kommandozeile oder Citrix explizit "Als Administrator ausführen ...").

Er muss Python in der Firewall freigeben, sonst blockt die...
Sollte man aber als Windowsnutzer wissen.

von Linuxprofi (Gast)


Lesenswert?

Linuxprofi schrieb:
> Jens G. schrieb:
>> leo (Gast)
>>
>>>Kann das sein dass das an Windows 10 liegen könnte?
>>
>> Nöö, eher daran, daß das vielleicht nicht für Windows generell gedacht
>> ist.
>> Zumindest solltest Du das explizit als Admin ausführen (also
>> Kommandozeile oder Citrix explizit "Als Administrator ausführen ...").
>
> Er muss Python in der Firewall freigeben, sonst blockt die...
> Sollte man aber als Windowsnutzer wissen.

Nachtrag:
Eigentlich sollte man das als mikrocontroller.net-Nutzer wissen!

von Marco H. (damarco)


Lesenswert?

Nö unter Win gibt es keine RAW sockets....

https://de.wikipedia.org/wiki/Pcap
oder https://en.wikipedia.org/wiki/Tcpdump

: Bearbeitet durch User
von mh (Gast)


Lesenswert?

Marco H. schrieb:
> Nö unter Win gibt es keine RAW sockets....

Das sagt aber nichsts darüber aus, ob es unter Windows socekt.socket, 
oder select.select gibt. Vielleicht solltet ihr mal die Doku lesen ...

von Rolf M. (rmagnus)


Lesenswert?

Marco H. schrieb:
> Nö unter Win gibt es keine RAW sockets....

Vielleicht sollte man das dann mal Microsoft mitteilen, denn die glauben 
anscheinend, dass es die dort gibt:
https://docs.microsoft.com/en-us/windows/win32/winsock/tcp-ip-raw-sockets-2

Marco H. schrieb:
> https://de.wikipedia.org/wiki/Pcap
> oder https://en.wikipedia.org/wiki/Tcpdump

Die braucht man, weil Windows keine Packet sockets unterstützt.
Unterschied: Klassische Raw-Sockets arbeiten auf IP-Ebene, 
Packet-Sockets auf Ethernet-Ebene.

: Bearbeitet durch User
von Marco H. (damarco)


Lesenswert?

Sniffer wird man so nicht hinbekommen, da sich der Socket nicht in den 
Entsprechenden Mode bringen lässt.

Man muss diese Bibliotheken dazu verwenden. Die aus Sicherheitsgründen 
nicht gerade ungefährlich sind..

von Sheeva P. (sheevaplug)


Lesenswert?

Marco H. schrieb:
> Sniffer wird man so nicht hinbekommen, da sich der Socket nicht in den
> Entsprechenden Mode bringen lässt.

Der Modus heißt "Promiscuous Mode" und ist, wie Du absolut richtig 
anmerkst, eine ziemlich gefährliche Angelegenheit. Deswegen geht das nur 
als privilegierter User ("root" unter UNIXoiden, "Administrator" unter 
Windows, ...).

Ich sehe auch nicht, wo der gepostete Code -- oder das Impacket-Dingsi 
-- das Gerät bzw. den Socket in diesen Modus schaltet. "Richtiges 
Sniffen" wie es etwa tcpdump(1) und Wireshark machen, ist daher nicht 
möglich.

Das Mitschneiden von Kommunikation zwischen zwei anderen Hosts ist so 
ebenfalls nur dann möglich, wenn die Geräte an einem Hub hängen. Ein Hub 
ist ein dummes Gerät und sendet alle empfangenen Pakete an alle 
angeschlossenen Geräte, während ein Switch -- wie sie heute üblich sind 
-- die Pakete nur an die richtigen MACs weitergibt. (Außer bei 
Multicast, aber das ist eine andere Geschichte.)

von Rolf M. (rmagnus)


Lesenswert?

Sheeva P. schrieb:
> Das Mitschneiden von Kommunikation zwischen zwei anderen Hosts ist so
> ebenfalls nur dann möglich, wenn die Geräte an einem Hub hängen.

Oder einem Managed Switch, bei dem ein Monitoring-Port aktiviert ist. Da 
wird der gesamte Traffic auch an diesen Port geschickt.
Und dann gibt's ja noch WLAN. Die Luft wirkt quasi auch als Hub.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.