Tipos de Malware

Geralmente conhecidos como Malware – contração do nome Malicious Software – são programas com propósito ilegal ou indesejável que atuam de forma maliciosa em ambientes computacionais.

Esses softwares, da mesma forma que na biologia, podem ser classificados em um taxonomia de acordo com suas características. Essa classificação não é padronização, mas uma forma de melhor descrever suas técnicas maliciosas e permitir melhor responder ao risco.

Faz parte da realidade de qualquer organização a prevenção contra esse tipo de ameaça virtual. Malwares utilizam dos mais diversos vetores para alcançar suas vítimas e provocar danos.

De acordo com a Proofpoint, fabricante que atua no mercado de Anti-Spam, o principal vetor de infecção por malwares ainda são os e-mails, de acordo com seu relatório anual chamado Human Factor.

Porém malwares podem utilizar dos mais variados vetores para propagação além do e-mail, como documentos, programas e outros tipos de mídias compartilhadas.

Geralmente as ações de infecção por malware ocorrem de forma automatizada, e não é tão comum (proporcionalmente) a ação manual. Realizar de forma automatizada permite uma maior superfície de possibilidades para o ataque e maior alcance do ataque.

Tem se tornado cada vez mais comum o uso de malwares não com propósitos destrutivos, mas para realizar a obtenção de dados sensíveis das pessoas. Afinal, não estamos mais falando de adolescentes nos porões de suas casas, mas organizações criminosas que movimentam um mercado underground milionário. Com a crescente digitalização de serviços, a quantidade de informações e possibilidades de ganhos com o uso de malware aumentou:

  • Uso de botnets para ataques de DDoS (Distributed Denial-of-Service) ou envio de spams mais efetivos. Interessados podem pagar para uso dessa rede e permitir maior alcance de anúncios e vendas.
  • Ransomware permite o sequestro de dados e a recuperação mediante o pagamento.
  • Spyware permite a coleta de dados sensíveis para depois revenda e fraude.
  • Malwares podem redirecionar os usuários para páginas web de produtos.
  • Programas maliciosos podem instalar keyloggers para captura de dados sensíveis, como dados bancários, e envio ao atacante.

Profissionais da área de Infosec lidam com malwares desde a popularização da computação. No entanto as técnicas e métodos utilizados foram se aprimorando ao longo dos anos e vão além de sinais óbvios, como a criação de novos arquivos, mudanças de configuração e mudanças de arquivos do sistema.

Alguns malwares são armazenados apenas em memória RAM, de forma a dificultar a análise do artefato, uma vez que ele é volátil e apaga após o desligamento do sistema.

Vetores de Infecção

O processo de infecção pode ocorrer das mais variadas formas, desde um download de arquivo indesejável (“drive-by-download”), geralmente usando de técnicas de phishing, ou com o uso de vulnerabilidades em softwares.

Vários fatores contribuem para o aumento das possibilidades de infecção por malware. Entre os seguintes:

  • Ambientes homogêneos: se uma organização utilizar de uma mesma tecnologia em vários ambiente potencializa o risco caso existam vulnerabilidades.
  • Tudo é computador: com tendências como IoT (Internet of Things) diversos equipamentos, que até então não possuíam capacidade de processamento, agora são potenciais alvos. E geralmente esses ativos não possuem o mesmo nível de preocupação que a TI tradicional, não existindo ou demorando a realização de atualizações e correções de segurança.
  • Mais dados: o armazenamento de dados de forma digital é o meio mais comum por diversas organizações, aumentando a superfície de ataque.
  • Muito privilégio: muitas contas com privilégios desnecessários aumentam as chances de comprometimento do ambiente.
  • Tecnologia e pessoas: mais pessoas precisam lidar com a tecnologia e não a compreendem, se tornando alvos para ações de atacantes.

E por fim, a dificuldade em realizar investigações de crimes digitais potencializa a sensação de que criminosos não serão identificados e sairão impunes de suas ações. A impunidade favorece a entrada de novos criminosos.

Componentes de um Malware

Geralmente os malwares são compostos de alguns desses 6 elementos. Nem todos possuem todos esses componentes, mas são módulos comumente observados em todos os malwares:

  • Inserção: instala a si mesmo no sistema da vítima.
  • Prevenção: utiliza de técnicas para evitar ser detectado.
  • Erradicação: remove a si mesmo depois que o payload é executado.
  • Replicação: realiza cópias de si mesmo para afetar outros alvos.
  • Gatilho: usa um evento para iniciar a execução do payload.
  • Payload: carrega conjunto de funções com algum propósito (remover arquivos, instalar um backdoor, explorar uma vulnerabilidade).

