Rootkits

O termo rootkit é usado para descrever um mecanismo ou técnica usada por malware (vírus, spyware e troianos) para esconder a sua presença de bloqueadores de spyware, antivírus e até do próprio sistema operativo.

O termo rootkit deriva de dois termos técnicos: “root” e “kit”. A parte “root” está relacionado com o facto do nos sistema operativos *nix o utilizador “root” ter privilégios máximos e a parte “kit” porque o malware é criado através da montagem de múltiplas peças.

É possível classificar os rootkits tendo por base a forma de actuação e a capacidade de sobreviver (ou não) ao processo de arranque do computador.

 

Rootkit persistentes

Um rootkit persistente está associado a um malware que se activa cada vez que o sistema é iniciado. Normalmente para se conseguir iniciar automaticamente (sem intervenção do utilizador), o malware tem de armazenar de forma persistente o código que vai ser despoletado no processo de arranque do sistema operativo ou no processo de início de sessão. Tipicamente são usados simples ficheiros e/ou entradas no Registro.

 

Rootkits residentes em memória

São malwares que se alojam unicamente na memória RAM e como tal não conseguem sobreviver ao processo de arranque do computador, ou seja, não são persistentes.

 

Rootkits baseados no User-Mode

Na arquitectura Windows uma aplicação pode ser executada em dois contextos: o contexto do utilizador (user-mode), onde a aplicação tem acesso à camada superior dos dispositivos e herda as permissões do utilizador; e o contexto do núcleo (kernel-mode), tipicamente reservado a operações do sistema operativo.

Os rootkits que correm no contexto do utilizador recorrem frequentemente a uma técnica “clássica” para se passarem por despercebidos: interceptar as chamadas da API do Windows que enumeram os ficheiros e pastas existentes num determinado local (FindFisrtFile e FindNextFile) e alteram o resultado, excluindo-se dessa listagem. Apesar de simples, é brilhante pois este pequeno truque consegue de facto tornar o malware invisível ao utilizador final e às aplicações de antivírus.

 

Rootkits baseados no Kernel-Mode

Os rootkits desta espécie são ainda mais poderosos uma vez que conseguem interceptar todas as chamadas nativas à API do núcleo e conseguem acesso directo para manipular a estrutura de dados.

O método “clássico” usado por esta categoria de rootkits é remover o processo do malware da lista de processos. Uma vez que a gestão das APIs se baseiam na lista de processos, o malware fica invisível a ferramentas como o Gestor de Tarefas ou o Process Explorer… uma vez mais, simplesmente brilhante!

Uma vez infiltrado é impossível saber-se através do sistema operativo que o computador se encontra infectado.

 

Então como é que se detecta que um determinado computador se encontra infectado por um rootkit?

A Microsoft disponibiliza duas ferramentas, gratuitas, que têm a capacidade de efectuar a detecção deste tipo de malware: Rootkit Revealer e Microsoft Standalone System Sweeper .

O Rootkit Revealer é um utilitário que neste momento se encontra na versão 1.71 e funciona correctamente em sistema operativos 32 bit até à versão Windows XP.

O Microsoft Standalone System Sweeper encontra-se neste momento em versão Beta e funciona em sistema operativos 32 e 64 bit até à versão Windows 7/ Windows 2008 R2. Ao contrário do Rootkit Revealer que é possível executar de imediato na máquina suspeita, o Microsoft Standalone System Sweeper requer que o arranque da máquina seja efectuada através de uma versão reduzida e disponibilizada para este efeito do Windows. As opções de arranque são um CD/DVD ou um drive USB.

blog027

 

 

Recursos adicionais:

Hiperligação para descarregar o Rootkit Revealer:

http://technet.microsoft.com/pt-pt/sysinternals/bb897445

Hiperligação para descarregar o Microsoft Standalone System Sweeper:

https://connect.microsoft.com/systemsweeper

Hiperligação para descarregar o Process Explorer:

http://technet.microsoft.com/en-us/sysinternals/bb896653

3 thoughts on “Rootkits

  1. Pingback: Windows Defender Offline « Jorge Moura

  2. Pingback: Arranque Seguro e UEFI | Jorge Moura

  3. Pingback: Arranque Seguro e UEFI | Marcus Vinicius dos Reis

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s