Medidas Antivírus

Geral

Acesso

Limite o acesso a cada máquina aos usuários autorizados.

Se a chave da sala não oferecer bastante proteção, considere o uso de contas e senhas e/ou uma senha do BIOS, guardando as senhas do sistema (root/administrador e BIOS) num canto seguro.

Não coloque crianças para brincar nos computadores.

Backups

Faça backups de dados e documentos importantes.

Aplicativos e Serviços Mínimos

Somente instale aplicativos (programas) e serviços (como compartilhamento de arquivos) necessários.

Atualização

Atualize o sistema operacional e os aplicativos regularmente.


Windows

Atualizar Windows

Procure atualizações a cada semana:

  1. Abra Internet Explorer, escolha "Ferramentas|Windows Update", e faça as Atualizações Críticas;

  2. Repita até que o número de Atualizações Críticas seja zero (às vezes há atualizações de atualizações).

(Outros modos, como "Iniciar|Windows Update" ou o programa "Critical Update Notification", às vezes funcionam).

Não Compartilhar Arquivos e Impressoras se for Possível (Windows 95/98/ME)

Se sua máquina não precisar compartilhar arquivos ou impressoras com outras máquinas, feche as portas do Microsoft NetBIOS assim:

  1. Abra "Iniciar|Configurações|Painel de Controle|Rede|Configuração";

  2. Remover "Clientes para redes Microsoft";

  3. Remover qualquer outra linha contendo "Microsoft" ou "Windows";

  4. Se tiver somente uma placa de rede (sem modem etc), devem sobrar somente duas linhas:

  5. Clique OK.

  6. Clique Sim na janela "A sua rede não está completa. Deseja continuar?"

Não Oferecer Serviços Desnecessários (Windows XP/2000)

Windows XP/2000 oferece muitos serviços desnecessários na sua configuração padrão. Os serviços da rede abrem portas vulneráveis a ataques de hackers ou vermes (como W32/Blaster). Esta página descreve como fechar estas portas, desabilitando os serviços associados.

Se sua máquina não precisar compartilhar arquivos ou impressoras com outras máquinas, desabilite todos os serviços da rede.

Se sua máquina precisar compartilhar arquivos ou impressoras com outras máquinas, deixe somente o serviço NetBIOS over TCP/IP (NetBT), associado às portas 137,138,139.

Atualizar e Rodar Antivírus

AVG (com free download e updates), Norton, McAfee e Kaspersky  são os antivírus mais conhecidos. Procure atualizações a cada semana, caso seu antivírus não se atualize automaticamente.

Escaneie seu computador:

Se descobrir um vírus, tente limpar e procure por informações sobre o tipo de infecção. Em certos casos, o antivírus não pode curar todos os problemas e será necessário salvar dados importantes, formatar o disco rígido e instalar tudo do zero.

Adware e Spyware

Adware (programas que mostram propaganda não solicitada) e Spyware (programas que juntam informações particulares e mandam para companhias sem autorização explícita) não são vírus, propriamente ditos, pois o objetivo deles é puramente comercial, como o spam.

Mas estes programas, além de irritar e invadir a privacidade, consomem recursos como CPU, memória e espaço no disco. Nos piores casos (por exemplo, lop.com e xupiter) viram quase vírus, desde que a máquina infectada não funciona como devia. Aliás, algumas companhias de antivírus estão começando a incluir medidas contra estes programas. Por enquanto, programas como Spybot Search and Destroy (free download e updates) são úteis para detectá-los e tentar eliminá-los.

Firewall Local

Programas como ZoneAlarm (free download) funcionam como um firewall local para Windows, filtrando as comunicações entrando e saindo da máquina. Não são perfeitos, e às vezes atrapalham a comunicação normal, mas talvez seja interessante instalar um programa deste tipo durante uns dias para ver se há outras máquinas na rede interna atacando a sua, ou se um programa local está querendo efetuar uma comunicação sem a devida autorização.

Startup Programs

Windows roda vários programas automaticamente quando se inicializa. Poucos são necessários (ScanRegistry), alguns são úteis (TaskMonitor, SystemTray, LoadPowerProfile, um antivirus), mas muitos são desnecessários ou malignos, enchendo a memória, observando as ações do usuário, mostrando propaganda, mandando informações para fora etc. Os programas antivírus e antispy servem para limpar os piores programas malignos conhecidos, mas o ideal é tirar todos os parasitas da sua máquina.

Tem um resumo e uma lista detalhada destes programas na rede: observe que alguns viri e programas spyware usam nomes aleatórios para seus executáveis.

Para ver os startup programs use Startup Cop (free download) ou, em Windows 98, o programa msconfig. Desabilite todos os itens não classificados como necessários (Y) ou utéis (U) na lista detalhada.

