Wp Autorun Malware v6.5 Pt Br

12
A ascensão do malware com base em AutoRun Por Vinoo Thomas, Prashanth Ramagopal e Rahul Mohandas Relatório

Transcript of Wp Autorun Malware v6.5 Pt Br

Page 1: Wp Autorun Malware v6.5 Pt Br

A ascensão do malware com base em AutoRunPor Vinoo Thomas, Prashanth Ramagopal e Rahul Mohandas

Relatório

Page 2: Wp Autorun Malware v6.5 Pt Br

Sumário

Introdução 3

O retorno do malware de disco removível 3

Distribuição do malware com base em AutoRun 4

As dores do AutoRun 6

Limpeza incompleta de autorun.inf 7

Métodos tradicionais de detecção 8

Remoção inteligente do autorun.inf 8

Aproveitando a tecnologia “cloud computing” 10

O caminho à frente 11

Sobre os autores 12

Relatório A ascensão do malware com base em AutoRun

Page 3: Wp Autorun Malware v6.5 Pt Br

3

Relatório A ascensão do malware com base em AutoRun

IntroduçãoA maioria das pessoas associa à Internet os atuais vírus de computador e outros tipos predominantes de malware, mas eles não começaram na Internet. Não podemos esquecer que as primeiras ameaças em computadores remontam à era dos disquetes e mídias removíveis. Com o advento da Internet, os ataques com base em email e rede tornaram-se o vetor de infecção preferido dos hackers para a disseminação de código malicioso — enquanto as preocupações com a segurança das mídias removíveis ficaram em segundo plano. Agora, porém, nossa atenção está retornando às mídias removíveis.

Ao longo dos anos, os disquetes foram substituídos por discos rígidos portáteis, cartões de memória Flash e Memory Stick e outras formas de armazenamento de dados. Os dispositivos removíveis atuais podem armazenar 10.000 vezes mais dados do que os disquetes de antigamente. Eles não apenas armazenam mais dados, como também são “inteligentes” — com a capacidade de executar programas de software transportáveis1 ou iniciar sistemas operacionais. 2,3

Vendo a popularidade do armazenamento removível, os autores de vírus perceberam o potencial do uso desse tipo de mídia como um vetor de infecção. Eles têm a ajuda de um recurso de conveniência nos sistemas operacionais chamado AutoRun, que inicia o conteúdo de um disco removível sem qualquer interação com o usuário.

Este documento investiga os aperfeiçoamentos do malware com base em AutoRun. Também discutimos métodos para detectar e bloquear proativamente o malware disseminado através de unidades removíveis utilizando uma combinação de técnicas antimalware tradicionais e “cloud-computing” (computação em nuvem).

O retorno do malware de disco removívelNos dois últimos anos vimos autores de malware obterem êxitos impressionantes ao incorporarem cada vez mais a técnica do AutoRun nas famílias de malware. Além dos worms de AutoRun tradicionais que utilizam esse recurso, backdoors,4 bots,5 ladrões de senhas6 e até vírus parasitas,7 que antes precisavam que o usuário clicasse duas vezes em um arquivo executável para infectar o sistema, incorporaram a técnica do AutoRun. Além disso, a ampla disponibilidade de código-fonte dessas famílias na Internet permite que meros criadores de scripts “reempacotem” e compilem novas variantes.

O ano de 2008 teve vários incidentes de alto perfil nos quais as ameaças com base no AutoRun chegaram às manchetes. Práticas deficientes de controle de qualidade de fabricantes de hardware levaram a repetidos incidentes de venda de cartões de memória USB,8 discos rígidos,9 reprodutores de MP310 e porta-retratos digitais11 para os clientes já com malware de AutoRun pré-instalado. Os clientes incautos recebiam mais do que o que estavam comprando.

