电脑里出现了好几个svchost.exe进程,且一直在走流量是怎么回事?
发布网友
发布时间:2022-04-30 14:24
我来回答
共1个回答
热心网友
时间:2023-10-05 13:45
1】服务对应的二进制文件可以分作可执行文件和DLL 动态链接库文件两类。对于可执行文件来说,其本身就是服务的宿主程序,而对于DLL
动态链接库来说,需要一个宿主程序来引导服务的启动。
【2】Svchost.exe,是大多数Windows
服务的宿主程序。Svchost.exe程序就是一个用于加载服务对应的二进制文件类型为DLL 的宿主程序。
【3】Svchost.exe
一般位于%systemroot%\system32目录下面,另外,如果启用了DllCache功能,还可能存在
于%systemroot%\system32\dllcache 目录下。另外,如果WindowsService Pack不是使用集成安装的,
那么还可能存在于%systemroot%\ServicePack 目录下。除此之外,svchost.exe 不应该存在于其他的目录下
面。如果存在,那么这个svchost.exe可能不是系统自带的而是计算机病毒等一些恶意软件生成的,请小心检 查。
【4】Svchost.exe
作为服务的宿主程序,在启动的时候,通过以下方法来启动服务:系统启动的时候,系统读取注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\SvcHost
下的键值。
在这个分支下,有很多键值类型为REG_MULTI_SZ的键值,每一个键值代表一组服务。Svchost.exe
的每个实
例将执行一个键值类型为REG_MULTI_SZ 的键值,举例来说,当svchost.exe 开始读取netsvcs
的时候,系统将创建一个svchost.exe 的实例(在任务管理器里面呈现为进程)来处理netsvcs 键值的数据。所有在netsvcs
里面描述的服务将运行于一个svchost.exe 进程里面,也就是说,一个svchost.exe 将处理所有netsvcs 里面记
录的服务。这就是所谓的宿主的概念。不过有一点需要注意,如果有任何一个服务发生问题,可能导致宿主程序 svchost.exe 崩溃,甚至导致Windows
崩溃。
【5】在不同的系统中,svchost.exe 的实例数目是不相同的。这是因为微软将不同的服务归结到不同的svchost.exe
实例,在Windows Server 2003 下,RpcSs服务就单独的由一个svchost.exe
负责,这是为了保证不会由于其他服务的错误而导致整个svchost.exe 进程错误。
【6】我们可以这样理解:如果有一个svchost.exe
作为2个服务的宿主,其中一个是系统重要的服务A,如果A停止,则整个系统就崩溃,而另外一个服务是B,B不是一个重要的服务,停止B
不会引起整个系统的崩溃。如果某一天服务B 发生异常,导致B 的宿主程序svchost.exe 崩溃,那么也会导致服务A
崩溃,从而导致系统崩漏。
【7】一个svchost.exe作为几个服务的宿主是很重要的,也不要对比自己的系统里面的svchost.exe
实例数量为什么要比别人的多,影响svchost.exe 实例数量完全决定于你开启的服务的数量。
【8】要确定一个svchost.exe
作为哪些服务的宿主,可以在命令行方式下运行“tasklist
/svc”查看。
【9】使用辅助工具判断svchost.exe进程是否为伪造的。
【10】使用辅助工具判断svchost.exe中的服务是否为恶意的