我的防火墙显示我的 Windows 7 PC 正在向外连接到国外的几个可疑 IP 地址。我已运行了 5 次不同的病毒/恶意软件扫描,但都没有问题。
我如何确定哪些进程正在连接到这些 IP?连接不是恒定的,因此我认为我需要记录此类活动并在以后进行检查。
答案1
Microsoft SysInternals 网络实用程序TCP查看器可能对此有用:
https://technet.microsoft.com/en-us/sysinternals/tcpview
TCPView 是一个 Windows 程序,它将显示系统上所有 TCP 和 UDP 端点的详细列表,包括本地和远程地址以及 TCP 连接的状态。
答案2
我如何确定哪些进程正在连接到这些 IP?
资源监视器对此很有用,但只能用于实时监视连接。
连接不是恒定的,所以我认为我需要记录这种活动并在稍后进行检查。
您可以制作如下的 .bat 脚本:
:top
date /t
time /t
netstat /an
timeout 60
goto top
然后运行它,输出到一些日志文件:
batfilename.bat >> networkConnections.log
但是输出可能很难解析。
答案3
使用网络监视器。它将捕获所有网络活动以及所涉及的进程。从 GUI 中没有将捕获记录到文件的选项,只能让它在后台运行或使用命令行工具。
以管理员身份启动cmd.exe
并输入:
nmcap.exe /network * /capture /file c:\netmon.chn:100MB
此命令将所有内容捕获到一个文件中(最大大小为 100 MB),捕获完成后,单击Ctrl-C
停止捕获过程并使用 GUI 应用程序打开文件以分析其内容。注意:当达到最大文件大小时,它将创建一个带有增量编号的新日志文件。
作为备选使用Wireshark,一个网络协议分析器。它将捕获所有网络流量并记录到日志文件中。但是,它不会记录所涉及的进程,因为它只在网络层上运行,但它会记录所涉及的端口。
去捕获 > 选项 > 输出并检查捕获到永久文件(可选择保存 cap 文件的位置)并单击开始。然后它将开始将所有网络活动捕获到文件中并在屏幕上显示实时视图。在顶部输入以下过滤器:
ip.src == 1.2.3.4
如果某个进程正在监听静态端口,则可以使用 来识别它netstat
。
以管理员身份启动cmd.exe
并输入:
netstat -anob
它给出了所有当前正在监听的进程和活动网络连接的列表:
Active Connections
Proto Local Address Foreign Address State PID
TCP 0.0.0.0:22 0.0.0.0:0 LISTENING 2784
[sshd.exe]
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 968
RpcSs
...