Os militares dos EUA12 baniram o uso de “pen drives”, cartões de memória Flash e todos os demais dispositivos de armazenamento de dados removíveis de suas redes para tentar evitar que o worm se multiplicasse ainda mais. Para alguns departamentos, o banimento não foi um inconveniente muito grande, mas para os soldados no campo de batalha, que contavam com as unidades removíveis para armazenar informações, essa medida drástica foi demasiadamente radical.

Os fornecedores de segurança também não foram poupados. Em um incidente de grande constrangimento, a Telstra13 distribuiu unidades USB infectadas com worms para os participantes da conferência de segurança AusCERT. Felizmente, o worm não tinha uma carga útil e nenhum dano grave ocorreu.

O malware com base em AutoRun pode também ter entrado em órbita e chegado até a Estação Espacial Internacional14 através de uma unidade USB infectada pertencente a um astronauta. O laptop utilizado pelo astronauta aparentemente não tinha software antimalware algum para evitar uma infecção.

1 http://www.u3.com2 http://www.remote-exploit.org/backtrack_download.html3 http://www.cnet.com.au/software/operatingsystems/0,239029541,339271777,00.htm4 http://vil.nai.com/vil/content/v_142042.htm5 http://www.cert-in.org.in/virus/worm_hamweq.htm6 http://vil.nai.com/vil/content/v_147533.htm7 http://vil.nai.com/vil/content/v_147094.htm8 http://www.theregister.co.uk/2008/04/07/hp_proliant_usb_key_infection/9 http://blogs.zdnet.com/security/?p=201610 http://www.virusbtn.com/news/2008/01_08a.xml11 http://www.securityfocus.com/brief/67012 http://blog.wired.com/defense/2008/11/army-bans-usb-d.html13 http://blogs.zdnet.com/security/?p=117314 http://news.bbc.co.uk/2/hi/technology/7583805.stm

Page 4: Wp Autorun Malware v6.5 Pt Br

4

Relatório A ascensão do malware com base em AutoRun

Esses incidentes são uma pequena porcentagem dos episódios que foram divulgados publicamente. Na realidade, a maioria dos incidentes de segurança não é divulgada para evitar a atenção da mídia. Esses incidentes também nos ensinam que toda indústria — militar ou comercial — está cada vez mais suscetível a ameaças que utilizam o AutoRun como vetor de infecção.

Distribuição do malware com base em AutoRunPara investigar os compiladores e empacotadores mais predominantes utilizados para criar worms AutoRun, nós reunimos dados de todos os worms com base em AutoRun que o McAfee® Avert® Labs recebeu nos últimos três anos. Os gráficos seguintes mostram a distribuição de compiladores e empacotadores de worms com base em AutoRun.

Figura 1: Distribuição de compiladores a partir de coletas de amostras da McAfee (dezembro de 2008)

Figura 2: Distribuição de empacotadores a partir de coletas de amostras da McAfee (dezembro de 2008)

A partir dos dados coletados, observamos que AutoIt e UPX são, respectivamente, o compilador e o empacotador mais disseminados para criação de malware com base em AutoRun. Atribuímos essa popularidade a três motivos principais:

AutoIt • 15 e UPX16 são software de código aberto e disponíveis gratuitamente na Internet.O código-fonte de malware para criação de worms com base no AutoIt está prontamente disponível •

na Internet.

Os arquivos compilados com versões 3.2x e anteriores do AutoIt podem ser descompilados para descarregar •

o script original utilizando-se um descompilador disponível gratuitamente17 em um blog sobre o AutoIt.

Esses motivos permitem que meros criadores de scripts examinem amostras de worm AutoRun existentes escritas no AutoIt e façam modificações no script conforme as necessidades do autor. O script modificado é, então, recompilado para criar variantes novas do worm que podem ser adaptadas até burlar a detecção antimalware.

15 http://www.autoitscript.com/AutoIt/16 http://upx.sourceforge.net/17 http://leechermods.blogspot.com/2008/02/autoit-decompiler-unpacker-and-script.html

Page 5: Wp Autorun Malware v6.5 Pt Br

5

Relatório A ascensão do malware com base em AutoRun