Tasks

Nem sempre os programas desnecessários ou malignos começam a rodar quando o Windows se inicializa. Para ver uma lista (Task List) dos programas rodando a qualquer momento, tecle "Ctrl+Alt+Del" (Windows 95/98/ME), ou clique (botão direito) na barra de tarefas e escolha "Task Manager" (Windows NT/2000/XP).

Desinstalar Aplicativos Desnecessários

Cada aplicativo representa um certo perigo: pode ser contaminado e/ou pode ter buracos exploráveis por um hacker. Não instale aplicativos desnecessários e, de vez em quando, clique "Iniciar|Configurações|Painel de Controle|Adicionar/Remover Programas" e desinstale quaisquer programas desnecessários.

Office

Os viri podem explorar vulnerabilidades no Microsoft Office e em outros aplicativos, valendo à pena procurar atualizações (para Office no Central de Download) de vez em quando.

Os documentos do Office (Word, Access, Excel) também podem conter vírus nos programinhas embutidos chamados macros:

Evitar o Uso de Aplicativos Microsoft

Os aplicativos da Microsoft são populares e assim são alvos de muitos hackers. Além disso, aplicativos como Internet Explorer e Outlook Express são conhecidos como altamente vulneráveis pois sacrificam segurança em favor de facilidade de uso. A Microsoft está tentando melhorar a segurança dos seus produtos, mas por enquanto os alternativos como Netscape são mais seguros.

Extensões de Nomes de Arquivos

Em Windows (e DOS) cada nome de arquivo tem a forma nnnnnn.xxx, onde xxx (chamado extensão) identifica o tipo do arquivo. Por exemplo, .doc é um documento Word, .exe é um programa normal, .vbs é um script (programa) de Visual Basic, .jpg é uma imagem formato JPEG, etc.

Normalmente Windows esconde a extensão quando mostra o nome de um arquivo. Muitos hackers aproveitam-se deste comportamento para fingirem que um vírus (em E-mail ou numa página na rede) é uma coisa inocente. Por exemplo, eles usam um nome como imagem.jpg.exe, que na realidade é um programa, mas que o Windows mostra como imagem.jpg. O usuário clica, fica confuso com os avisos, e roda o vírus que talvez mostra uma imagem para se esconder melhor.

Para exibir as extensões dos arquivos em Windows Explorer, clique "Exibir|Opções de Pasta", apague "Ocultar extensões para os tipos de arquivos conhecidos", e clique "Redefinir todas as pastas".

Windows XP Universal Plug 'n Play (UPnP)

Dependendo da configuração, MSN Messenger (embutido em Windows XP) manda uma seqüência contínua (um por segundo) de pacotes direcionados à porta 1900 do firewall. Porta 1900 é do Simple Service Discovery Protocol (SSDP), usado pelo sistema Universal Plug and Play (UPnP) da Microsoft. Veja esta discussão do problema, e  este site que descreve UPnP como "inseguro, fácil de atacar e provavelmente desnecessário".

O firewall bloqueia todo o tráfego da máquina de origem pois parece um ataque, e, além disso, o processo ocupa recursos da máquina tentando fazer algo que nunca vai conseguir. Ao mínimo, é necessário inibir a transmissão de pacotes SSDP direcionados ao firewall, mas é mais seguro desabilitar UPnP e SSDP totalmente.

Para desabilitar UPnP e SSDP totalmente, baixe e abra upnp.reg. Desconecte sua máquina da rede durante 10 minutos, faça um restart, e conecte de novo.

Para simplesmente inibir a transmissão de pacotes SSDP direcionados ao firewall, baixe e abra upnpmin.reg. Desconecte sua máquina da rede durante 10 minutos, faça um restart, e conecte de novo.

Windows 95/98 e Media Player 9

Há uma incompatibildade entre Windows 95/98 e Windows Media Player 9 que causa uma seqüência de pacotes direcionados à porta 80 do firewall. Além de encher o log do firewall (pois parece um ataque como Code Red) ocupa recursos da máquina de origem tentando fazer contato com um proxy de http que não existe.

Tem duas soluções ao problema:
  1. Ficar com Windows 95/98 e usar Windows Media Player 7, Winamp e/ou RealOne em vez de Media Player 9.
  2. Instalar Windows 2000/XP e continuar usando Windows Media Player 9.

Instalação de Windows

