获取访问特定IP的进程名称

获取访问特定IP的进程名称

我需要获取尝试访问外部 IP 的进程名称。这些进程可能是恶意软件或更新,它们的寿命很短,因此无法使用 netstat 或资源监视器。我尝试过 MS Message Analyzer,但结果很糟糕(列出的空闲进程最多)。还有其他工具或程序可以尝试吗?

我关注了文章配置消息分析器。

这是 netmon 的输出:

  • 所有交通
    • 我的流量
  • 不可用 (3020)
  • 不可用 (1788)
  • 任务主机.exe (704)
  • 不可用 (600) +
  • 不可用 (3048)
  • 不可用 (360)
    • IPv4(xx.xx.xx.xx - 23.0.174.16)ConvID = 162
    • IPv4(xx.xx.xx.xx - 23.0.174.8)ConvID = 166
    • IPv4(xx.xx.xx.xx - 23.0.174.19)ConvID = 171
    • IPv4(xx.xx.xx.xx - 23.0.174.27)ConvID = 175
    • IPv4(xx.xx.xx.xx - 23.0.174.35)ConvID = 181
    • IPv4(xx.xx.xx.xx - 5.22.191.202)ConvID = 195
    • IPv4(xx.xx.xx.xx - 5.22.191.201)ConvID = 199
    • IPv4(xx.xx.xx.xx - 5.22.191.233)ConvID = 203
    • IPv4(xx.xx.xx.xx - 5.22.191.227)ConvID = 207
    • IPv4(xx.xx.xx.xx - 5.22.191.217)ConvID = 211
    • IPv4(xx.xx.xx.xx - 193.77.14.137)ConvID = 232
    • IPv4(xx.xx.xx.xx - 193.77.14.171)ConvID = 236

我在资源监视器中没有看到这个。这些 IP 很奇怪,我在监视期间没有浏览服务器。

答案1

您可以使用进程监视器 (procmon) 来实现此目的。下载链接:https://technet.microsoft.com/en-gb/sysinternals/bb896645

打开后,设置一些仅用于网络的过滤器。如果您有多个网络接口,您可以使用这些:

Operation | is | TCP Send | then Include

Operation | is | UDP Send | then Include

Path | contains | 127.0.0.1 | then Exclude

(我假设您不关心访问环回地址)

如果您只有一个网络接口,或者只有一个您关心的网络接口,则可以将过滤器设置为:

Path | begins with | x.x.x.x | then include

其中 xxxx 是本地接口的 IP 地址。

您可以从这里进一步过滤它,方法是排除已知的良好进程,或排除 DNS 请求数据包/ack/等。您可以让它运行任意长的时间,但要注意内存使用情况。默认情况下,它将在循环中保留 1.99 亿个事件,您可能需要将其调高或调低。最后,您可以手动浏览列表,或转到“工具”->“网络摘要”并按单个 IP 地址进行过滤。

相关内容