Superdownloads.com.br
Encontre softwares para download

Assinaturas de vírus - Parte I

Entenda o que são as assinaturas de vírus e como os antivírus as identificam

Da redação em 28/Jun/2004

Estaremos publicando uma série de matérias técnicas à respeito das assinaturas de vírus. Esses textos servem para informar os usuários o funcionamento interno dos softwares antivírus bem como ajudar no entendimento do assunto em si. Essa matéria é uma continuação de outra no qual expliquei o funcionamento interno de detecção dos antivírus e pode ser lida clicando aqui.

A técnica mais antiga e utilizada para detecção de vírus é também uma das mais desconhecidas a nível técnico, pois existe pouca documentação sobre o assunto. Conheça o que são as assinaturas de vírus, como são identificadas, como são definidas e como os antivírus fazem uso da tecnologia.

O que são as assinaturas?
Podemos definir as assinaturas como uma seqüência de caracteres que representam um determinado vírus, um tipo de marca que os antivírus usam para conseguir identificar um arquivo contaminado. Na maioria dos casos, os vírus repetem seu próprio código que é passado de arquivo para arquivo durante a infecção e com isto, sua "marca" é facilmente identificada.

Exemplo prático

Vamos utilizar alguns vírus reais, com poucos bytes de tamanho, para demonstrar o funcionamento interno das assinaturas. O vírus a seguir é conhecido como Kode4.281 e é identificado pelos antivírus com os seguintes nomes:


Este vírus de MS-DOS contém apenas 284 bytes de tamanho (os dados serão apresentados usando base hexadecimal para facilitar a visualização e o entendimento) e seu conteúdo original é:


Para encontrar as assinaturas foi desenvolvido um programa especial, que denominei DISSECADOR, o qual tentará localizá-las independentemente do antivírus a ser utilizado.

A técnica utilizada pelo dissecador é simples: vai zerando os bytes do vírus e fazendo a pesquisa com o antivírus. Se depois de zerado um byte o vírus ainda for encontrado, significa que aquele byte não é necessário na assinatura, caso contrário, ele manterá o byte, pois ele faz parte da assinatura. Isto será feito do início ao fim do vírus e fará com que fiquem somente as partes necessárias para identificá-los. Veja o funcionamento do dissecador:


Agora apresento as assinaturas identificadas após o processamento do dissecador:

Kaspersky AVP


GeCad RAV


Mcafee Viruscan

Um pequeno resumo das assinaturas, para melhor visualização:


Como se pode notar, as assinaturas variam de antivírus para antivírus (o que a maioria das pessoas desconhecem) e são escolhidas de forma que sigam as seguintes regras:

  • Evitem ao máximo os falsos-positivos (explicação em seguida);
  • Possam reconhecer o maior número de variantes de vírus possíveis;
  • Reconheçam o vírus em uma quantidade máxima de arquivos contaminados;

A maior preocupação em escolher uma assinatura ideal é, sem dúvida, o problema de detecção de falsos-positivos. E o que vem a ser os falsos-positivos? Falsos-positivos são arquivos sadios, mas que são apresentados como contaminados. Isto costuma ocorrer quando os antivírus escolhem mal suas assinaturas ou que a assinatura escolhida tenha partes idênticas em um arquivo sadio.

Quanto menor a assinatura escolhida, maior a probabilidade de ocorrer um falso-positivo. Um teste ideal para evitar falsos-positivos é ter milhares de arquivos sadios e após escolher uma assinatura, fazer um teste de verificação nos mesmos, para tentar identificar algum vírus, ou seja, algo que não pode acontecer.

Veja um exemplo real de um falso-positvo: Tenho um arquivo chamado ONDE.COM, que serve pra ajudar ao usuário a encontrar arquivos. É um programa para MS-DOS muito antigo, com apenas 418 bytes e seu conteúdo é:


O antivírus Kaspersky AVP identifica-o como HLLP.Toadie.7800.a:

Vamos usar o dissecador para identificar sua assinatura:

A assinatura usada pelo Kaspersky AVP para identificar o vírus HLLP.Toadie.7800.a possui 64 bytes e possivelmente deve ter o mesmo conteúdo do arquivo sadio ONDE.COM. Ou seja, mesmo uma assinatura de 64 bytes poderá fazer com que um arquivo sadio seja confundido com um vírus. Qual a solução para este problema? Simples, escolher uma nova assinatura. Um único byte modificado numa assinatura poderá fazer com que o antivírus não detecte o vírus. Este método é usado por muitos escritores de vírus, para criar novas variantes de seus vírus e burlar os antivírus.

Uma maneira utilizada para reduzir os problemas de falsos-positivos é separar as assinaturas conforme o tipo de arquivo, com isso, uma assinatura separada para um arquivo .DOC do Word por exemplo, não será pesquisada em um arquivo .EXE e vice-versa.



Ofertas








Comente

Você não está logado! Clique aqui para fazer o login e poder enviar seu comentário.

Ainda não há comentários sobre o Assinaturas de vírus - Parte I.

Superdownloads.com.br
Softwares Windows Downloads Windows Softwares Linux Downloads Linux Softwares Online Downloads Online Softwares Mac Downloads Mac Superdownloads Mais seções