Para evitar infecção durante o processo de (re)instalação de Windows:

  1. Desligue a máquina da rede (tire o cabo Ethernet).

  2. Instale Windows do CDROM (de preferência, sem Outlook Express).

  3. Instale drivers não incluídos em Windows do CDROM ou dos disquetes.

  4. Desabilite compartilhamento de arquivos e impressoras (95/98/ME) ou todos os serviços da rede (2000/XP).

  5. Ligue a máquina à rede e verifique que comunicações estão permitidas pelo firewall.

  6. Atualize Windows (veja).

  7. Instale e atualize um antivírus (veja) e um antispy (veja).

  8. Instale os aplicativos necessários como Office e Netscape.
    (Neste ponto é uma boa idéia usar os startup programs e tasks normais como referência).

  9. Se for necessário, abilite e configure serviços como compartilhamento de arquivos e/ou impressoras.


Unices (Linux, FreeBSD...)

Os unices (sistemas operacionais da família Unix) são menos vulneráveis ao tipo de vírus que ataca o Windows, mas as configurações padrões nem sempre são as mais seguras, particularmente contra ataques sofisticados pela rede.

AusCERT oferece uma lista ampla de medidas de segurança para os Unices, inclusive links para as páginas específicas de segurança de cada sistema.

Atualizar

Procure atualizações do sistema e dos aplicativos distribuídos cada semana.

Limitar Permissões de Arquivos de Usuários

As permissões padrões de muitos Unices deixam qualquer usuário ler e executar arquivos dos outros usuários. Isto facilita a troca de informações, mas não é seguro no caso de invasão, nem em termos de privacidade.

Para modificar as permissões padrões, é necessário trocar o comando "umask 022" por "umask 077" nos scripts de inicialização. No caso de Linux, /etc/login.defs também precisa da linha "UMASK 077" em vez de "UMASK 022".

Para modificar as permissões dos arquivos existentes de um usuário, use o comando "chmod -R go-rwx xxxx", onde xxxx é o diretório do usuário.

Proteger Arquivos Críticos

Proteja os arquivos críticos do sistema em termos do dono dos mesmos e das permissões, inclusive depois de atualizações.

Não Oferecer Serviços Desnecessários

Um programa (daemon) que oferece um serviço a outras máquinas (clientes) espera por pacotes vindos destes clientes numa porta específica (well-known port) associada ao serviço (o arquivo /etc/services tem uma lista destas associações). Dizemos que o programa está escutando na porta aberta.

Para serviços não freqüentes, é possível delegar a espera a um daemon chamado inetd que escuta em várias portas e chama o programa que oferece o serviço quando chegar um pacote para sua porta.

Cada porta aberta representa uma oportunidade para se tentar invadir a máquina, aproveitando-se de falhas no programa de serviço ou na sua configuração. Por isso, é aconselhável fechar as portas associadas a serviços desnecessários.

Use o comando "netstat -nlp --ip" (Linux) para ver as portas abertas e os daemons escutando, e desabilite todos os serviços desnecessários, inclusive:

Também, para ter mais segurança, comente todas as linhas de /etc/inetd.conf e desabilite inetd.

Se o sistema X de janelas estiver escutando na porta 177 (xdmcp) é aconselhável fechar este buraco com o parámetro "-nolisten tcp" do comando /usr/bin/X11/X nos scripts dos subdiretórios de /etc/X11 ou /etc/kde*.

Configurar Serviços Necessários de Modo Seguro

Use tcp_wrapper para filtrar acesso a serviços comuns:

Use medidas extras para serviços específicos:

Nameserver dns
(bind)

No servidor /etc/bind/named.conf:
allow-transfer { none; }; ou allow-transfer { xxxx; };
allow-recursion { yyyy/zz; };
onde xxxx é o endereço do secundário,
e yyyy/zz (eg 200.17.35/24) são as máquinas que podem pedir recursão.

Impressora Compartilhada (lpd)

No cliente, /etc/hosts.lpd deve estar vazio.
No servidor, /etc/hosts.lpd deve ter uma linha por cliente, contendo seu nome inteiro (fully qualified domain name).

Arquivos Compartilhados
(nfs)

No servidor, /etc/exports deve especificar os filesystems exportados e os clientes.

Usuários Compartilhados
(nis)

No cliente, /etc/yp.conf deve especificar o servidor.
No servidor, /etc/ypserv.securenets deve especificar os clientes.

Verificar Aplicativos Não-Distribuídos

Para verificar que um arquivo contendo a fonte ou o binário de um aplicativo não foi contaminado por um hacker, as seguintes técnicas (utilizadas de modo automático pelos distribuidores dos Unices) são disponíveis:

