domingo, 22 de julho de 2007

Pragas eletrônicas: ainda não estamos livres delas

No mês em que o primeiro vírus de computador pessoal criado completa 25 anos e um dos mais conhecidos vermes foi lançado, é preciso ficar atento às novas pragas, cada vez mais elaboradas, difíceis de serem detectadas e que trazem até altos prejuízos financeiros.

Relatos de programas que atacam os sistemas computacionais são tão antigos quanto o surgimento dos primeiros computadores pessoais. Em julho de 1982, o Elk Cloner, considerado o primeiro vírus de computador pessoal, foi desenvolvido pelo estudante Rich Skrenta e infectava, utilizando-se de disquetes, os computadores Apple II. No mesmo mês, já em 2001, se teve início a uma das mais rápidas formas de propagação de uma praga através da Internet, causada pelo verme Code Red. Este verme, muito mais nocivo, foi desenvolvido, supostamente, por um grupo de chineses com motivações políticas e tinha como objetivo causar um ataque de negação de serviço (DoS) no site da Casa Branca dos EUA. O Code Red se propagava por meio de uma vulnerabilidade no servidor web IIS da Microsoft e permitia que o invasor executasse remotamente comandos arbitrários na máquina comprometida.

Esses programas são conhecidos como softwares maliciosos ou malwares e são especificamente programados para executar ações danosas em um computador. Os tipos mais conhecidos de malwares são: cavalos de tróia (trojan horses), vírus, vermes (worms), bombas lógicas (logic bombs) e bactérias ou rabbits.

Os cavalos de tróia são programas maliciosos que entram no sistema como se fossem outros programas, aparentemente inofensivos para o usuário, mas podendo criar brechas de segurança (back door) para outros ataques. Eles não se propagam e, portanto, são diferentes dos vírus e vermes. Os cavalos de tróia mais famosos, o Sub7 e o NetBus, são instalados como se fossem programas supostamente úteis, entretanto abrem portas para permitir que o invasor controle remotamente as máquinas contaminadas.

Vírus é um pedaço de código malicioso especialmente desenvolvido para infectar sistemas computacionais. O vírus de computador, análogo ao vírus biológico, infecta o sistema, faz cópia de si mesmo e tenta se espalhar para outros computadores (organismos). Entretanto, ele precisa de uma aplicação hospedeira para se replicar e infectar outros sistemas. Existem diferentes formas para classificação dos vírus de computador, a depender do fabricante de antivírus ou autor, e uma delas é a seguinte:
  • Polymorphic. São vírus que mudam sua forma, encriptando parte do seu código, para evitar detecções pelo software de antivírus. Os vírus polimórficos utilizam a mutação como principal arma contra detecção.
  • Stealth. Os vírus stealth se instalam em setores de inicialização dos discos rígidos ou se movem de um arquivo para outro durante a varredura do antivírus para evitarem ser detectados.
  • Multipartite. Estes tipos de vírus atacam o sistema em diversas formas (setor de inicialização, infecta arquivos executáveis e contaminas arquivos de aplicações), impedindo que o software de antivírus consiga corrigir todos os problemas.
  • Armored. Os vírus armored são projetados para serem difíceis de detectar e analisar. Eles se escondem em códigos protegidos que dificultam os depuradores a examinar elementos críticos do vírus. Esses vírus seguem a premissa de que quanto mais tempo se leva para analisar o vírus, mais tempo o vírus pode viver, e mais tempo ele tem para se replicar e contaminar outros sistemas.
  • Retrovirus. Os retrovírus são anti-antivírus, eles enganam ou atacam os softwares de antivírus instalados no computador, destruindo as bases de definição de vírus.
  • Companion. Estes vírus se anexam a programas legítimos e alteram os ponteiros no registro para os programas infectados. Então quando o usuário vai executar o programa, primeiro o vírus é executado, faz o ataque e somente depois inicia o programa legítimo.
  • Phage. Os vírus do tipo phage atacam programas e base de dados presentes no sistema, contaminando todos os arquivos. A única maneira de excluir o vírus é reinstalar todos os programas que foram infectados.
  • Macro. Os vírus de macro se aproveitam da capacidade que alguns programas têm de executar instruções internas - usadas para otimizar determinadas tarefas - para inserir códigos maliciosos e infectar outros sistemas. Apesar de inicialmente os vírus de macro atacarem editores de texto, hoje, eles podem ser encontrados em outras aplicações como Microsoft Excel, Powerpoint e Outlook.
