Esses dias uma cliente me falou que estava com um vírus. Me disse que aquela era a terceira vez que tinha usado o computador, desde que ele voltou da assistência técnica, mas mesmo assim o sistema estava infectado. Segundo a própria cliente me disse na primeira vez o técnico estava com pressa e deixou o computador baixando o AVAST. Na segunda vez nem foi ela, e sim a irmã que tentou usar o seu computador, mas sem sucesso. Disse ela que a irmã tentou abrir o Orkut, o MSN, qualquer página da Internet e nada.
Quando cheguei na casa dessa cliente, o computador estava fazendo a varredura de boot do AVAST e essa varredura não só tinha encontrado um Trojan (encontrou dois ou três tipos diferentes, mas só me lembro de um chamado Kavos) como estava pedindo confirmação sobre o que deveria ser feito com o arquivo infectado. Eu escolhi a opção eliminar todos e dei ENTER. O resultado foi que o antivírus dessa cliente eliminou 52 arquivos.
Depois de terminada a varredura, eu resolvi passar mais uma vez o antivírus. Dessa feita o antivírus não só encontrou um vírus no sistema, como descobriu que esse vírus estava associado a um arquivo de extensão DLL que, para quem não sabe, é uma extensão comum às bibliotecas. O nome do arquivo era VBSFDE0.DLL e, como ele estava carregado na memória, o vírus também estava carregado na memória. Por isso que, toda vez que o AVAST percebia isso, ele também pedia para que uma varredura de boot fosse feita.
Eu reiniciava o computador, o AVAST realizava a sua varredura de boot, a varredura terminava, o sistema iniciava, eu executava outra varredura do AVAST e pimba! lá estava o vírus de novo. Aí começava o círculo vicioso: o arquivo infectado era uma DLL, essa DLL estava carregada na memória, e então o AVAST recomendava outra varredura de boot. Por causa disso eu desconfiei que o vírus estava sendo carregado durante o processo de inicialização. De forma que eu pensei que poderia resolver o problema editando as entradas do registro que são responsáveis por isso.Depois de fazer outra varredura e mandar eliminar a DLL infectada eu cliquei em Iniciar/Executar digitei regedit e cliquei em OK. E nada do REGEDIT aparecer.
Pela mesma razão que o AVAST às vezes recomenda que a varredura seja feita durante o processo de boot, eu resolvi entrar no Modo de Segurança do Windows. Isso por que eu desconfiava que era o próprio vírus que estava me impedindo de ter acesso ao Editor de Registro. Portanto, se eu pudesse ter acesso ao básico do sistema, impedindo assim que boa parte do número de programas e bibliotecas do sistema fossem carregados, talvez eu poderia ter acesso ao sistema sem necessariamente contar com o vírus. De forma que eu poderia abrir o Editor de Registro livremente.
Não deu outra: Foi só eu carregar o Modo de Segurança que eu passei a ter acesso ao registro. Aí surgiu outro problema: Eu não me lembrava da entrada do registro responsável pela inicialização de programas. Para descobrir isso eu resolvi usar outro artifício: entrei no MSCONFIG e dentro dele abri a aba Inicializar. Como eu sabia que dentro dessa aba apareceriam programas que são carregados durante a inicialização, eu resolvi usar o nome de um desses programas para procurar a entrada do registro. Feito isso, encontrada a chave do registro, eu removi justamente as duas entradas que pareciam suspeitas. Eram duas chaves que executavam programas de extensão .exe localizados em C:\Windows\System32. Se não me engano uma se chamava kammos.exe e a outra vammos.exe.
Removidas as chaves, eu resolvi reiniciar o sistema. Reiniciado o sistema a primeira coisa que eu fiz foi tentar abrir o Editor de Registros. Abri com sucesso. A segunda coisa que eu fiz foi iniciar uma varredura do AVAST. Depois de uns 30 minutos, a varredura não encontrou nenhum vírus. Chamei a cliente para ver e fiz outra varredura para me garantir. A outra varredura foi realizada com sucesso.
Agora vou revelar a vocês alguns detalhes que eu omiti de propósito, e que também só fui entender melhor depois, fazendo uma análise fria do caso. Depois da primeira varredura de boot o AVAST me revelou que eu estava lidando com um rootkit. Eu achei isso um tanto estranho por que, apesar de não me lembrar em detalhes, eu lembrava que rootkits eram ferramentas que hackers usavam para comprometer sistemas recém invadidos. Uma invasão significa basicamente um acesso não autorizado de super usuário agora, para garantir um acesso futuro, que suas trilhas não pudessem ser recuperadas (já que todo acesso é registrado no sistema) e que programas maliciosos fossem executados sem que os administradores desse sistema percebessem, os hackers utilizavam rootkits.
No caso do vírus de Windows, e essa informação eu só fui descobrir graças ao trabalho do Linha Defensiva, o rootkit era utilizado para impedir que os arquivos do trojan fossem exibidos pelo Windows Explorer, de impedir que os processos do trojan fossem exibidos pelo Gerenciador de Tarefas e para impedir que o Editor de Registros fosse executado. E isso foi exatamente o que aconteceu. Eu realmente procurei os dois arquivos do registro na pasta indicada e não encontrei, mesmo no Modo de Segurança. O que eu fiz, entretanto, serviu para interromper o processo do rootkit.