Vírus Clássicos
Os vírus de computador podem ser classificados de acordo com seu ambiente e método de infecção. O ambiente de aplicação é o sistema operacional ou aplicativo que qualquer vírus necessita para infectar arquivos dentro destes sistemas. Os métodos de infecção são técnicas utilizadas para injetar código do vírus em um arquivo.
Ambiente
A maioria dos vírus pode ser encontrada em algum dos seguintes ambientes:
Sistemas de Arquivos
Setores de inicialização
Ambientes de macro
Script de host
Os vírus de arquivo utilizam o sistema de um determinado sistema operacional ( ou mais de um) para propagar -se. Os vírus podem dividir -se nas seguintes categorias:
– Vírus que infectam arquivos executáveis (este é o grupo maior de vírus de arquivo);
– Vírus que criam duplicação de arquivos (vírus acompanhantes ou companheiros);
– Vírus que criam cópias de sí mesmo em vários diretórios;
– Vírus que utilizam características dos sistemas de arquivos (vírus de vínculo ou ligação).
Os vírus do setor de inicialização propriamente são escritos ou no setor de boot ou MBR, ou substitui o setor de inicialização ativo. Esses vírus foram difundidos na década de 1990, mas quase desapareceram, desde a introdução de processadores de 32 bits como padrão e a redução de discos flexivéis (disquetes). Embora seja tecnicamente possível escrever vírus de setor de inicialização para CD e USB, flash ROM, contudo não há detecção de tais vírus.
Muitos processadores de texto, aplicações contábeis, de edições e projetos tem scripts de macros incorporados que automatizam sequências utilizadas com frequencia. Estas linguagens de macro são muitas vezes complexas e incluem uma variedade de instruções. Os vírus de macro são escritos em linguagens macro e infectam aplicações com macros incorporadas. Os vírus de macro se propagam aproveitando as propriedades da linguagem macro, a fim de transferir -se de um arquivo infectado para outro arquivo.
Métodos de infecção
Grupos de vírus listados acima podem ser divididos de acordo com a técnica utilizada para infectar objetos.
Virus de arquivo
Os virus de arquivos utilizan os siguintes métodos de infecção:
- Sobreescrita (substituções)
- Parasitário
- Acompanhante (companheiro)
- Vínculos (ligações)
- Módulos de objeto (OBJ, sigla em inglés de módulos de objeto)
- Bibliotecas de Compilação (LIB)
- Código fonte da aplicacão
Sobreescrita
Este é o método mais simples de infecção: O código do vírus substitui o arquivo infectado com o seu próprio, excluindo o código original. O arquivo se torna inutilizável e não pode ser restaurado. Estes vírus são facilmente detectados porque o sistema operacional e os aplicativos afetados deixarão de funcionar pouco depois da infecção.
Parasitário
Vírus parasitas modificam o código do arquivo infectado. O arquivo infectado permanece parcialmente ou totalmente funcional.
Vírus parasitas são agrupados de acordo com a seção do arquivo, de onde se escreveu seu código:
Anexado no início: o código malicioso é escrito no início do arquivo
Anexado no final: o código malicioso é escrito no final do arquivo
Inserção: o código malicioso é inserido no meio do arquivo
Vírus anexados no início
Os vírus anexados no início escrevem seu código para apontar os arquivos de duas formas. No primeiro cenário, o vírus move o código no começo (início) do arquivo utilizado para o final e escreve seu próprio código neste espaço. No segundo cenário, o vírus adiciona o código do arquivo utilizado a seu próprio código.
Em ambos os casos, cada vez que o arquivo infectado é executado, o código do vírus se executa primeiro. A fim de manter a integridade da aplicação, pode ser que o vírus limpe o arquivo infectado, e volte a executar, espera -se que o arquivo se execute e uma vez que se termine este processo, o vírus copiará a sí mesmo novamente para o início do arquivo. Alguns vírus utilizam arquivos temporários para armazenar versões limpas de arquivos infectados. Alguns virus restauram o código da aplicação na memória e reinicializam os endereços necessários do corpo, duplicando, deste modo o trabalho do sistema operacional.
Vírus anexados no final
A maioria dos vírus enquadram nesta categoria. Os vírus anexados no final são escritos no final dos arquivos infectados. No entanto, esses vírus costumam modificar arquivos (mudar o ponto de entrada no cabeçalho do arquivo) para garantir que as instruções contidas no código do vírus a sejam executado antes das instruções de objetos infectados.
Vírus de Inserção
Os criadores de vírus utilizam uma variedade de métodos para inserir vírus no meio de um arquivo. Os métodos mais simples seria mover parte do código do arquivo para o final do arquivo movendo o código original para um lado para criar um espaço para o vírus.
Os vírus de inserção incluem os chamados vírus de cavidade, estes escrevem o seu código nas seções dos arquivos que se encontram vasias. Por exemplo, os vírus de cavidade podem copiar -se em partes não utilizadas de cabeçalhos de arquivos .exe, nos espaços vasios que se encontram entre seções de arquivos .exe ou em áreas de texto de compiladores conhecidos. Alguns vírus de cavidade só infectará arquivos, onde um determinado bloco contenha certo byte, o bloco escolhido será sobreescrito com o código do vírus.
Por último, alguns virus de inserção estarão mal escritos e simplesmente sobreescrevem seções de códigos que são essenciais para que o arquivo infectado funcione. Isto causa que o arquivo seja corrompido de forma irrevocável.
Vírus que ocultam seu ponto de entrada ( Entry point obscuring – EPOs)
Existe um pequeno grupo de vírus parasitários que incluem tanto virus de anexos de início e final que não altera o endereço do ponto de entrada dos cabeçalhos dos arquivos executáveis. Os vírus EPO escrevem o ponto de rotina no corpo do vírus, e no meio do arquivo infectado. O código do vírus é executado apenas e somente, se for chamado a rotina que contém o virus executável. Se esta rotina é utilizada rara vez, (ex. uma notificação de erro pouco comun) um vírus EPO pode permanecer inativo por muito tempo.
Os desenvolvedores de vírus necessitam escolher o ponto de entrada com cuidado: um ponto de entrada mal escolhido pode corromper o arquivo de host ou fazer com que o vírus permaneça inativo o tempo suficiente para exclusão.
Os criadores de vírus usam métodos diferentes para encontrar pontos de entrada úteis:
- Estruturas de busca e sobreescrever com o ponto de inicio infectado
- Desmontar o código do arquivo host
- Ou alterar os endereços das funções de importação
Vírus acompanhantes
Os vírus de companhia não modificam o arquivo host. Em vez disso, crie um arquivo duplicado contendo o vírus. Quando o arquivo infectado é executado, a cópia que contém o vírus é executado primeiro.
Esta categoria inclui vírus que mudam o nome do arquivo host, gravar o novo nome para futura referência e, em seguida substituir o arquivo original. Por exemplo, um vírus poderia mudar o nome para notepad.exe e notepad.exd e escrever seu próprio código para o arquivo com o nome original. Cada vez que o usuário da máquina vítima executar notepad.exe, se executará o código do vírus, executando -se posteriormente o arquivo original Notepad, notepad.exd.
Existem outros tipos de vírus de companhia que utilizam técnicas de infecção originais e exploram vulnerabilidades em sistemas operacionais específicos. Por exemplo, os vírus de companhia de rotas colocam suas cópias no diretório do sistema Windows, explorando o fato de que este diretório é o primeiro da lista de rotas, o sistema começará neste diretório quando Windows. Muitos worms e trojans contemporáneos utilizam, tais técnicas de auto execução.
Outras técnicas de infecção
Alguns vírus não usam arquivos executáveis para infectar um computador, mas simplesmente copiam -se para uma série de pastas, na esperança de que, mais cedo ou mais tarde, seja executado pelo usuário. Alguns criadores de vírus nomeam seu vírus como install.exe ou Winstart.bat para persuadir o usuário a executar o arquivo contendo o vírus.
Outros vírus copiam-se em arquivos como ARJ, ZIP e RAR, enquanto outros escrevem a instrução para executar um arquivo infectado em um arquivo BAT.
Os vírus de ligação não modificam os arquivos hosts. No entanto, obriga o sistema operacional executar o código do vírus, modificando os campos apropriados no sistema de arquivos.
Vírus de inicialização
Os vírus de inicialização são conhecidos por infectar o setor de boot dos disquetes e setor mestre de inicialização (MBR, sigla em Inglês, Master Boot Record) do disco rígido. Os vírus de inicialização atua com base em algoritmos utilizados para iniciar o sistema operacional quando o computador é ligado ou é reiniciado. Uma vez que verificação de memória, discos, etc foi concluída, o programa de inicialização do sistema lê ou encontra o primeiro setor físico do disco de boot (A:, C: o CD-ROM, dependendo dos parámetros configurados ou instalados na configuracão da BIOS e passa a controlar este setor)
Ao infectar um disco, os virus de inicialização substituirá o código por um programa que possibilita controle quando se inicia o sistema. A fim, de infectar o sistema o vírus obrigará o sistema a ler a memória e entregar o controle, não o programa de início original, mas o código do vírus.
Os disquetes somente podem ser infectados de uma forma. O vírus escreve seu código no lugar do código original do setor de inicialização do disco. Os discos rígidos podem ser infectados de três formas: o vírus escreve seu código no lugar do código MBR, o código do setor de inicialização do disco de boot modifica o diretorio do setor da tabela de partição do disco, e na MBR do disco rígido.
Na grande maioria dos casos, ao infectar um disco, o vírus moverá o setor de inicialização original (MBR) para um outro setor de disco, em muitas das vezes para o primeiro que encontra -se vazio. Se o vírus é mais longo do que o setor, então o setor infectado conterá a primeira parte do código do vírus e o resto do código será colocado em outros setores, normalmente nos três primeiros.
Vírus de macro
Os vírus de macro mais difundidos são para as aplicações de Microsoft Office (Word, Excel e PowerPoint) que armazenam informações em formato OLE2 (Enlace e incorporação de objetos, en inglés Object Linking and Embedding). Os vírus para outras aplicações são relativamente pouco comun.
A localização real de um vírus com um arquivo de MS Office depende do formato de arquivo, o que no caso dos produtos da Microsoft é extremamente complexo. Todos os documentos do Word, Office 97 ou tabela Excel consistem de uma seqüência de blocos de dados (cada qual tem seu próprio formato) que estão conectados ou ligados por serviços de dados. Devido à complexidade dos arquivos de Word, Excel e Office 97, é mais fácil usar um diagrama para mostrar a localização de um vírus de macro, nestes tipos de arquivos:
Arquivo de documento tabela sem infecção |
Arquivo de documento tabela com infecção |
||||||||||||||
|
|
Ao trabalhar com documentos e tabelas, MS Office realiza -se várias ações diferentes: a aplicação abre o documento, salva, imprime, fecha-o, etc. MS Word encontrará e executará ou inicializará as macros incorporadas apropriadas. Por exemplo, utilizando a instrução Arquivo / Salvar chamará a macro Arquivo / Salvar, a instrução Arquivo / SalvarComo chamará a macro Arquivo / SalvarComo, e assim sucessivamente, sempre assumindo que tais macros estão definidas e configuradas.
Há também macros automáticas, que serão chamadas automaticamente em determinadas situações. Por exemplo, quando um documento é aberto, o MS Word verificar a presença da macro AutoAbrir do documento. Se encontrar a macro, o Word irá executar. Quando um documento for fechado, o Word executa a macro de fechamento automático. Quando o Word é iniciado, o aplicativo irá executar a macro AutoEjec, etc Essas macros são executadas automaticamente, sem qualquer ação por parte do usuário, assim como as macros ou funções que estão associados com uma chave particular, ou com um tempo de fechamento específico.
Como regra geral, os vírus de macro que infectam arquivos do MS Office utiliza uma das técnicas antes descritas. O vírus conterá uma auto macro ( função automática), uma das normas do sistema de macros (associado a um item de menu) serão redefinidas, ou, o vírus de macro será chamado de forma automática, quando uma determinada tecla ou combinação de teclas forem apertadas. Uma vez que o vírus de macro tenha adquirido o controle, transferirá o seu código para arquivos de outros, geralmente os que estão sendo editados no momento. Em algumas ocasiões os vírus buscarão nos discos e outros arquivos.
Vírus de Script
Os vírus de script são um subconjunto de vírus de arquivos, escritos em uma variedade de linguagens de script (VBS, JavaScript, BAT, PHP, etc.) Eles infectam outros scripts, por exemplo, de instrução e serviços de arquivos do Windows ou Linux, ou fazem parte de multi-componente do vírus. O vírus script pode infectar outros formatos de arquivos, como HTML, se o formato de arquivo permite a execução de scripts.
Fonte: http://www.securelist.com/en/ – Kaspersky Lab