Alterações comuns feitas no corpo do worm são atualizações de links para fazer download de mais malware e mensagens provocativas dentro do worm. Vimos malware à moda do AutoIt em francês, indonésio, punjabi, vietnamita e outros idiomas, com temas regionais.

Figura 3: Um worm AutoRun vietnamitaFigura 4: Um worm AutoRun utilizando escândalos indianos como iscaFigura 5: Um worm AutoRun em francês

As mensagens de isca dentro do corpo do worm incluem repreensões para que não se veja pornografia, cânticos religiosos, notícias sensacionalistas e vídeos de escândalos sexuais locais.

Page 6: Wp Autorun Malware v6.5 Pt Br

6

Relatório A ascensão do malware com base em AutoRun

As dores do AutoRunAutoRun18 é um recurso de conveniência dos sistemas operacionais que inicia automaticamente o conteúdo de uma mídia removível assim que uma unidade é inserida em um sistema. O processo AutoRun é acionado utilizando-se o arquivo autorun.inf,19 que especifica o caminho de um arquivo que é executado automaticamente.

Figura 6: Um arquivo autorun.inf típico

Infelizmente para a maioria de nós, os autores de malware apropriaram-se desse recurso benigno para executar malware automaticamente sem qualquer interação com o usuário quando um dispositivo removível (por exemplo, um cartão de memória ou uma unidade de disco externa) é inserido em um sistema. O computador reconhece uma unidade removível recém-conectada, detecta o arquivo autorun.inf e carrega o malware.

Um outro vetor de infecção ocorre devido ao mapeamento da unidade. Quando um computador mapeia uma letra de unidade para um recurso de rede compartilhado com um autorun.inf malicioso, o sistema abre (por padrão) o autorun.inf e segue suas instruções para carregar o malware. Uma vez que o sistema é infectado, o malware faz o mesmo com outras unidades removíveis conectadas a ele e a outros computadores da rede que tentam mapear uma letra de unidade para sua unidade compartilhada infectada — daí a replicação ser freqüente.

O Avert Labs acrescentou pela primeira vez, em janeiro de 2007, detecção de arquivos autorun.inf que acompanham exemplares de malware, como o Generic!atr.20 Desde então observamos um aumento alarmante21 no malware que utiliza o AutoRun como vetor de infecção. Vamos dar um exemplo do quão desenfreado é o problema do malware de AutoRun no mundo real: Abaixo vemos o mapa global de vírus da McAfee, que mostra estatísticas de infecções observadas por usuários da McAfee no mundo inteiro.

18 http://en.wikipedia.org/wiki/Autorun19 http://msdn.microsoft.com/en-us/library/bb776823.aspx20 http://vil.nai.com/vil/content/v_141387.htm21 ESET. “Global Threat Trends” (Tendências globais em ameaças), (novembro de 2008).

http://www.eset.com/threat-center/case_study/Global_Threat_Trends_November_2008.pdf

Page 7: Wp Autorun Malware v6.5 Pt Br

7

Relatório A ascensão do malware com base em AutoRun

Figura 7: Estatísticas globais de vírus da McAfee (dezembro de 2008)22

Detectamos o Generic!atr em mais de dois milhões de arquivos em um período de 24 horas. Esse malware está entre as cinco maiores detecções globais desde que sua assinatura foi adicionada aos arquivos DAT da McAfee. A figura 7 mostra detecções apenas em computadores que executam o antivírus McAfee e cujos usuários optaram por informar suas detecções. Quando se leva em consideração os milhões de computadores na Internet e detecções de outros fornecedores23, 24 de ameaças com base em AutoRun, compreende-se a real gravidade do problema.

Limpeza incompleta de autorun.infO que acontece quando o software antimalware exclui somente o arquivo do malware e não exclui o autorun.inf que o acompanha na raiz da unidade? Sempre que um usuário clica em Meu computador e tenta navegar até a raiz da unidade, o explorer.exe carrega automaticamente o autorun.inf. Se o arquivo do malware foi excluído, mas o autorun.inf foi deixado, sempre que os usuários tentarem abrir o conteúdo da unidade através do Explorer, eles verão o seguinte erro:

