有没有办法确定哪个服务(在 svchost.exe 中)执行传出连接?

有没有办法确定哪个服务(在 svchost.exe 中)执行传出连接?

我正在使用更严格的策略重新配置我的防火墙,并且我想确定一些传出的连接的来源(和/或目的地)。

我遇到一个问题,因为它们来自 svchost.exe 并转到 Web 内容/应用程序交付提供商 - 或类似内容:

5 IP in range: 82.96.58.0 - 82.96.58.255      --> Akamai Technologies         akamaitechnologies.com
3 IP in range: 93.150.110.0 - 93.158.111.255  --> Akamai Technologies         akamaitechnologies.com
2 IP in range: 87.248.194.0 - 87.248.223.255  --> LLNW Europe 2               llnw.net
205.234.175.175                               --> CacheNetworks, Inc.         cachefly.net
188.121.36.239                                --> Go Daddy Netherlands B.V.   secureserver.net

那么,是否有可能知道特定连接与哪个服务相关?或者您对适用于这些服务的规则有何建议?

(Comodo 防火墙和 Windows 7)

更新:

netstat -ano&tasklist /svc帮了我一点忙,但是一个 svchost.exe 中有很多服务,所以这仍然是一个问题。此外,“tasklist /svc”返回的服务名称不易读。

(所有连接都是 HTTP(端口 80),但我认为这并不相关)

答案1

SysInternals 进程浏览器可以为您做到这一点。

svchost.exe打开您要分析的实例的进程属性。单击TCP/IP选项卡。双击您想要发现的连接以调出该连接的堆栈跟踪。您应该能够将堆栈追溯到实现该服务的 DLL。以下是帮助文件中关于工艺特性

TCP/IP:

该进程拥有的任何活动的 TCP 和 UDP 端点都显示在此页面上。

在 Windows XP SP2 及更高版本中,此页面包含一个堆栈按钮,可打开一个对话框,其中显示打开所选端点时打开该端点的线程的堆栈。这对于识别系统进程和 Svchost 进程中端点的用途很有用,因为堆栈将包含负责该端点的驱动程序或服务的名称

更多配置符号

配置符号:在 Windows NT 及更高版本上,如果您希望 Process Explorer 解析进程属性对话框和线程堆栈窗口的线程选项卡中的线程起始地址,则请先从 Microsoft 网站下载 Windows 调试工具包并将其安装在其默认目录中,然后配置符号。打开“配置符号”对话框并指定调试工具目录中 dbghelp.dll 的路径,然后让符号引擎根据需要从 Microsoft 下载符号到磁盘上的目录中,方法是输入符号路径的符号服务器字符串。例如,要将符号下载到 c:\symbols 目录,请输入以下字符串:

服务端c:\符号http://msdl.microsoft.com/download/symbols

笔记:您可能需要以管理员身份运行 Process Explorer 才能看到线程的堆栈。

答案2

我已经找到了一种方法服务器故障答案(关于服务和内存使用情况)我可以使用它来单独分析服务的网络使用情况(使用任何网络工具)

彼得·莫滕森:

将每个服务拆分为在其自己的 SVCHOST.EXE 进程中运行,并且消耗 CPU 周期的服务将在任务管理器或进程资源管理器中轻松可见(“=” 后的空格是必需的):

SC Config Servicename Type= own

在命令行窗口中执行此操作或将其放入 BAT 脚本中。需要管理员权限,并且需要重新启动计算机才能生效。

可以通过以下方式恢复原始状态:

SC Config Servicename Type= share

答案3

我知道这可能已经过时了,但这个页面在“svchost 连接”搜索中仍然排名很高,所以我将在这里输入。有一个名为 Svchost Process Analyzer 的工具,它可能会有所帮助: https://www.neuber.com/free/svchost-analyzer/index.html

答案4

尝试从命令行使用tasklist /svcnetstat或。netstat -an

这将向您显示正在使用 svchost.exe 的程序及其端口。使用端口号,您可能能够查找通常使用该号码的协议。请参阅TCP 和 UDP 端口号列表

相关内容