Hashcode
Este é um número (de tamanho constante em termos de bits) que é uma função do conteúdo do arquivo, gerado por um algoritmo desenhado para minimizar a possibilidade de duplicação. Os algoritmos mais usados são MD5 (128 bit hashcode) e SHA1 (160 bit hashcode). Às vezes o hashcode é chamado o fingerprint (impressão digital) ou digest (resumo) do arquivo original. Os programas md5sum (MD5) ou openssl (MD5, SHA1 e outros) geram o hashcode de um arquivo. Um hashcode correto (igual ao original) significa que o arquivo não foi corrompido por erros de transmissão, e que o arquivo somente foi contaminado se o hacker conseguiu, ao mesmo tempo, modificar o hashcode original.

Criptografia Assimétrica
Esta envolve a geração de um par de chaves (pública e secreta), tal que uma mensagem codificada com a chave pública só pode ser decodificada com a chave secreta, e uma mensagem codificada com a chave secreta só pode ser decodificada com a chave pública. No primeiro caso, é possível mandar mensagens para o dono da chave que somente ele pode ler. No segundo caso, é possível receber mensagens do dono da chave que somente ele pode ter escrito, possibilitando a verificação da origem de um arquivo. Em vez de codificar o arquivo inteiro (uma operação bastante pesada), a técnica normal é codificar somente seu hashcode com a chave secreta. Um hashcode codificado assim é chamado uma digital signature (assinatura digital) do arquivo original. Os programas gnupg (texto) ou gpa, gnomePGP, KGpg (GUI - Graphical User Interface) verificam a assinatura digital de um arquivo. Uma assinatura digital correta significa que o arquivo não foi corrompido por erros de transmissão, e que o arquivo somente foi contaminado se o hacker conseguiu, ao mesmo tempo, modificar a assinatura digital e trocar a chave pública do dono do arquivo por uma chave dele.

Evite o uso de aplicativos cujos arquivos não têm métodos de verificação. Em particular, não instale aplicativos pirateados como root nem com permissões de root. Se for possível, use hashcodes e assinaturas digitais para verificar aplicativos não-distribuídos, como no exemplo que se segue.

Exemplo de Verificação

Os detalhes de verificação variam entre sites, mas um bom exemplo é o openssl, que oferece ambas as técnicas de verificação. Este site também é interessante pois, há uns meses atrás, um hacker conseguiu substituir o arquivo contendo a fonte de openssl por um arquivo contaminado: quem baixou e instalou sem verificar ficou com seu sistema de portas seguras (Secure Socket Layer) comprometido; quem baixou e verificou teria detectado a contaminação e protegido seu sistema.

O site oferece um hashcode md5 do arquivo fonte de cada versão, por exemplo openssl-0.9.7b.tar.gz.md5 contém o hashcode de openssl-0.9.7b.tar.gz - depois de baixar os dois arquivos, os comandos:

md5sum openssl-0.9.7b.tar.gz | awk '{print $1;}' | cmp - openssl-0.9.7b.tar.gz.md5

ou

openssl md5 < openssl-0.9.7b.tar.gz | cmp - openssl-0.9.7b.tar.gz.md5

verificam que os dois arquivos formam um par autêntico e que não houve erros de transmissão. Ainda é possível que um hacker tenha conseguido substituir os dois arquivos, mas uma pesquisa Google de "md5 openssl-0.9.7b" identifica várias páginas anunciando o lancamento desta versão de openssl com o mesmo md5 (fae4bec090fa78e20f09d76d55b6ccff) e é quase impossível que o hacker tenha identificado e modificado todas estes sites ao mesmo tempo.

O site oferece uma assinatura digital do arquivo de fonte de cada versão. Por exemplo, openssl-0.9.7b.tar.gz.asc contém a assinatura de openssl-0.9.7b.tar.gz - depois de baixar os dois arquivos, o comando:

gpg --keyserver pgp.mit.edu openssl-0.9.7b.tar.gz.asc

determina a identificação (E06D2CB1) da chave usada, importa a chave pública do servidor pgp.mit.edu (existem outros servidores de chaves como search.keyserver.net), e verifica que a assinatura é boa. Ainda é possível que um hacker tenha conseguido substituir os dois arquivos, usando sua propria chave para assinar, mas a identificação do dono da chave (levitte@openssl.org) corresponde ao Richard Levitte da equipe de OpenSSL. Também uma pesquisa Google de "Richard Levitte pgp key" identifica a página dele com a mesma chave. Então a chave parece confiável e o comando:

gpg --edit-key levitte@openssl.org
Command> lsign
Command> save

pode ser usado para assiná-la no chaveiro local. Assim gpg verificará outros arquivos assinados usando esta chave sem avisar desconfiança, por exemplo  com o comando:

gpg openssl-engine-0.9.6j.tar.gz.asc

depois de baixar openssl-engine-0.9.6j.tar.gz e sua assinatura openssl-engine-0.9.6j.tar.gz.asc.