Padrões de nomes ajudam a identificar as ações dos códigos maliciosos.
Dicas podem ser úteis, pois empresas não padronizam nome dos víru
Por: Altieres Rohr*
Se você desconhece o nome das pragas de computador, possivelmente não saberá de imediato como reagir quando seu antivírus alertar sobre o JS/Downloader.gen, o W32.Netsky.a@mm ou o Backdoor.HackDefender. No entanto, a existência de alguns padrões permite que, apenas pelo nome, o usuário tenha uma boa ideia do comportamento desses códigos maliciosos. A coluna de hoje decifra a "genética" dos nomes de vírus, para facilitar a identificação dessas pragas.
Cada antivírus usa termos diferentes em seus nomes. A barra na tabela abaixo separa alguns termos iguais que são escritos de forma diferente. Esses termos podem ser prefixos (vir antes da família) ou sufixos (depois). Com base na tabela abaixo, por exemplo, dá para saber que o W32.HLLW.Lovgate@mm é uma praga da família Lovgate e que ela foi programada em uma linguagem de alto nível para se espalhar pela rede e por e-mail. Confira:
@m | Envia e-mails para se espalhar. Exemplo: W32/Ska@M |
@mm/Email-Worm/I-Worm | Envia grande quantidade de e-mails para se espalhar. Exemplo: Email-Worm.Win32.Sober.c |
! e outros sufixos não-variante | Utilizado para dar informações adicionais. Por exemplo, um “Algumvírus.dam” significa um arquivo danificado, enquanto um “Algumvírus!dll” se refere a um componente DLL do vírus especificado na família. Exemplo: W32/Pinkslipbot!dll |
Backdoor | Permite o controle do PC pelo criador da praga. Exemplo: Backdoor.SubSeven |
Downloader/Dldr | Instala arquivos no PC, baixados da internet. Exemplo: Downloader.Trojan |
Dropper/Drop/Dr | Instala arquivos no PC sem precisar baixar nada. Exemplo: Trojan-Dropper.Win32.Yabinder.a |
Exploit | Código usado somente para explorar falha de segurança (raramente usado para vírus que exploram falhas). Exemplo: Exploit-MS04-028 |
Gen | Vírus genérico, sem variante. Quando há muitas variantes de uma praga, ou quando não vale a pena catalogá-la sob uma família nova, usa-se o “gen”. Exemplo: Win32:trojan-gen |
HLLC/HLLW/HLLP/HLLO (Vírus de Companhia, Rede, Parasita, Destruidor de arquivos, respectivamente) | Estes termos têm caído em desuso. Significam que o vírus foi programado em uma linguagem de alto nível. Fazia sentido antigamente, mas hoje todos os vírus são feitos em alto nível. O mais relevante é o HLLO, que significa um vírus que destrói arquivos de maneira irreparável. Exemplo: W32.HLLO.Videoinf |
Joke | Um programa não malicioso, mas que prega uma “peça”. Exemplo: Joke.Win32.VB.h |
JS/HTML/VBS | É um código em formato script (texto – o normal é binário, código) que faz uso da referida linguagem (Javascript, HTML, VBScript...). Exemplo: VBS.LoveLetter |
M (Macro) MS/O (Office) W (Word)/A (Access)/X (Excel) | São vírus de macro do Microsoft Office. Raríssimos hoje. São combinações dessas letras que dão o significado. Por exemplo, OM é “Office Macro”. A2KM é “Macro do Access 2000”. X97M é “Macro do Excel 97” e assim por diante. Exemplo: W97M.Melissa.A |
PUP/PUA | Programa Potencialmente Indesejado (acrônimo do inglês: potentially unwanted program/application). Exemplo: Generic PUP.x!06F91978 |
PE | Usado por poucas companhias antivírus. PE significa “Portable Executable”, ou seja, programas. Significa que o vírus infecta programas ou é um programa. Exemplos: NewHeur_PE; PE_WINDANG |
Proxy | Abre um proxy no computador, normalmente de e-mails. Com isso, o criador da praga pode enviar e-mails ou navegador na web pelos computadores infectados. Exemplo: Trojan-Proxy.Win32.Mitglieder.a |
PWS/PWSteal/Infostealer | Rouba senhas ou outras informações valiosas. Exemplo: PWS-Mmorpg.gen |
Spy | Faz algum tipo de espionagem no computador. Exemplo: Trojan-Spy.Win32.Banker |
Trojan/Troj | Praga que, de modo geral, não se espalha sozinha e, por isso, é “semeada” por seu criador. Exemplo: Troj/Ransom-A |
W32/Win32 | É uma praga que ataca sistemas Windows. Praticamente irrelevante hoje, mas antigamente se usava muito para diferenciar dos vírus de DOS. Ainda se usa em alguns casos, especialmente em pragas clássicas. Exemplo: W32.Blaster.Worm |
I-Worm/Worm/P2P | Um vírus que ataca pela rede. No caso de P2P, redes de trocas de arquivo. I-Worm aparece aqui novamente, porque algumas empresas usam tanto para um quanto para outro. Exemplo: P2P-Worm.Win32.Tibick |
Às vezes esses termos fazem parte da própria família do vírus. E em alguns casos, a família do vírus poderá dar a informação que falta. Por exemplo: não é difícil deduzir que tipo de informação o “Infostealer.Bancos” rouba, ainda mais com o nome em português.
O caos da nomenclatura
As empresas antivírus não conseguem padronizar o nome dos vírus. Os motivos não são claros, mas muitos especialistas afirmam que o problema é a quantidade de pragas – por serem muitas, é difícil usar o mesmo nome que todas as demais empresas. Um texto sobre nomenclatura da WildList afirma que é “impossível” fazer com que todos os produtos antivírus usem o mesmo nome para as mesmas pragas.
Em 1991, foi criada a Nova Convenção de Nomenclatura de Vírus (New Virus Naming Convention, NVNC). Ela não busca padronizar os nomes, mas sim as informações que deveriam estar nele e como elas seriam dispostas. Além de ser antiga e não contemplar as técnicas usadas por pragas mais novas, ela não é seguida à risca e, por isso, existem diferenças não apenas nomes, mas em como eles são escritos.
Um projeto chamado Common Malware Enumeration (CME) – Numeração de malware Comum - foi iniciado em 2004 para criar um “identificador único” que todos os antivírus pudessem usar, mas apenas quando necessário, em infecções de escala mundial. O jornalista Robert Lemos, do site SecurityFocus, da Symantec, observou em 2006 que “as companhias antivírus parecem menos propensas a cooperar quanto mais atenção da mídia um vírus ganha”.
Como o CME buscava apenas catalogar pragas de alta relevância e grande parte dos especialistas acredita que a era dos “grandes vírus” acabou, decidiu-se dar fim ao projeto em janeiro de 2007. Porém, houve muitas infecções em larga escala desde 2007. É fácil citar o Conficker, que recebeu até cobertura de emissoras de televisão em abril deste ano.
Não é nada intuitivo o fato de as pragas Conficker, Downadup e Kido serem as mesmas. Mas as empresas antivírus deram um “jeitinho”: as páginas informativas a respeito das pragas trazem também os nomes usados pelos concorrentes.
Resumindo, se você quiser saber os outros nomes de um determinado vírus, terá de buscar isso na internet para descobrir os “aliases” do código malicioso. Não tem outro jeito, e o consenso entre as companhias antivírus parece ser de que padronizar os nomes é impossível.
Variantes e Famílias
A família é o nome do vírus. No caso do Conficker, temos um vírus da família... Conficker. Para se referir a um vírus específico, é preciso especificar a variante que, hoje em dia, é determinada por uma letra. Conficker.C, por exemplo, é a terceira variante da família Conficker. Depois do “Z” vem o AA (27ª variante), AB, AC... AZ, BA, BB... ZZ, AAA e assim por diante.
Devido ao problema explicado acima, existem casos em que a variante (“C”, no nosso exemplo) de uma empresa antivírus não seja a mesma da outra.
Antigamente, e ainda em alguns casos mais atuais, usa-se como variante o número de bytes (tamanho) do vírus. Mas isso é raro, porque a já mencionada NVNC determinou esse método das letras.
Agora que você já sabe tudo isso, o que é o “JS/Downloader.gen”? Como se espalha o W32.Netsky@mm? Fácil saber, não é? Existem ainda outros sufixos e prefixos além dos citados, mas muitas vezes o significado explica-se por si mesmo. Veja o caso de “Linux.RST”. o que se sabe é apenas que trata-se de um vírus que ataca o Linux. Ou então um “Riskware”, que é apenas “software de risco”.
É importante ressaltar que nem sempre todos os nomes são usados no caso de um vírus que faz mais de uma coisa. Por exemplo, uma praga que rouba dados e permite o acesso remoto do PC dificilmente vai receber o nome de “Backdoor.PWS.[Nome]”. Você consegue geralmente descobrir o comportamento principal da praga, conforme julgado pela companhia antivírus, mas não todos os detalhes!
Nomes curiosos de famílias
A convenção de 1991 (NVNC) impõe uma série de restrições no que pode ser usado como nome do vírus (“família”). Com isso, pesquisadores antivírus precisam usar um pouco a criatividade para nomear as pragas. Abaixo segue a origem de alguns nomes de pragas conhecidas:
1) Conficker: o nome foi obtido com o reordenamento de algumas letras de “Traffic Converter”, segundo o especialista da Microsoft Joshua Phillips. O site trafficconverter.biz era usado pela praga para baixar atualizações.
2) Netsky: o nome é uma inversão de “skynet”. O termo, retirado do filme “Exterminador do Futuro”, estava no código do vírus. A praga dizia-se um “Skynet Antivírus”. De fato, o código malicioso eliminava pragas “concorrentes” da época, como o MyDoom e o Beagle.
3) Chernobyl: deriva da data de ativação, 26 de abril, a mesma do acidente da usina nuclear de mesmo nome. O vírus também ficou conhecido como CIH devido às iniciais do seu criador (Chen Ing Hau) e Spacefiller, por causa da técnica de infecção (ele preenchia os espaços em branco dentro de um arquivo - por isso space (espaço) filler (“enchedor”).
4) Nimda: a palavra “admin”, de “administrador”, ao contrário.
5) Blaster: este vírus teve seu nome derivado do arquivo malicioso que instalava no PC, o “msblast.exe”. Algumas o empresas o chamavam também de MSBlast.
6) Sasser: origina-se no componente do Windows que o vírus explorava para se espalhar, o “lsass.exe”. Tirando-se o “l” do arquivo e colocando-se o “er” – um sufixo comum no inglês –, têm-se “sasser”.
7) HackDefender: a indústria de antivírus tenta evitar o uso do nome escolhido pelo criador da praga, para não legitimá-lo. Como o nome original era “Hacker Defender”, retirou-se apenas duas letras. O Hacker Defender é um poderoso cavalo de troia, que “protege” outras pragas contra detecção e remoção.
Nem sempre as empresas informam diretamente o motivo por trás do nome, mas é comum que palavras tenham suas letras invertidas, cortadas ou rearranjadas de alguma forma. Se a descrição do vírus mencionar a presença de algum termo que se assemelhe com o nome, provavelmente está ali a sua origem.
A coluna de hoje fica por aqui. Mas volto na quarta-feira para responder dúvidas feitas por leitores. Se você tem alguma pergunta sobre segurança, incluindo softwares e configuração, deixe-a no espaço para comentários, abaixo. Até a próxima!
* Altieres Rohr é especialista em segurança de computadores. Ele criou e edita o Linha Defensiva, site e fórum de segurança que oferece um serviço gratuito de remoção de pragas digitais, entre outras atividades. Acompanhe também o Twitter da coluna, na página http://twitter.com/g1seguranca.
-----------
Fonte: Globo
Poutez, outro dia dei de cara com o JS/Downloader.gen, o W32.Netsky.a@mm e com o Backdoor.HackDefender. Não soube como reagir, pois eles são muito maliciosos! Mandei catar côcos e eles tiveram um comportamento ambíguo, porém nao resistiram e me deixaram em paz...:-t meda!
ResponderExcluir