Frage

Gibt es eine Möglichkeit zum Filter / folgt einem TCP / SSL basierend auf einem bestimmten Prozess-ID-Stream mit Wireshark ?

War es hilfreich?

Lösung

Ich sehe nicht, wie. Die PID ist nicht auf den Draht machen (im Allgemeinen) sowie Wireshark können Sie sehen, was auf dem Draht - möglicherweise alle Maschinen, die über den Draht kommunizieren. Prozess-IDs sind nicht einzigartig für verschiedene Maschinen, sowieso.

Andere Tipps

Für den Fall, Sie suchen eine alternative Art und Weise und der Umgebung, die Sie verwenden, ist Windows, Microsoft Network Monitor 3.3 ist eine gute Wahl. Es hat die Prozessnamen-Spalte. Sie fügen es leicht zu einem Filter über das Kontextmenü und die Filter anwenden .. Wie üblich die GUI ist sehr intuitiv ...

Sie können die Portnummern von wireshark bis zu Portnummern von übereinstimmen, sagen: netstat die wird Ihnen die PID eines Prozesses Zuhörens an diesem Port.

Verwenden Sie Microsoft Message Analyzer v1.4

Navigieren Sie zu ProcessId aus der Feldauswahl.

Etw
-> EtwProviderMsg
--> EventRecord
---> Header
----> ProcessId

Rechts klicken und Fügen Sie als Spalte

Unter Windows gibt es ein experimentelles Build, der dies tut, wie auf der Mailing-Liste beschrieben, Filter nach lokalen Prozessnamen

Dies ist eine wichtige Sache der Lage sein, für die Überwachung zu tun, wo bestimmte Prozesse versuchen, eine Verbindung herstellen, und es scheint, gibt es keine bequeme Möglichkeit, dies auf Linux zu tun. mehrere Abhilfen sind jedoch möglich, und so halte ich es ist erwähnenswert, sie.

Es gibt ein Programm namens nonet , die erlaubt ein Programm ohne Internetzugang ausgeführt wird (ich habe die meisten Programmstarter auf meinem System mit ihm einrichten). Es verwendet SetGuid einen Prozess in der Gruppe Nonett und setzt eine iptables Regel zu verweigern, alle Verbindungen von diesen laufen Gruppe.

Update: jetzt ich ein noch einfacheres System verwenden, können Sie leicht eine lesbare iptables-Konfiguration mit ferm, und verwenden Sie nur das Programm sg ein Programm mit einer bestimmten Gruppe zu laufen. Iptables alows Sie auch Verkehr umleiten, so kann man sogar Route, die an eine separate Schnittstelle oder einen lokalen Proxy auf einem Port WHITH Sie Filter in wireshark oder LOG die Pakete direkt von iptables, wenn Sie, während Sie alle Internet deaktivieren möchten nicht erlaubt Verkehr sind Check-out.

Es ist nicht sehr kompliziert, es anzupassen ein Programm in einer Gruppe zu laufen und all anderen Verkehr mit iptables für die Ausführung Lebensdauer geschnitten und dann könnte man Verkehr aus diesem Prozess nur erfassen.

Wenn ich jemals Runde kommen, es zu schreiben, werde ich einen Link hier.

Auf einer anderen Anmerkung, können Sie immer einen Prozess in einer virtuellen Maschine laufen und schnüffeln die richtige Schnittstelle, um die Verbindungen zu isolieren, es macht, aber das wäre schon eine schlechtere Lösung ...

sein

Wenn Sie eine Anwendung folgen wollen, dass noch immer dann gestartet werden, es ist sicherlich möglich:

  1. Installieren Docker (siehe https: //docs.docker. com / Motor / Installation / linux / docker-ce / ubuntu / )
  2. Öffnen Sie ein Terminal und führen Sie einen kleinen Behälter: docker run -t -i ubuntu /bin/bash (ändern „ubuntu“, um Ihre Lieblings-Distro, dies muss nicht der gleiche wie in der realen System sein)
  3. Installieren Sie Ihre Anwendung in dem Behälter die gleiche Art und Weise mit, dass Sie es in einem realen System installieren würde.
  4. Start wireshark in Ihrem realen System, gehen Sie zu Capture> Optionen. In dem Fenster, das Sie öffnen werden alle Schnittstellen sehen. Statt der Wahl any, wlan0, eth0, ... wählen Sie die neue virtuelle Schnittstelle docker0 statt.
  5. Start Capturing
  6. Starten Sie Ihre Anwendung im Container

Sie könnten einige Zweifel über die Software in einem Container ausgeführt wird, so sind hier die Antworten auf die Fragen, die Sie wahrscheinlich fragen wollen:

  • Wird meine Bewerbung Arbeit in einem Container? Mit ziemlicher Sicherheit ja, aber Sie könnten ein wenig über Docker lernen müssen, um es zu bekommen arbeiten
  • Wird nicht meine Anwendung läuft langsam? Unbedeutend. Wenn Ihr Programm ist etwas, das für eine Woche schwere Berechnungen läuft, dann könnte es dauern, jetzt eine Woche und 3 Sekunden
  • Was passiert, wenn meine Software oder etwas anderen Brüche im Container? Das ist die schöne an Containern. Was auch immer im Innern ausgeführt wird, kann nur den aktuellen Behälter bricht und kann dem Rest des Systems nicht schaden.

In einigen Fällen können Sie nicht durch Prozess-ID filtern. Zum Beispiel in meinem Fall musste ich sniff Verkehr von einem Prozess. Aber ich fand in seinen Konfigurationszielrechner IP-Adresse, hinzugefügt Filter ip.dst==someip und voila. Es wird nicht funktionieren in jedem Fall aber für einige ist es nützlich.

Hier die Portnummer netstat :

netstat -b

Und dann den Wireshark-Filter verwenden:

tcp.port == portnumber

Sie können prüfen, für Portnummern mit diesem Befehl Beispielen für wireshark: -

tcp.port == 80

tcp.port == 14220

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top