Como eu analisei o problema de alta utilização da CPU svchost [closed]

8

Minha máquina foi atacada por um trojan que se manifestou como um serviço no processo netsvcs svchost. Esse processo pode ser identificado usando o Process Explorer como 'svchost -k netsvcs'.

Os sintomas que eu tinha indicando que minha máquina havia sido infectada eram:

    1. Usando ethereal eu pude ver o tráfego HTTP non-stop da minha máquina para sites diferentes, como ESPN e streamers de música online.
    2. Normalmente, dentro de 10 a 15 minutos, o Dr. Watson cria uma caixa de diálogo indicando que o Processo Genérico do Host falhou.
    3. O Process Explorer indicou que o processo 'svchost -k netsvcs' estava ocupando 100% da CPU.
    4. Os ficheiros em C: \ Documents and Settings \ NetworkService \ Definições Locais \ Temporary Internet Files \ Content.IE5 foram bloqueados pelo processo 'svchost -k netsvcs'.

Aqui está o que eu fiz para descobrir exatamente qual sevice foi o culpado.

A lista de serviços que o Windows executará na inicialização do contêiner netsvcs svchost pode ser obtida neste local de registro: Http://www.windowservice.microsoft.com/windowsservices/services/services/services/services/services/services/services/services/services/services Cada string no valor MULTI_REG_SZ é o nome de um serviço localizado em: HKLM \ SYSTEM \ CurrentControlSet \ Services .

Para cada serviço listado em netsvcs, criei uma entrada distinta no SvcHost e, em seguida, atualizei o ImagePath do serviço para indicar em qual servidor svchost o serviço deve ser executado agora.

Como exemplo - para executar o serviço AppMgmt em seu próprio svchost, faríamos o seguinte:

    1. Sob SvcHost, crie um novo valor Multi-String chamado 'appmgmt' com o valor 'AppMgmt'.
    2. Em SvcHost, crie uma nova chave denominada 'appmgmt' com valores idênticos aos de 'netsvcs' (normalmente REG_DWORD: AuthenticationCapabilities = 12320 e REG_DWORD: CoInitializeSecurityParam = 1).
    3. Em CurrentControl \ Services \ AppMgmt, modifique o ImagePath para% SystemRoot% \ system32 \ svchost.exe -k appmgmt.

Eu passei pelo procedimento acima em todos os serviços de trinta e poucos anos executados sob netsvcs. Isso me permitiu identificar exatamente qual serviço era responsável pelos sintomas listados acima. Conhecendo o serviço, era fácil usar o Process Explorer para determinar quais arquivos o serviço bloqueava e carregava e quais entradas de registro ele usava. Tendo todos esses dados, foi um simples passo para excluir o serviço do meu computador.

Espero que este post seja útil para alguém afetado por um processo svchost infectado.

    
por user64842 25.01.2011 / 23:01

0 respostas