Comment savoir quel ID de programme et de processus accède à une adresse IP donnée dans Windows?

19

Est-il possible de détecter quel programme accède à une adresse IP spécifique?

J'ai trouvé mon ordinateur en train de couler et je souhaite vérifier les adresses une par une.

Peut-il être possible de mettre en place un audit pour cela?

Dims
la source

Réponses:

31

Solution TCPView

TCPView de SystemInternals affiche « listes détaillées de tous les points de terminaison TCP et UDP sur votre système, y compris les adresses locales et distantes et de l' état des connexions TCP. »

TCPView est un programme Windows qui vous montrera des listes détaillées de tous les points de terminaison TCP et UDP sur votre système, y compris les adresses locales et distantes et l'état des connexions TCP. Sur Windows Server 2008, Vista et XP, TCPView signale également le nom du processus propriétaire du point de terminaison. TCPView fournit un sous-ensemble plus informatif et plus pratique du programme Netstat fourni avec Windows. Le téléchargement TCPView inclut Tcpvcon, une version en ligne de commande avec les mêmes fonctionnalités.

entrez la description de l'image ici

  • Assurez-vous que «Résoudre les adresses» n'est pas coché pour obtenir les adresses IP au lieu des noms de domaine.

    entrez la description de l'image ici

Vous pouvez trier les résultats par "Adresse distante" pour trouver l'adresse IP qui vous intéresse.

Exemple:

  • Cette capture d'écran montre la connexion de Firefox à stackoverflow.com.

    entrez la description de l'image ici


Solution CurrPorts

CurrPorts de Nirsoft offre des fonctionnalités très similaires.

CurrPorts est un logiciel de surveillance réseau qui affiche la liste de tous les ports TCP / IP et UDP actuellement ouverts sur votre ordinateur local. Pour chaque port de la liste, des informations sur le processus qui a ouvert le port sont également affichées, y compris le nom du processus, le chemin complet du processus, les informations de version du processus (nom du produit, description du fichier, etc.), l'heure à laquelle le processus a été créé et l'utilisateur qui l'a créé.

entrez la description de l'image ici

Exemple:

  • Cette capture d'écran montre la connexion de Firefox à stackoverflow.com.

    entrez la description de l'image ici


Et si je veux enregistrer les résultats?

TcpLogView également de Nirsoft fournit la journalisation des connexions TCP.

TcpLogView est un utilitaire simple qui surveille les connexions TCP ouvertes sur votre système et ajoute une nouvelle ligne de journal chaque fois qu'une connexion TCP est ouverte ou fermée. Pour chaque ligne de journal, les informations suivantes s'affichent: heure paire, type d'événement (ouverture, fermeture, écoute), adresse locale, adresse distante, nom d'hôte distant, port local, port distant, ID de processus, nom de processus et informations sur le pays de l'adresse IP distante (nécessite de télécharger l'IP dans le fichier pays séparément.)

entrez la description de l'image ici


Avertissement

Je ne suis en aucun cas affilié à SystemInternals (une partie de Microsoft) ou à Nirsoft, je ne suis qu'un utilisateur final de leurs utilitaires (gratuits).

DavidPostill
la source
Je crains qu'il soit impossible d'attraper quelques paquets de cette façon, car il disparaît rapidement. J'ai besoin de me connecter.
Dims
Imaginez que je souhaite attraper qui envoie des paquets 88.221.132.207. Comment voir ça? Cette application n'a même aucune capacité de recherche ou de filtrage. C'est-à-dire que je serai même incapable de l'attraper par l'œil s'il disparaît rapidement.
Dims
1
Ensuite, vous avez probablement besoin d'un renifleur de paquets comme Wireshark
DavidPostill
1
Wiresharkn'affiche pas l'ID de processus. J'ai besoin de savoir (1) processus (2) IP; both
Dims
6
@Dims Utilisez TCPLogView également de Nirsoft. Réponse mise à jour
DavidPostill
8

Sous Windows 7/8 * / 10, vous pouvez utiliser le Moniteur de ressources -> onglet Réseau.

La façon la plus simple d'ouvrir le moniteur de ressources est:

  • Ouvrez le Gestionnaire des tâches (barre des tâches de droite -> Démarrer le Gestionnaire des tâches)
  • Cliquez sur l'onglet Performances
  • Cliquez sur le bouton Moniteur de ressources

Moniteur de ressources -> Réseau

* = non confirmé

Salman A
la source
2

Vous pouvez y parvenir sans télécharger également des outils supplémentaires à partir d'un shell de commandes d'administration.

Exécutez un shell de commande d'administration:

  • Appuyez sur le bouton de démarrage
  • Tapez "cmd"
  • Appuyez sur Ctrl + Maj + Entrée

Entrez la commande: netstat -tabn

Les commutateurs signifient ce qui suit:

  • -t Affiche l'état actuel de déchargement de la connexion.
    • c'est à dire. ESTABLISHED, LISTENING, TIME_WAIT
  • -a Affiche toutes les connexions et les ports d'écoute.
  • -b Affiche l'exécutable impliqué dans la création de chaque connexion ou port d'écoute. Dans certains cas, les exécutables bien connus hébergent plusieurs composants indépendants et, dans ces cas, la séquence des composants impliqués dans la création de la connexion ou du port d'écoute s'affiche. Dans ce cas, l'exécutable ame est en [] en bas, en haut se trouve le composant qu'il a appelé, et ainsi de suite jusqu'à ce que TCP / IP soit atteint. Notez que cette option peut prendre du temps et échouera sauf si vous disposez des autorisations suffisantes.
  • -n Affiche les adresses et les numéros de port sous forme numérique.

Certes, cela n'est pas aussi sophistiqué que le résultat obtenu par les nombreuses options de l'interface graphique, mais il est présent et disponible sans télécharger d'outils supplémentaires. Il fonctionne également sur Linux avec des commutateurs légèrement différents.

antik
la source
1

Comme l'a dit antik, vous pouvez utiliser netstat à partir d'une invite de commande d'administration. Je suggérerais cependant que vous utilisiez oau lieu de b, de cette façon, la sortie sera sur une ligne pour une entrée et vous pouvez la filtrer davantage avec find. Vous n'aurez pas le nom du processus, mais l'ID du processus:

Par exemple

netstat -aon | find ":80"

affiche toutes les connexions utilisant le port 80 (localement ou à distance)

Vous pouvez ensuite vérifier ce processus dans le Gestionnaire des tâches ou effectuer un autre filtre dans l'invite de commandes, en utilisant cette fois la liste des tâches:

tasklist | find "1100"

ou

tasklist /FI "PID eq 1100"
Razvan Popa
la source