Figura 8: Os usuários vêem essa mensagem de erro ao acessar uma unidade infectada após uma limpeza incompleta

22 http://us.mcafee.com/virusInfo/default.asp?id=regional23 http://blogs.technet.com/mmpc/archive/2008/06/20/taterf-all-your-drives-are-belong-to-me-1-one.aspx24 http://www.eset.com/threat-center/case_study/Global_Threat_Trends_November_2008.pdf

Page 8: Wp Autorun Malware v6.5 Pt Br

8

Relatório A ascensão do malware com base em AutoRun

Essa mensagem de erro é lógica porque o caminho do executável listado no autorun.inf não existe mais. Assim, toda vez que a unidade for acessada, o Windows fornecerá essa mensagem, até que o usuário exclua manualmente o autorun.inf.

O autorun.inf desconectado resulta em um trabalho extra de limpeza, com consultas e reclamações de clientes sobre o worm não ter sido devidamente eliminado. Um administrador teria de excluir manualmente esse autorun.inf ou enviá-lo para o fornecedor do antimalware para adicionar detecção.

Métodos tradicionais de detecçãoOs fornecedores de antimalware utilizam tradicionalmente somas de verificação ou lógica com base em sequências para detectar arquivos autorun.inf maliciosos. Uma técnica comum consiste em detectar sequências que são exclusivas de um autorun.inf. Aqui está um exemplo de pseudocódigo para uma detecção de assinatura com base em sequência de um arquivo autorun.inf:

Eliminar sequência “[AutoRun]” no início do arquivo Detectar sequência “open = nome do executável do malware”

No entanto, os autores de malware subverteram os métodos tradicionais de detecção ocultando o conteúdo de autorun.inf. A introdução de caracteres espúrios no arquivo impede a detecção tradicional com base em hash ou em sequência.

Figura 9: Um exemplo de arquivo autorun.inf oculto utilizado pelo worm W32/Conficker

A figura 9 mostra como o worm W32/Conficker trabalha, ou seja, criando um arquivo autorun.inf como este.25 O worm descarrega o arquivo, o qual contém aproximadamente 60KB de dados binários aleatórios.26 O comando para executar o worm fica escondido dentro dos dados aleatórios.

Os malfeitores também introduziram nomes de arquivo de executáveis aleatórios para que, em cada máquina infectada e a cada execução, o nome de arquivo no caminho do executável AutoRun mude.

Com os autores de malware utilizando uma combinação de caracteres espúrios para ocultar, além de nomes de arquivo aleatórios a cada execução, é fácil burlar os métodos de detecção convencionais utilizados pelos pesquisadores de antimalware.

Além disso, se o malware utiliza um nome de arquivo fraco ou comum — como autoplay.exe ou setup.exe — no autorun.inf, os pesquisadores hesitam em adicionar detecção utilizando essas seqüências porque as possibilidades de a assinatura produzir falsos positivos seriam muito altas.

Remoção inteligente do autorun.infPropomos resolver esse problema da seguinte maneira: Sempre que o malware é detectado em um sistema pela varredura antimalware, precisamos, antes de limpar, verificar se há um arquivo autorun.inf na raiz da unidade. Se um autorun.inf estiver presente, examinamos o seu conteúdo à procura do nome de arquivo do malware que a varredura detectou. Se o nome de arquivo do malware estiver presente, a varredura marca esse autorun.inf como malicioso e como associado ao malware detectado. Em seguida, a varredura exclui ambos os arquivos do AutoRun e do malware.

25 http://vil.nai.com/vil/content/v_153710.htm26 http://isc.sans.org/diary.html?storyid=5695

Page 9: Wp Autorun Malware v6.5 Pt Br

9

Relatório A ascensão do malware com base em AutoRun

Pseudocódigo para remoção lógica