Vírus

Um vírus é uma pequena aplicação que infecta um software legítimo ou outro arquivo. Um vírus, tal como na biologia, não possui a capacidade de se replicar por si só, precisando de um hospedeiro, como uma aplicação, para se perpetuar.

Um vírus em si traz apenas a possibilidade de se anexar a um arquivo, porém traz junto um payload com potencial danoso. O payload pode ser desde apenas uma mensagem a ser exibida ao usuário até ações destrutivas.

Exemplos de vírus que foram globalmente conhecidos: ILOVEYOU, Melissa e Naked Wife. Esses vírus utilizavam de clientes de e-mail, como Outlook e Outlook Express, para se propagarem utilizando a lista de contatos local.

Existem variações de vírus de acordo com o meio que utiliza para se propagar e outras características. Essa classificação não é exaustiva e um vírus pode possuir características de mais de uma variação. Seguem algumas variações:

  • macrovirus: escrito em linguagens como VBScript e Visual Basic, é embarcado geralmente em documentos de editores (ex: Microsoft Office) que suportam tal linguagem.
  • boot sector virus: são malwares que infectam o setor de boot do computador comprometido e lá são armazenados. Eles geralmente sobrescrevem o setor para que o vírus seja carregado antes mesmo do sistema operacional.
  • stealth virus: malwares que se mantém ocultos em arquivos ou setores de boot. Intercepta operações de leitura de arquivos de forma a forjar resultados e ocultar sua existência. Pode realizar isso para se ocultar e também ocultar resquícios de sua ação no ambiente.
  • polymorphic virus: tipo de malware que produz variações no processo de replicação. O propósito é despistar ferramentas de anti-malware que são baseadas em assinaturas simples de detecção. Para realizar suas variações pode realizar a mudança de ordem das instruções ou mesmo gerar ruído no código, de forma a cada replicação ter aparência totalmente diferente.
  • multipart virus: são vírus que possuem diferentes partes que podem estar em diferentes locais do sistema. Com isso o processo de detecção é mais difícil, já que os componentes isoladamente não são danosos, mas quando agrupados atuam como malware. Os componentes podem ser distribuídos de forma individual usando múltiplos vetores, o que os tornam potencialmente perigosos.
  • meme virus: com o advento das redes sociais e sua massificação outro tipo de vírus, porém não sendo um tipo de vírus de computador, são os meme vírus. Ao contrário dos vírus anteriores, que são replicados por computadores, esse tipo de vírus é replicado por pessoas. Geralmente são utilizados para espalhar medo e prejudicar links de comunicação causando sobrecarga nos serviços.
  • script virus: são vírus que são embarcados em sites web utilizando linguagens como Javascript.
  • tunneling virus: são vírus que tentam se instalar entre a solução de anti-malware e o sistema operacional, de forma a ocultar sua existência. Atua de forma semelhante ao stealth virus, porém atuando de forma específica na ocultação de dados para rastreio por softwares anti-malware.

Worms

Diferente dos vírus, um worm possui a capacidade de se reproduzir sem um hospedeiro. Ou seja, um worm não precisa de um arquivo ou aplicação para se multiplicar. Ou seja, worms são programas auto-contidos. O nome worm (verme), não é por menos, também refere-se a criatura da biologia que possui mesma característica.

Continuando a analogia, um vírus não pode cair no chão e esperar com que alguém passe para infecta-lo. Justamente porque um vírus não “vive” sem um hospedeiro.

Da mesma forma que os vírus de computador, um worm também carrega consigo payload malicioso. O payload pode ser desde uma inofensiva mensagem para coagir como também conteúdo altamente especializado, como o worm Stuxnet que afetou sistemas SCADA (Supervisory Control and Data Acquisition) das unidades de enriquecimento de urânio do Irã.

Rootkit

Um rootkit é um conjunto de ferramentas instaladas em um ambiente para permitir o uso futuro por um potencial atacante. Uma vez carregado o rootkit é utilizado pelo atacante contra o sistema. Seja para encobrir sua presença no ambiente como também para permitir escalonar privilégios ou transformar o sistema em zumbi para futuro uso em botnets.

Geralmente um rootkit substitui algumas ferramentas do próprio sistema hospedeiro por outras ferramentas que além das funções legítimas também carrega consigo outras funções que são realizadas em background. É uma forma do rootkit também não ser identificado.

Em um sistema Unix-like as ferramentas ps e top são geralmente substituídas por outras que além das funções dos próprios aplicativos também realizam outras ações, como encobrir os processos relacionados ao rootkit em si. Outro meio para não levantar suspeitas é a capacidade de alguns rootkits em atuar como “log scrubbers“, removendo entradas em arquivos de log que indiquem a presença de criminosos.