O verme (worm), diferente do vírus, não precisa de um portador para se replicar. Ele se auto-replica, espalhando-se de um computador para outro e ainda pode conter vírus para infectar os sistemas. Os vermes exploram as vulnerabilidades dos serviços e utilizam quaisquer mecanismos para se propagarem, como TCP/IP, e-mail, serviços de Internet, compartilhamento de arquivos, mídias removíveis e etc.

Abaixo, o diagrama sintetiza as principais diferenças entre cavalos de tróia, vírus e vermes.
Figura 1: Árvore de decisão de um código mal-intencionado
Fonte: Guia de Defesa Profunda com Antivírus Microsoft

As bombas lógicas são programas ou pedaços de código que são executados quando uma determinada condição ocorre. Por exemplo, o verme Code Red pode ser classificado como uma bomba lógica, já que, ataques de negação de serviço são lançados para determinados endereços IPs (execução) entre os dias 20 e 27 dias de cada mês (condição).

As bactérias e rabbits são espécies com códigos maliciosos que têm como objetivo levar a exaustão todos ou parte dos recursos da máquina, criando um ataque do tipo negação de serviço.

As inovações tecnológicas aparecem rapidamente e trazem consigo novas pragas eletrônicas que vêm se desenvolvendo no mesmo ritmo frenético, como é o caso do verme Cabir que infecta alguns telefones móveis que usam o sistema operacional da Symbian – diversos fabricantes de antivírus já lançaram seus produtos para celulares. Surgem também ataques cada vez mais elaborados e que utilizam formas híbridas para exploração de falhas. Em um caso recente, o invasor explora uma vulnerabilidade em um site legítimo e insere códigos iframe que redirecionam os acessos para um servidor malicioso com Mpack – uma central de distribuição de trojans – instalado. Feito isso, o invasor pode facilmente inserir um trojan, como o Trojan.Srizbi, para ser carregado na máquina do usuário. Este trojan altamente complexo é capaz de se esconder no kernel do sistema operacional, o que dificulta a sua detecção e aumenta o seu poder de ataque. Assim como esse, outros ataques da mesma magnitude são comuns na Internet, portanto, é preciso ficar atento a essas pragas que estão cada vez mais sofisticadas.

Em paralelo aos malwares se desenvolveram outros tipos de ameaças, os spywares. Estes tipos de softwares, inicialmente criados para fins comerciais, monitoram o comportamento dos usuários sem o consentimento deles e permitem que empresas vendam estas informações pela Internet. Não obstante, os spywares ainda têm sido usados para roubar informações financeiras e alterar as configurações do computador, instalando outros tipos de softwares ou redirecionando o tráfego web para sites com propagandas. Atualmente, o spyware é a ameaça mais preeminente da Internet e representa uma grande fatia dos crimes cibernéticos. Os crackers utilizam esses tipos de programas, em conjunto com malwares, para criar verdadeiras armas em favor ao crime, a fim de invadir computadores, roubar dados financeiros e pessoais dos usuários, obter informações sensíveis das empresas, entre outros.

Para combater todas essas pragas é necessário atacar em duas frentes, utilizando ferramentas de segurança e atuando na conscientização dos usuários. Deve-se utilizar softwares de antivírus, sempre com as vacinas atualizadas, firewalls pessoais e corporativos, softwares de detecção de intrusão, entre outros. Entretanto, somente essas medidas não são suficientes, também é importante criar um programa de conscientização para com os usuários e desenvolver treinamentos periódicos sobre riscos de segurança, ameaças e formas de combate às pragas eletrônicas.

A luta para combater essas ameaças é uma verdadeira corrida de gato e rato. De um lado, os invasores criam pragas mais modernas, com maiores capacidades de replicação e de “invisibilidade”, buscando não somente dano ao sistema, mas também objetivando o roubo de informações confidenciais das empresas. Do outro lado, a indústria de softwares de segurança da informação, incluindo os fabricantes de antivírus, tentam adaptar seus produtos para esses novos nichos. Porém, é preciso reiterar que nada adiantam investimentos pesados em tecnologia, se não há uma boa política de conscientização e educação aos usuários.

Referências:
M. Bishop, Computer Security: Art and Science, Addison-Wesley (2005)

M. Pastore and E. Dulaney, CompTIA Security+ Study Guide: Exam SY0-101, Sybex (2006)Spam from the Kernel: Full-Kernel Malware Installed by MPack

Spyware from Wikipedia<http://en.wikipedia.org/wiki/Spyware>


Um comentário:

Philipe Gaspar disse...

Agradecimentos pelas dicas de Cristiano da TrendMicro.

Postar um comentário