if (malware detectado na unidade) then { if (unidade contém autorun.inf) then { if (autorun.inf contém uma entrada para o malware) then { detectar e excluir autorun.inf } } }

Figura 10: Exemplo de lógica para detecção e limpeza de um arquivo autorun.inf associado. Após excluir o malware detectado, a varredura antimalware limpa o autorun.inf malicioso associado.

Esse fluxograma atua como uma assinatura genérica para detectar arquivos autorun.inf maliciosos e detecta proativamente novas variantes sem a necessidade de assinaturas adicionais com base em hash ou em sequências. Isso também assegura uma limpeza precisa desses arquivos, sem falsos positivos.

Page 10: Wp Autorun Malware v6.5 Pt Br

10

Relatório A ascensão do malware com base em AutoRun

Aproveitando a tecnologia “cloud computing”O software antimalware costuma ser instalado em computadores individuais do mundo inteiro como proteção de terminais. Dependendo do fornecedor, esses sistemas recebem informações sobre ameaças e arquivos de assinaturas atualizados de hora em hora ou diariamente. Com o surgimento da tecnologia

“cloud computing” (computação na nuvem),27 essa comunidade de nós antimalware28 pode fornecer de volta para a nuvem informações sobre as ameaças. Com milhões de terminais antimalware ativos, a tecnologia “cloud computing” (computação na nuvem) captura e correlaciona, coletivamente e em tempo real, impressões digitais de código novo e potencialmente malicioso em todo o cenário de ameaças. Cada terminal transmite impressões digitais compactas sobre um arquivo suspeito para um sistema automatizado de avaliação para determinação imediata. Em questão de segundos, as ferramentas “back-end” de análise de ameaças verificam as características do arquivo para determinar seu provável nível de ameaça e notificar o terminal para executar a ação apropriada.

27 Buyya, R., Yeo, S. e Venugopal, S. “Market-Oriented Cloud Computing: Vision, Hype, and Reality for Delivering IT Services as Computing Utilities” (Computação na nuvem orientada para o mercado: Visão, mito e realidade do fornecimento de serviços de TI como serviços utilitários de computação), (setembro de 2008). Atas da 10ª Conferência Internacional do IEEE, Dalian, China. http://www.gridbus.org/~raj/papers/hpcc2008_keynote_cloudcomputing.pdf

28 http://www.mcafee.com/us/enterprise/products/artemis_technology/index.html

Page 11: Wp Autorun Malware v6.5 Pt Br

11

Relatório A ascensão do malware com base em AutoRun

Figura 11: Utilização da “cloud computing” para detectar malware com base em AutoRun

A “cloud computing” (computação na nuvem) pode ser aplicada a unidades USB de varredura inteligente , por exemplo, como descrito na figura 11. Sempre que um usuário insere um dispositivo removível em um computador, o agente antimalware faz uma varredura da raiz da unidade removível à procura de um autorun.inf. Se esse arquivo existe, ele é analisado para se descobrir o caminho do executável, o qual passa por uma varredura. Se não existe assinatura para o executável no banco de dados local de assinaturas, um agente envia uma impressão digital do arquivo para uma consulta instantânea no banco de dados abrangente do fornecedor do antimalware. Se a impressão digital é identificada como malware conhecido, uma resposta para colocar em quarentena ou excluir o arquivo é enviada de volta para o computador do usuário em milissegundos. Além de bloquear a execução do arquivo malicioso, a lógica de limpeza que propomos anteriormente pode excluir ou colocar em quarentena o arquivo autorun.inf associado também.

A velocidade com a qual o malware se modifica e se propaga torna difícil para qualquer fornecedor de segurança acompanhar utilizando defesas tradicionais. Atualmente é preciso correlacionar técnicas de assinatura e comportamentais com inteligência de ameaças em tempo real obtida da comunidade de usuários.29 A materialização da tecnologia “cloud computing” (computação na nuvem)30 torna os terminais mais inteligentes e mais seguros — compartilhando inteligência coletiva de ameaças e evitando danos antes que uma atualização de assinaturas esteja disponível.

