Tecnologia anti-rootkits e de neutralização
O rootkit é um programa malicioso que aplica diferentes técnicas para ocultar códigos e atividades maliciosas de detecções e age contra as tentativas de neutralização de antivírus. A tecnologia anti-rootkits, que faz parte da proteção da próxima geração em vários níveis da Kaspersky, detecta infecções ativas causadas por esses programas de rootkit e neutraliza os sistemas contra esse tipo de infecção.
Na maioria dos casos, um rootkit inclui um driver (ou uma cadeia de drivers), funciona no modo kernel e executa algumas ou todas estas funcionalidades:
- Ocultação de arquivos no armazenamento (HDD), valores e chaves do Registro do Windows, processos no sistema, módulos carregados, regiões de memória (no caso de malware sem arquivo), atividades de rede, setores do disco e outros objetos e artefatos
- Medidas contra modificações e/ou eliminação do rootkit pelo antivírus em caso de detecção, incluindo a restauração de rootkits alterados
- Fornecimento de acesso ao kernel do sistema operacional para códigos/aplicativos maliciosos (visando o término de processos do antivírus), inserção de códigos maliciosos em processos legítimos, interceptação de tráfego de rede (detecção), interceptação de teclas pressionadas (keylogging), etc.
Os criadores de malware querem que seus códigos maliciosos atuem durante longos períodos em um determinado host, mesmo no caso de um software antivírus ser executado. Para isso, eles precisam utilizar técnicas diferentes para prejudicar a detecção e a neutralização da infecção ativa. Eles podem utilizar métodos documentados e não documentados do sistema operacional. Sabe-se que os rootkits utilizam diferentes abordagens de interceptação no modo de usuário e no modo kernel, manipulações com objetos (DKOM), técnicas para contornar drivers de filtro e funções de chamada de retorno, etc. Para manter a persistência no sistema da vítima, os rootkits precisam começar a execução nas primeiras fases da inicialização do sistema operacional, de modo que infectem os setores de inicialização, como o Master Boot Record (MBR) e o Volume Boot Record (VBR). Um rootkit com essa funcionalidade é chamado de bootkit.
Tecnologias anti-rootkit da Kaspersky
- Busca de infecção ativa na memória do sistema operacional
- Verificação de todos os locais possíveis usados para execução automática
- Neutralização em caso de detecção de infecção ativa, recuperação nas primeiras fases da inicialização do sistema operacional
- Neutralização de infecções ativas durante a instalação do produto no sistema infectado
Esta tecnologia de proteção complexa com vários módulos implementa duas abordagens de detecção e neutralização da infecção ativa: a exata e a genérica. Os produtos da Kaspersky utilizam essas duas abordagens.
Abordagem exata: os procedimentos de detecção e neutralização são direcionados para técnicas de rootkit específicas, como a ocultação de presença ou o combate à neutralização do antivírus. Essa abordagem possibilita a proteção contra um rootkit em um curto período a fim de cobrir surtos momentâneos, poupando mais tempo para o desenvolvimento de uma abordagem mais genérica.
Abordagem genérica: a tecnologia anti-rootkit verifica os processos ativos, os módulos do sistema, a memória e objetos de execução automática e oferece acesso ao código de malware para outros componentes antivírus, como um emulador, mecanismo antivírus, heurística estática, heurística baseada em comportamento alimentada pelo modelo de Machine Learning, etc. No caso de ativação por algum dos componentes listados, a tecnologia anti-rootkit desinfecta o sistema.
Componentes da tecnologia anti-rootkit
- Protetor do instalador: combate a infecção ativa durante a instalação do produto de segurança no sistema da vítima
- Acesso ao disco de nível baixo, acesso ao Registro de nível baixo, contenção: oferece acesso de nível inferior ao disco rígido e ao Registro do Windows, contornando diferentes métodos de interceptação de acesso. Contém implementação de técnicas para contenção de infecção ativa durante um período de neutralização
- Limpador da fase de inicialização: neutraliza as primeiras fases da inicialização do sistema operacional
- Verificador da memória do sistema: um módulo para pesquisar e neutralizar rootkits na memória do sistema
- Analisador do sistema de arquivos, analisador do Registro: analisa diversos formatos do sistema de arquivos e do Registro do Windows
- Verificador de áreas críticas: módulo que verifica e neutraliza objetos de execução automática, beneficiando-se dos módulos descritos acima.
Uma forma de ameaça que tem aumentado nos últimos anos são os rootkits escondidos no firmware. Esse tipo de malware é muito perigoso porque começa a ser executado nas primeiras fases da inicialização do sistema operacional e, por isso, o código malicioso pode permanecer no sistema mesmo depois de o disco ser formatado e o sistema operacional ser reinicializado. Os primeiros rootkits de UEFI foram descobertos em 2015. Nos anos seguintes, foram detectados vários ataques de APT bem-sucedidos que utilizavam esse tipo de rootkit.
Para combater essa ameaça, nosso conjunto de tecnologias anti-rootkit inclui um Verificador de firmware, que analisa o conteúdo do BIOS da ROM quando o Verificador de áreas críticas está em execução. Essa tecnologia pode funcionar em sistemas inicializados no modo UEFI ou no modo herdado (BIOS).
O Verificador de firmware funciona da seguinte maneira:
- O conteúdo do BIOS da ROM é descarregado por um driver especial.
- O verificador inspeciona a descarga usando a heurística específica para a detecção de rootkits.
- Caso algum código malicioso seja detectado, o usuário é notificado por um alerta que mostra a localização do malware (memória do sistema) e o modo em que o sistema foi inicializado (veredito "MEM:Rootkit.Multi.EFI.a" para o modo UEFI, "MEM:Rootkit.Multi.BIOS.a" para o modo herdado).
- Como a reprogramação do BIOS da ROM é uma operação potencialmente perigosa e depende da plataforma, a neutralização automática não é realizada para esse tipo de infecção. Se um rootkit for detectado, você deverá entrar em contato com nosso serviço de suporte para obter instruções sobre como reprogramar o BIOS da ROM manualmente. No pior dos cenários, talvez você precise trocar a placa-mãe.
Alerta de detecção de rootkit de UEFI do Kaspersky Internet Security
O Verificador de firmware da Kaspersky detecta todos os rootkits de UEFI conhecidos, incluindo Hacking Team (VectorEDK), Lojax (DoubleAgent) e Finfish. As heurísticas dedicadas são atualizadas regularmente com base nos estudos de novos rootkits descobertos por especialistas da Kaspersky e de outros fornecedores. O Verificador de firmware é usado em todos os nossos principais produtos (Kaspersky Anti-Virus, Kaspersky Internet Security, Kaspersky Total Security, Kaspersky Endpoint Security for Business, etc).