在服务管理里罗列的服务,其实都是通过读取HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services下对应服务键值实现。不过在服务管理下无法删除服务,通地上述方法删除提供服务源文件后,由于加载服务键值还存在,下次启动就有可能出现一些错误提示。因此,通过注册表摘除服务才是治本的方法,下面以摘除灰使鸽子服务为例。
第一步:进入安全模式使用MSCONIFG,我们可以发现系统新增了一个名为Gray_Pigon_Server的服务。
第二步:打开注册表编辑器,依次展开HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services,找到名为Gray_Pigon_server的服务,然后查看右侧Imagepath(即启动服务的可执行程序路径)的值,并记下病毒文件路径c:\windows\game.exe。
第三步:删除上述服务键值,同时删除c:\windows\game.exe即可消除这个服务。虽然现在伪装服务的病毒变种很多,不过只要通过msconfig查看并在注册表中将服务键值删除,但可破坏病毒自启动并删除。
PS:有些通过系统的Svchost.exe加载的病毒服务并不能通过ImagePath值获取可执行文件路径。因为这些病毒本体是DLL文件,比如Portless BackDoor木马,可以通过Msconfig发现新的服务IPRIP,只有展开注册表的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\IPRIP\Parameters,才可以看到Servecedll值为c:\windows\system32\svchostdll.dll,也就是说此类服务是由svchost.exe调用的DLL文件加载的,具体路径是由注册表
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services相应服务Parameters键右侧的servecedll值来指定的。