O caminho à frente Por que o AutoRun é tão popular como vetor de infecção — especialmente com máquinas que executam Microsoft Windows? O AutoRun é ativado por padrão em todas as versões do Windows, incluindo as mais recentes do Windows Vista e Windows Server 2008. Com as infecções com base em AutoRun em alta, a Microsoft poderia fazer uma grande diferença tratando dessa conveniência tão explorada. A Microsoft introduziu aperfeiçoamentos do AutoRun no Windows 7 que podem se aplicar a sistemas operacionais anteriores em futuras atualizações do Windows.31

Observando a evolução recente do malware com base em AutoRun, podemos esperar o surgimento de exemplares mais complexos e desafiadores desse gênero. É, portanto, essencial rever os métodos tradicionais de detecção e aprimorar nossas estratégias de defesa contra malware. As técnicas discutidas neste documento contribuem bastante para a contenção da disseminação do malware com base em AutoRun.

29 McAfee Avert Labs. “From Zero-Day to Real-Time” (Do “zero-day” ao tempo real), (2008). http://www.mcafee.com/us/local_content/technical_briefs/wp_zero_day_to_real_time.zip

30 Chappell, David. “A Short Introduction to Cloud Platforms” (Uma breve introdução às plataformas de nuvem), (agosto de 2006). http://www.davidchappell.com/CloudPlatforms--Chappell.pdf

31 http://blogs.technet.com/mmpc/archive/2009/04/28/windows-addresses-the-changing-autorun-threat-environment.aspx

Page 12: Wp Autorun Malware v6.5 Pt Br

McAfee e/ou marcas adicionais mencionadas neste documento são marcas comerciais ou registradas da McAfee, Inc. e/ou de empresas afiliadas nos Estados Unidos e/ou em outros países. A cor vermelha da McAfee usada em relação à segurança é traço distintivo dos produtos que levam a marca McAfee. Quaisquer outros produtos não relacionados à McAfee, marcas comerciais registradas e/ou não registradas são mencionados apenas como referência e são de propriedade exclusiva de seus respectivos detentores. © 2009 McAfee, Inc. Todos os direitos reservados.

McAfee do Brasil Comércio de Software Ltda. Av. das Nações Unidas, 8.501 - 16° andar CEP 05425-070, São Paulo - SP, Brasil Tel.: (11) 3711-8200 www.mcafee.com.br

Este documento tem como objetivo fornecer apenas informações educacionais genéricas para clientes potenciais e atuais da McAfee. A McAfee oferece este documento e as informações nele contidas “no estado”, sem garantias expressas ou implícitas quanto à precisão, comercialização ou adequação a um determinado propósito. As recomendações e opiniões aqui contidas são dos autores e não refletem necessariamente os pontos de vista ou opiniões da McAfee, Inc.

Relatório A ascensão do malware com base em AutoRun

Rahul Mohandas é engenheiro de pesquisa de vírus no Avert Labs de Bangalore. Ele trabalha com pesquisa de malware e vulnerabilidades e frequentemente analisa explorações e tendências de malware no blog do Avert Labs. Mohandas já discursou em conferências de segurança ao redor do mundo.

Prashanth Ramagopal é cientista de pesquisa no Avert Labs de Bangalore. Ele é especialista em engenharia reversa de malware polimórfico e criação de detecções genéricas. Quando não está combatendo malware, Ramagopal dedica-se à sua paixão, a fotografia.

Vinoo Thomas é líder de pesquisa de malware no McAfee Avert Labs de Bangalore, Índia. Suas principais responsabilidades incluem análise de vírus de computador, acompanhamento das tendências globais de malware e coordenação de pesquisadores. Thomas é colaborador regular do blog do McAfee Avert Labs e colunista de segurança de computadores no “Economic Times of India”. Ele tem várias patentes de software pendentes e publicou documentos no EICAR, no IEEE e no Virus Bulletin.

Sobre os autores