Rootkits podem existir no nível de usuário (no caso do ps e top, por exemplo), e outros poderosos podem realizar até mesmo a substituição do kernel ou hypervisor por outro que carrega consigo ferramentas de propósito malicioso e que se mantém encobertas.

São difíceis de serem descobertas da forma tradicional, sendo que soluções de anti-malware apenas poderão detectar sua presença por meio de análise comportamental do ambiente e dump de memória. Por vezes o único meio de remoção dessas ferramentas pode ser a reinstalação do ambiente por completo.

Spyware e Adware

Spyware é um tipo de malware que é instalado de forma silenciosa em um computador para obter informações sensíveis sobre o host. Esses dados podem ser utilizados para ações suspeitas, como roubo de identidade, fraudes e outras tantas possibilidades. 

Apesar de estarem agrupados, os Adware não são necessariamente malwares por não possuir mesmo modo de operação criminoso. Na verdade, dependendo da legislação os Adware sequer seriam considerados ilegais. Eles geram publicidade automaticamente com base nos dados dos usuários do sistema hospedeiro. Porém, com recentes movimentos focados na privacidade dos dados (GDPR-like), a coleta e uso indiscriminado de dados pessoais se tornou um crime. 

Botnets

Um “bot” é uma abreviação do termo em inglês robot que é um trecho de código que permite com que ele receba comandos enviados por uma central de comandos externa. Nem todo bot é utilizado para propósito malicioso. A IBM, por exemplo, coordena o projeto World Community Grid que utiliza de recursos computacionais de computadores pessoais nos momentos que não são utilizados. A Universidade de Standford utiliza do mesmo princípio para o processamento de diferentes composições de proteínas no projeto Folding@Home

Porém outros tipos de bots são utilizados com propósitos não tão legais, e permitem com que atacantes de posse do controle dessa rede possam realizar ataques massivos para causar a negação de serviços legítimos (DDoS – Distributed Denial of Service) e o envio de spam. 

Os bots são programados para receberem os comandos de forma remota utilizando de diversos diferentes protocolos, como IRC (Internet Relay Chat). Nesse caso o modus operanti dos bots são:

  • Um criminoso envia o código para que seja instalado em um sistema. 
  • Uma vez o código instalado, esse se conecta a uma rede IRC e fica a espera de comandos realizados por meio do protocolo. 
  • O autor do código vende a possibilidade de uso da rede instalada para terceiros, monetizando a rede para realizar propósitos ilegais. 

O servidor que envia os comandos aos bots é geralmente chamado de Command-and-Control (C&C). 

Bombas Lógicas

Bombas lógicas são códigos que são executados diante a ocorrência de determinado evento. Por exemplo um administrador de sistemas que mantém instalado código para ser ativo apenas quando ele for desligado da organização, como forma de vingança pela sua demissão. 

Outro uso comum de bombas lógicas ocorre para encobrir evidências de um crime caso seja identificado o uso de ferramentas forenses em um computador. Naturalmente o uso de bombas lógicas nesse cenário serve para dificultar a identificação da origem após a realização de um outro crime. 

Cavalos de Tróia (Trojan Horses)

Assim como na mitologia, um malware do tipo Trojan Horse (geralmente chamado apenas de Trojan) pretende se passar por um software legítimo para realizar algo não esperado em segundo plano. 

Bastante utilizado para realizar fraudes bancárias. Principalmente quando são utilizadas as variações RAT (Remote Access Trojans) para permitir acesso e uso do ambiente de forma remota. Até mesmo celulares atualmente tem sido vítimas de uso de RATs.

Outros exemplos de RATs são Sakula, KjW0rm, Havex e Dark Comet. Da mesma forma que em um bot, uma vez o trojan instalado, o dispositivo cliente fica a escuta de comandos externos. O que diferencia essencialmente um RAT de um bot é seu uso. Se o propósito é utilizar do computador para envio de dados massivos a um destino ordenado, pode-se dizer que é um bot, porém se o uso é mais individualizado, realizando a monitoração do ambiente, podemos dizer que é um RAT. 

Por fim…

As classificações apresentadas não são exaustivas. Naturalmente um mesmo malware pode possuir características de diferentes categorias. A proposta é apenas identificar modos de operação em comum entre os diversos tipos de códigos e permitir o estudo de como combatê-los efetivamente. Malwares devem ser preocupação desde administradores de infraestruturas de grandes organizações até as pessoas utilizando de seus dispositivos pessoais. 

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *