Wie erfasse ich alle eingehenden Pakete an die Netzwerkkarte, auch wenn diese Pakete nicht mir gehören?

Wie erfasse ich alle eingehenden Pakete an die Netzwerkkarte, auch wenn diese Pakete nicht mir gehören?

Soweit ich weiß, empfängt die Netzwerkkarte alle Pakete vom Kabel in einem lokalen Netzwerk, lehnt jedoch diejenigen Pakete ab, deren Zieladresse nicht mit der IP-Adresse übereinstimmt.

Ich möchte eine Anwendung entwickeln, die die Internetnutzung von Benutzern überwacht. Jeder Benutzer hat eine feste IP-Adresse.

Ich und einige andere Menschen sind verbunden mit einemDES-108 8-Port Fast Ethernet Unmanaged Desktop Switch

Wie bereits gesagt, möchte ich den gesamten Datenverkehr aller Benutzer erfassen, nicht nur die Pakete, die mir gehören.

Wie zwinge ich meine Netzwerkkarte oder andere Komponenten, alle Pakete zu empfangen?

Antwort1

Soweit ich weiß, empfängt die Netzwerkkarte alle Pakete vom Kabel in einem lokalen Netzwerk, lehnt jedoch diejenigen Pakete ab, deren Zieladresse nicht mit der IP-Adresse übereinstimmt.

Korrektur: Es werden die Pakete abgelehnt, deren ZielMACAdresse ist nicht gleich ihrerMAC-Adresse(oder Multicast oder beliebige zusätzliche Adressen in seinem Filter.

Paketerfassungsprogramme können das Netzwerkgerät ganz einfach in den Promiscuous-Modus versetzen, was bedeutet, dass die obige Prüfung umgangen wird und das Gerät alles akzeptiert, was es empfängt. Tatsächlich ist dies normalerweise die Standardeinstellung: Bei tcpdumpmüssen Sie die -pOption angeben, umnichtTu es.

Die wichtigere Frage ist, ob die Pakete, an denen Sie interessiert sind, überhaupt über die Leitung zu Ihrem Sniffing-Port übertragen werden. Da Sie einen nicht verwalteten Ethernet-Switch verwenden, ist dies mit ziemlicher Sicherheit nicht der Fall. Der Switch entscheidet, Pakete, die nicht zu Ihnen gehören, von Ihrem Port zu entfernen, bevor Ihr Netzwerkgerät sie sehen kann.

Dazu müssen Sie eine Verbindung zu einem speziell konfigurierten Spiegelungs- oder Überwachungsport auf einem verwalteten Ethernet-Switch herstellen.

Antwort2

In den Anfangsstadien von Ethernet-Hubs (nicht Switches) sind gesendete Pakete für alle Hosts im Subnetz verfügbar, Hosts, die nicht die beabsichtigten Empfänger sind, sollten sie jedoch ignorieren.

Offensichtlich dauerte es nicht lange, bis die Subnetze gesättigt waren, und so wurde die Switch-Technologie entwickelt, um die Probleme zu lösen. Eine der Maßnahmen, die dabei ergriffen wurden, bestand darin, den Netzwerk-Switch so zu konfigurieren, dass er nur Pakete, die für diesen Host bestimmt waren, an diesen Port weiterleitete (plus Broadcast-Verkehr).

Dies erschwert die Netzwerküberwachung/das Sniffing, da Sie nur Pakete sniffen können, die für Ihren Host bestimmt sind. Aus Sicherheitsgründen wurde dies als eine gute Sache angesehen, aus Sicht der Netzwerküberwachung jedoch als nicht so gut. Damit die Netzwerküberwachung funktioniert, implementieren Anbieter eine Funktion namens Port Mirroring. Diese muss auf dem Netzwerk-Switch konfiguriert werden, und der folgende Link sollte Sie in die richtige Richtung für D-Link-Produkte führen. Sie finden sie irgendwo in der Verwaltungssoftware Ihres Switches oder in der Webadministratoroberfläche. Wenn Sie diese Funktionen nicht finden, ist die Funktionalität möglicherweise auf diesem bestimmten Gerät nicht verfügbar.

http://www.dlink.com/uk/en/support/faq/switches/layer-2-gigabit/dgs-series/es_dgs_1210_como_monitorear_trafico_de_un_puerto_port_mirroring

Antwort3

Zuerst müssen Sie Ihre Netzwerkkarte in den Promiscuous-Modus schalten. Nehmen wir an, Ihre Netzwerkkarte ist eth0.

root@linux#ifconfig eth0 promesc

Wenn Sie sich in einem Switch-Netzwerk befinden, wird Ihr Sniffing auf die Kollisionsdomäne beschränkt, die mit Ihrem Switch-Port verbunden ist. Sie können macofdie Weiterleitungstabelle des Switches überlasten.

root@linux#macof -i eth0

Anschließend können Sie wiresharkoder verwenden tcpdump, um den gesamten Datenverkehr zu erfassen.

root@linux#tcpdump -i eth0 -w outputfile

Wenn Sie sich nicht in einem geschalteten Netzwerk befinden, aktivieren Sie einfach den Promiscuous-Modus und verwenden Sie tcpdump.

Antwort4

Sie erfinden das Rad neu.

Angenommen, Sie haben ein einfaches Netzwerk mit Clients, die mit Switches verbunden sind, und einem Standard-Gateway zum Internet, dann müssen Sie nur dieses Standard-Gateway-Gerät überwachen. Dies ist ein Engpass, der den gesamten Datenverkehr zwischen einem LAN-Client und dem Internet anzeigt.

Ich gehe davon aus, dass der Datenverkehr zwischen LAN-Clients nicht von Interesse ist, da der lokale Datenverkehr das Standard-Gateway nicht berührt, wenn sich alle IP-Adressen im selben IP-Subnetz befinden.

Wenn Sie wirklich den gesamten Datenverkehr sehen möchten, muss sich jeder Benutzer in seinem eigenen IP-Netzwerk befinden und der Datenverkehr zu den anderen Netzwerken muss über das Standard-Gateway erfolgen. Sie könnten jeder Person eine /28 zuweisen und sie kann 14 IPs für sich selbst haben.

Ihr durchschnittlicher Heimrouter wird damit nicht viel zu tun haben, Sie müssen sich eine dedizierte Firewall-Distribution zulegen. Persönlich würde ich pfsense verwenden, aber es gibt viele Optionen.

verwandte Informationen