Vírus, Worms, Trojanos Definições E Arquiteturas De Segurança (Firewall E Proxy)

A internet é grande e complexa. Estão na rede organizações dedicadas ao bem comum como o WWF (http://www.wwf.org) e instituições terroristas. Como um reflexo perfeito da nossa sociedade existem pessoas pesquisando, se divertindo, trabalhando, comprando e roubando.

Como a tecnologia é nova, insipiente, e em franco desenvolvimento, há todo momento surgem novas oportunidades de roubo. Esta mesma novidade dificulta a proteção das pessoas comuns que, na grande maioria das vezes, não entende os conceitos básicos que suportam os processos de navegação. As ameaças mais comuns são vírus, worms e trojanos.

Figura 1 – Vida de Suporte (FARIAS, 2011)

Vírus

Vírus de computador são programas maliciosos desenvolvidos para criar automaticamente cópias de si mesmo em uma máquina específica e, usando um agende de contaminação (rede, dispositivo USB, CD-ROM, etc.) instalar cópias suas no maior número possível de máquinas.

O termo vírus se tornou sinônimo de dificuldade e causador de problemas nos computadores existentes (GONÇALVES, 2002). Todos são programas indesejáveis, não convidados, potencialmente perigosos, porém importantes diferenças existem entre todos eles com relação à manifestação. Um vírus pode infectar arquivos e setores de inicialização de disquetes, discos de armazenamento de dados em microcomputadores pessoais e em servidores de dados, principalmente de correio eletrônico e, neste caso, contaminado por meio de vírus anexados a arquivos que tenham chegado pela Internet. O processo de infecção inclui sobre gravação, superposição e anexação em arquivos. Um vírus de superposição normalmente se instala no início do programa, diretamente sobre o código do programa original, de modo que o programa fica quebrado ou dividido, particionado e quando se tentar executa-lo, nenhuma ação se realiza, com exceção de que o vírus contamina outro arquivo e, deste modo, a infecção se torna completa. Um vírus de anexação simplesmente anexa seu código, ou código capaz de executar o vírus, no início do arquivo infectado.

“1983 – O pesquisador Fred Cohen (Doutorando de Engª. Elétrica da Univ. do Sul da Califórnia), entre suas pesquisas, chamou os programas de códigos nocivos como Vírus de Computador.

1987 – Surge o primeiro Vírus de Computador escrito por dois irmãos: Basit e Amjad que foi batizado como ‘Brain’, apesar de ser conhecido também como: Lahore, Brain-a, Pakistani, Pakistani Brain, e UIU. O Vírus Brain documentado como ‘Vírus de Boot’, infectava o setor de incialização do disco rígido, e sua propagação era através de um disquete que ocupava 3k, quando o boot ocorria, ele se transferia para o endereço da memória “0000:7C00h” da Bios que o automaticamente o executava.

1988 – Surge o primeiro Antivírus, por Denny Yanuar Ramdhani em Bandung, Indonésia. O primeiro Antivírus a imunizar sistema contra o vírus Brain, onde ele extrai as entradas do vírus do computador em seguida imunizava o sistema contra outros ataques da mesma praga.

1989 – Aparece o Dark Avenger, o qual vem contaminando rapidamente os computadores, mas o estrago é bem lento, permitindo que o vírus passe despercebido. A IBM fornece o primeiro antivírus comercial. No início do ano de 1989, apenas 9% das empresas pesquisadas tinha um vírus. No final do ano, esse número veio para 63%.

1992 – Michelangelo, o primeiro vírus a aparecer na mídia. É programado para sobrescrever partes das unidades de disco rígido criando pastas e arquivos com conteúdos falsos em 6 de março, dia do nascimento do artista da Renascença. As vendas de software antivírus subiram rapidamente.

1994 – Nome do vírus Pathogen, feito na Inglaterra, é rastreado pela Scotland Yard e condenado a 18 meses de prisão. É a primeira vez que o autor de um vírus é processado por disseminar código destruidor.

1995 – Nome do vírus Concept, o primeiro vírus de macro. Escrito em linguagem Word Basic da Microsoft, pode ser executado em qualquer plataforma com Word – PC ou Macintosh. O Concept se espalha facilmente, pois se replicam através do setor de boot, espalhando por todos os arquivos executaveis.

1999 – O vírus Chernobyl, apaga o acesso a unidade de disco e não deixa o usuário ter acesso ao sistema. Seu aparecimento deu-se em abril. Sua contaminação foi bem pouco no Estados Unidos, mas provocou danos difundidos no exterior. A China sofreu um prejuízo de mais de US$ 291 milhões. Turquia e Coréia do Sul foram duramente atingidas.

2000 – O vírus LoveLetter, liberado nas Filipinas, varre a Europa e os Estados Unidos em seis horas. Infecta cerca de 2,5 milhões a 3 milhões de máquinas. Causou danos estimados em US$ 8,7 bilhões.

2001 – A “moda” são os códigos nocivos do tipo Worm (proliferam-se por páginas da Internet e principalmente por e-mail). Nome de um deles é o VBSWorms Generator, que foi desenvolvido por um programador argentino de apenas 18 anos.

2007 – Em torno de 2006 e 2007 houve muitas ocorrências de vírus no Orkut que é capaz de enviar scraps (recados) automaticamente para todos os contatos da vítima na rede social, além de roubar senhas e contas bancárias de um micro infectado através da captura de teclas e cliques. Apesar de que aqueles que receberem o recado precisam clicar em um link para se infectar, a relação de confiança existente entre os amigos aumenta muito a possibilidade de o usuário clicar sem desconfiar de que o link leva para um worm. Ao clicar no link, um arquivo bem pequeno é baixado para o computador do usuário. Ele se encarrega de baixar e instalar o restante das partes da praga, que enviará a mensagem para todos os contatos do Orkut. Além de simplesmente se espalhar usando a rede do Orkut, o vírus também rouba senhas de banco, em outras palavras, é um clássico Banker “(MORAES, 2008).

Tipos de vírus de computador

VÍRUS DE BOOT (MASTER BOOT RECORD / BOOT SECTOR VIRUSES)

Todos os discos e disquetes possuem uma área de inicialização reservada para informações relacionadas à formatação do disco, dos diretórios e dos arquivos nele armazenados (registro mestre do Sistema, o Master Boot Record – MBR dos discos rígidos ou a área de boot dos disquetes – Boot Sector). Como essa área é executada antes de qualquer outro programa (incluindo qualquer programa Antivírus), esses vírus são muito bem sucedidos. A disseminação é fácil: cada disquete não contaminado, ao ser colocado no drive e ser lido pode passar a ter uma cópia do código e, nesse caso, é contaminado e passa a ser um “vetor” (MENEGUITE e MONTEIRO, 2008).

VIRUS DE PROGRAMAS AUTOEXECUTÁVEIS

Uma variação do vírus de boot. Com o advento das mídias removíveis como o CD-ROM e o DVD, que foram criados para execução de músicas e vídeos, as empresas produtoras de sistemas operacionais, notadamente a Microsoft, criaram um protocolo para inicialização automática destes dispositivos. Não demorou muito para que estas mídias fossem usadas para o transporte de dados e para que fossem criados vírus capazes de modificar os arquivos de inicialização automática para incluir funções maliciosas. Em geral, uma vez instalados, a infeção se dá através da rede ou da gravação de novos CDs que levam o arquivo de inicialização infectado.

VÍRUS DE PROGRAMA (FILE INFECTING VIRUSES)

Os vírus de programa infectam – normalmente – os arquivos com extensão.exe e.com (alguns contaminam arquivos com outras extensões, como os .dll, as bibliotecas compartilhadas e os .ovl). Alguns dos vírus de Programa vão se reproduzindo até que uma determinada data, ou conjunto de fatores, seja alcançado. Somente aí é que começa a sua ação. A infecção se dá pela execução de um arquivo já infectado no computador. Há diversas origens possíveis para o arquivo infectado: Internet, Rede Local ou um disquete (MENEGUITE e MONTEIRO, 2008).

VÍRUS MULTIPARTITE

É uma mistura dos tipos de boot e de programa, podendo infectar ambos: arquivos de programas e setores de boot. São mais eficazes na tarefa de se espalhar, contaminando outros arquivos e/ou discos e são mais difíceis de serem detectados e removidos (MENEGUITE e MONTEIRO, 2008).

VÍRUS DE MACRO

Quando se usa alguns programas, por exemplo, um editor de texto, e necessita-se executar uma tarefa repetidas vezes em sequência (por exemplo, substituir todos os “vc” por “você”) pode-se editar um comando único para efetuá-las. Esse comando é chamado de macro. Os vírus de macro atacam justamente esses arquivos comprometendo o funcionamento do programa. Os alvos principais são os próprios editores de texto (Word) e as planilhas de cálculo (Excel) (MENEGUITE e MONTEIRO, 2008).

A evolução dos vírus é rápida e, como pudemos ver na breve história anteriormente, a capacidade criativa dos desenvolvedores é grande. Esta variedade e velocidade tornam quase impossível a classificação exata dos vírus de computador.

Antivírus

São programas especiais, geralmente residentes em RAM e executados em background, capazes de detectar ameaças diversas a máquina. No caso específico dos vírus estes programas adotam estratégias diversas. Não podemos deixar de ressaltar que estas estratégias são conhecidas e que os criadores de vírus passam a maior parte do tempo buscando alternativas para contorna-las.

Um vírus de computador é um programa como qualquer outro. Uma vez que seja identificado, seu código pode ser cadastrado, criando-se uma assinatura típica, eventualmente como o uso de algoritmos de hash, de forma que sempre que uma determinada amostra de código apresente a mesma assinatura, seja enviando um alerta de vírus. Para combater esta técnica de detecção os vírus adotaram o polimorfismo. Ou seja, pequenas alterações no seu próprio código, recolhendo informações específicas da máquina infectada, que tornariam essa detecção de assinatura impossível.

Para combater este polimorfismo, os programas de antivírus passaram a fazer esta detecção de código de forma heurística. Este combate heurístico consiste no uso de complicados algoritmos matemáticos que, baseados em uma biblioteca de ações, observam o comportamento dos programas instalados em busca de comportamentos específicos de um determinado vírus. Observe que neste caso, os antivírus não estão preocupados em detectar um vírus, mas, detectar um comportamento malicioso que pode indicar a existência de um vírus. Desta forma, por exemplo, qualquer tentativa de alterar um arquivo de boot, ou de inicialização, ou qualquer DLL do sistema, ou busca de informações em caixas postais gerará um aviso de vírus.

Novamente a competição entre os produtores de software antivírus e os produtores de vírus é constante e ferrenha. Não é possível abrir mão do antivírus e, não é possível relegar a segurança da instituição a antivírus de servidor.

Trojanos

O nome é originado da história do cavalo de Troia. Surge naturalmente quando percebemos que este tipo de ameaça é caracterizado pela inclusão de código malicioso em mensagem, códigos e dados inocentes. Originalmente os trojanos, ou troianos, em bom português, foram códigos maliciosos incluídos em programas de reprodução de vídeos, imagens ou sons. Um vídeo sobre uma personalidade, ou um programa para proteção de tela ou mesmo um pequeno aplicativo de jogos. A intenção sempre foi utilizar um momento de curiosidade para incluir um código malicioso na máquina do usuário.

O combate aos trojanos é feito pelos antivírus. Principalmente de forma heurística. Assim que um comportamento malicioso, ou assinatura de código, é descoberta, o software antivírus gera um alerta e, em muitos casos, recolhe o aplicativo em um ambiente controlado chamado de ambiente de quarentena.

Worm

O Worm (verme em inglês) é um programa desenhado para se reproduzir rapidamente utilizando a uma rede TCP/IP. Possui características semelhantes aos vírus a grande diferença é que eles não dependem da ação humana. Ou seja, trata-se de um programa autônomo, robô, capaz de navegar em uma rede e reproduzir a si mesmo.

“Geralmente o worm não tem como consequência os mesmos danos gerados por um vírus, como por exemplo a infecção de programas e arquivos ou a destruição de informações. Isto não quer dizer que não represente uma ameaça à segurança de um computador, ou que não cause qualquer tipo de dano.

Worms são notadamente responsáveis por consumir muitos recursos. Degradam sensivelmente o desempenho de redes e podem lotar o disco rígido de computadores, devido à grande quantidade de cópias de si mesmo que costumam propagar. Além disso, podem gerar grandes transtornos para aqueles que estão recebendo tais cópias. (CERT, 2009)

Não podemos abrir mão dos antivírus como camada de proteção contra worms. Existem alguns que se propagam via e-mail, ou mesmo via sites maliciosos. No entanto, a primeira linha de defesa deve ser feita pelo uso de firewall e proxies.

Firewall e Proxies

Firewall é um serviço de rede fornecido por aplicativos que filtram todos os acessos externos as portas TCP/IP de uma rede específica No mundo open source, o IPTables é, provavelmente, o mais importante aplicativo de firewall disponível. Trata-se de um programa que, constantemente, monitora todos os pacotes de informação que circulam pela máquina em busca de pacotes maliciosos, ou que violem as regras explicitadas pelo administrador de rede.

“Os firewalls podem efetuar a triagem do trafego que entra ou sai de uma organização, muitas vezes com base no protocolo e na porta utilizados”. (TANENBAUM, 1998)

Por outro lado, os proxies são serviços de acesso à rede de forma segura. O usuário não acessa a internet diretamente. Ele acessa um serviço e este serviço acessa a rede em seu nome. Desta forma o administrador de rede tem a oportunidade de filtrar sites, arquivos e aplicativos que possam apresentar riscos de segurança.

Atualmente, graças à evolução dos softwares livres, estes serviços estão misturados e a fronteira entre eles não é muito clara. Em geral estão incluídos nos sistemas operacionais de servidores e existem tanto distros quanto aplicativos específicos que tentam melhorar a eficiência destes serviços. Neste ambiente, destaca-se o IPCop.

O IpCop (http://www.ipcop.org/) é uma distro GnuLinux, voltada para segurança que inclui, tanto os softwares responsáveis por fornecer os serviços de firewall e proxy quanto outros serviços relacionados a segurança. Na Figura

Figura 7 – Esquema de Firewall usando o o IPCop (RODRIGUES, 2010)

Bibliografia

CERT. Worms. Centro de Estudos, Resposta e Tratamento de Incidentes de Segurança no Brasil, 2009. Disponivel em: <http://cartilha.cert.br/malware/sec6.html>. Acesso em: 1 Outubro 2011.

FARIAS, A. Tirinhas. Vida de Suporte, 2011. Disponivel em: <http://vidadesuporte.com.br/tag/tirinhas/>. Acesso em: 19 Novembro 2011.

MENEGUITE, R. L.; MONTEIRO, A. B. TCC – Segurança da Informação. CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS, 2008. Disponivel em: <http://www.rlmti.com/documentos/Monografia_SegInfDoc.pdf>. Acesso em: 15 Outubro 2011.

MORAES, A. F. D. Redes de Computadores: Fundamentos. 6ª. ed. São Paulo: Érica, 2008.

RODRIGUES, L. D. S. IpCop – Um firewall personalizado. Viva o Linux, 2010. Disponivel em: <http://www.vivaolinux.com.br/artigo/IpCop-Um-firewall-personalizado>. Acesso em: 20 Outubro 2010.