Revista Do Linux  
EDIÇÃO DO MÊS
  Perl
  Estudo de Caso
  Delphi para Linux
  Entrevista
  CD do mês
  Programas Matadores
  Interfaces Gráficas
  Hardware
  Segurança
  Expressões Regulares

Questão de bom senso
Segurança de rede é uma preocupação que deve ser compartilhada por todos, inclusive pelo usuário final

Hoje em dia, uma conexão permanente à Internet está ao alcance de qualquer organização, e de praticamente qualquer indivíduo. Ao mesmo tempo, as conexões temporárias (discadas e similares) permitem níveis de serviço impensáveis há poucos anos.

Paralelamente a isso, muitos dos sistemas operacionais utilizados nos computadores conectados diretamente à rede continuam vindo com uma série de funcionalidades e facilidades pré-ativadas que não contribuem para a criação de um ambiente seguro. É bom lembrar que o projeto de segurança trabalha com a premissa de que a segurança e a conveniência (do ponto de vista do usuário final) são inversamente proporcionais.

Além desses fatores, há um terceiro que deve ser considerado. Hoje, comprar um computador e colocá-lo na rede está ao alcance de um público muito grande, que geralmente não vai contar com a ajuda de um profissional do ramo antes de conectar-se à rede de seu condomínio ou conjunto empresarial.

Diante disso, conclui-se que a segurança de rede é uma preocupação que deve ser compartilhada por todos, inclusive pelo usuário final. Por mais seguro que um sistema operacional seja, as atitudes de um administrador sem treinamento formal ou até mesmo informal podem transformá-lo em uma fortaleza de portas escancaradas, pronto para receber todo tipo de ataque e invasões.

Administração de redes e o bom senso

Muitas das tarefas da administração segura de redes se resumem à pura e simples aplicação do bom senso ou senso comum. É lógico que se você armazena dados valiosos (ou que de alguma forma interessem a um potencial invasor), você terá que tomar maiores precauções de segurança. Mas isto não quer dizer que se você só armazena dados públicos, poderá se descuidar — muitas invasões ocorrem por puro e simples "esporte", sem interesse em obter nenhum dado ou recurso da sua rede. E são essas as invasões que mais comumente resultam em perda grave de dados.

Contar com o apoio de um profissional da administração de redes é altamente desejável, mas realmente não está ao alcance de todos os usuários e organizações. Mas mesmo na ausência de um profissional, você deve procurar se informar (ei, você está lendo um artigo sobre segurança, e isto já é um ótimo começo!), e manter seu sistema sempre atualizado.

É justamente o bom senso que falta a alguns administradores de pequenas redes. A falta de preocupação com o valor das informações, e o foco no custo fazem, por exemplo, com que se "economizem" alguns reais na compra de um gravador de fita DAT que poderia ser usado para armazenar cópias diárias de todos os seus arquivos, um procedimento simples, facilmente automatizável (você só tem que trocar as fitas todos os dias, o sistema faz o resto sozinho), e com baixo custo de manutenção.

Na verdade, uma demonstração desta mesma falta de bom senso motivou o surgimento deste artigo. Uma pessoa encarregada da administração da rede de uma empresa percebeu que sua rede estava sendo invadida, e não soube o que fazer. Na sua ingenuidade e falta de informação, recorreu a uma lista de discussão da Internet, recebida por literalmente milhares de pessoas, e lançou: "Minha rede foi invadida, não sei como, que posso fazer?". Isto equivale a ir a uma praça no centro da cidade e gritar com um megafone: "Minha casa não é segura, e o endereço dela é tal, alguém pode me ajudar?" Claro que surgem pessoas interessadas em ajudar, mas também aparecerão outras que tentarão procurar a falha de segurança — que agora sabem que existe —, e se aproveitar dela antes que seja descoberta. O resultado? A máquina da empresa foi formatada, não tinha cópia de segurança, e o dono deve ter lamentado não investir um pouco mais no treinamento de seus quadros técnicos.

Este artigo se preocupa em responder o que fazer quando sua rede for invadida, e também dá algumas dicas de prevenção, principalmente no que diz respeito às políticas de segurança. Grande parte do que vai ser visto aqui consta do Linux Security HOWTO (http://linuxdoc.org/HOWTO/Security-HOWTO.html), principalmente seus capítulos 9 e 10. Mas foi realizado um esforço de adaptação à realidade brasileira, e acrescentados alguns conselhos e comentários baseados em contatos com profissionais da área e na própria experiência do autor.

O que fazer durante e após uma invasão

Por mais cuidado que você tenha tomado na configuração da segurança de seu sistema, cedo ou tarde é possível que você passe pela desagradável surpresa de verificar que alguém está tendo acesso a ele. Neste caso, a primeira providência a tomar é manter a calma: atitudes impensadas podem causar mais problemas do que o seu invasor poderia causar sozinho.

Durante o ataque

Detectar um comprometimento da segurança em curso pode ser uma situação muito tensa. A sua reação pode ter graves conseqüências.

Se uma pessoa invadiu a sua casa, escritório ou laboratório, trata-se de um ataque físico, que deve estar coberto em sua política de segurança. Você deve notificar as autoridades competentes. Em um laboratório, você pode ter encontrado alguém abrindo um gabinete ou tentando desligar um equipamento. Dependendo do seu grau de autoridade, você pode tentar convencê-lo a parar, ou chamar o encarregado da segurança.

Se você notou um usuário local tentando comprometer sua segurança, a primeira coisa a fazer é confirmar se ele é realmente quem você está pensando. Verifique de onde ele está se conectando: é o seu local usual de conexão? Não? Então use uma maneira não-eletrônica de entrar em contato. Por exemplo, telefone, ou vá até seu escritório ou casa, e converse pessoalmente. Se ele confirmar que estava conectado, você pode pedir a ele que explique o que estava fazendo, e solicitar que pare. Se ele não estava, tudo indica que o caso precisará de investigação adicional. Pesquise a fundo, e reúna informações antes de fazer qualquer acusação.

Se você notou uma invasão via rede, a primeira coisa a fazer (se for possível) é desconectar sua rede. Desconecte o cabo do modem ou da placa de rede, sem desabilitar previamente as conexões via software. Isto fará o possível atacante pensar que está enfrentando problemas de rede, e não lhe dará a certeza de já ter sido detectado. Caso você não possa desconectar a rede (se você tem um site que precisa ficar online, ou se você não tem acesso físico às suas máquinas), o próximo passo é usar uma ferramenta como os tcp_wrappers, ipfwadm ou o ipchains para negar acesso ao site de origem do invasor.

Se você não puder nem ao menos desabilitar as conexões vindas da origem do invasor, você terá que necessariamente travar a conta que ele está usando. Esta não é uma tarefa simples, você terá que considerar todos os arquivos .rhosts, acesso de FTP, e-mail, cron, e mesmo assim poderá não se livrar de algumas backdoors.

Após ter feito uma das operações acima (desconectar a rede, negar acesso do endereço de origem ou desabilitar completamente a conta comprometida), você precisará matar todos os processos do usuário e forçar o seu logoff.

Monitore atentamente sua rede nos próximos minutos, porque o invasor quase certamente tentará voltar, ou executará probes para tentar descobrir o que aconteceu. Talvez usando uma conta diferente. Ou até mesmo um endereço de origem completamente novo.

Após o ataque

Então você detectou um comprometimento da segurança que já ocorreu, ou você o interrompeu enquanto ocorria, e impediu o acesso do invasor. E agora?

Bloqueando os caminhos

Se você tem como determinar (atenção, determinar não significa "dar um chute razoável") os meios utilizados pelo invasor para penetrar no seu sistema, você deve começar por tapar este furo. Por exemplo, talvez você tenha notado diversos acessos FTP no momento em que o invasor agiu. Neste caso, desabilite o serviço de FTP e verifique se há uma versão atualizada, ou documentação sobre problemas com a sua versão.

Verifique os logs do seu sistema, e faça uma visita aos seus sites de segurança preferidos (sim, você deve ter o hábito de visitar sites sobre segurança) para saber se há exploits conhecidos e aos quais você esteja vulnerável. Procure por todas as atualizações de segurança fornecidas pelo distribuidor do seu sistema operacional, ou por terceiros nos quais você julgue adequado confiar.

Se você não impedir o invasor de voltar, ele certamente o fará. Não apenas à mesma máquina, mas a outros pontos de sua rede. Parte do "procedimento padrão" de invasão é utilizar ferramentas (como packet sniffers e crackers) para obter acesso a outros pontos da mesma rede.

Levantamento de danos

Após fechar corretamente a falha utilizada para a invasão (e outras que porventura estivessem abertas), a primeira coisa a fazer é levantar os danos. O que foi comprometido? Se você usa ferramentas no estilo do Tripwire, você pode lançar mão delas para realizar uma verificação de integridade — isto deve ajudar a informar o que foi alterado. Caso contrário, você terá de verificar tudo manualmente.

Root kits

Os root kits são ferramentas relativamente fáceis de manejar e instalar, que qualquer invasor minimamente competente possui. O root kit serve basicamente para garantir que, uma vez obtido o acesso de usuário privilegiado na máquina invadida, esse acesso seja mantido. Isto é feito com uma série de táticas ao mesmo tempo criativas e discretas, como substituir o comando ps de forma que ele liste todos os processos, exceto o do próprio root kit e suas shells, alterar de maneira semelhante os comandos ls, netstat e outros, e embutir cavalos de tróia em servidores (como o inetd, por exemplo) para garantir portas de entrada sem necessidade de senhas e sem registrar nada nos logs. O root kit é uma grande razão para que você não possa confiar 100% em nenhuma de suas ferramentas de verificação após um ataque em que houve comprometimento do acesso privilegiado, e um ótimo argumento em favor da reinstalação total de um sistema comprometido.

Se você estiver utilizando um sistema fácil de configurar e manter, como a maior parte dos sistemas para uso doméstico e servidores de pequeno e médio porte (e.g. Linux, FreeBSD...), você pode até mesmo considerar fazer um backup completo, apagar todos os discos, reinstalar o sistema a partir da mídia original de instalação e em seguida voltar os backups dos seus arquivos de dados (note que isso não inclui os arquivos de programas, e nem os de configuração).

Lembre-se que isso lhe dá uma configuração completamente renovada, mas provavelmente contendo as mesmas falhas que permitiram que o atacante penetrasse pela primeira vez, portanto, refaça a etapa anterior, fechando todos os possíveis meios de acesso.

Checagem de integridade

Muitas dúvidas podem ser evitadas usando um programa de checagem de integridade como o tripwire, www.tripwire.org. Ele deve ser rodados todos os dias, e seu procedimento é bastante simples: ele percorre o seu sistema de arquivos, realizando checksums nos arquivos mais vitais do sistema, e em seguida comparando o resultado desses checksums com os resultados armazenados originalmente em uma base de dados. Lembre-se de gravar a base de dados em um local que o invasor não possa alterar (por exemplo, em um CD-ROM sempre montado, ou em um disquete protegido contra gravação e também sempre montado), caso contrário ele poderá virar o feitiço contra o feiticeiro.

A reinstalação é considerada como obrigatória para todos os casos em que o invasor chegou a obter acesso privilegiado (root ou administrador). Dependendo de suas políticas, você pode querer guardar as pistas ou provas, e neste caso pode valer a pena substituir o disco por um novo, e guardar o que foi comprometido pelo invasor.

Backup faz parte da política de segurança

Fazer backup regularmente pode ser a salvação da sua reputação, e é parte importante da política de segurança. Se o seu sistema for danificado ou comprometido, você poderá restaurá-lo a partir das cópias. Claro que esses dados podem ser do interesse dos invasores também, e eles a esta altura terão uma cópia de tudo — mas ao menos você não ficará sem a sua cópia. Veremos mais sobre este assunto na segunda parte do artigo.

Perseguindo o intruso

Ok, você impediu o acesso do invasor, recuperou seu sistema e refez a política de segurança. Mas não é só isso que você quer. Embora a maior parte dos invasores não chegue a responder pelos seus atos, você deve comunicar o ataque mesmo assim.

O primeiro passo é informar o ocorrido ao contato administrativo no provedor ou site de onde se originou o ataque detectado. Você pode descobrir esses dados usando o whois, ou acessando as bases de dados online da Internic (para sites norte-americanos) ou Fapesp (registro.br/, para sites brasileiros). Envie e-mail contendo os logs aplicáveis, datas, endereços e horários. Se você notou mais alguma característica que possa ajudar a detectar o intruso, inclua na mensagem. Seja educado. Coloque-se à disposição para trabalhar em conjunto na busca de soluções. Lembre-se de que o administrador do site de origem muito provavelmente não sabe que sua rede pode estar sendo usada com este tipo de propósito — ele pode ter sido invadido também. Nesse caso, ele também passará pelo que você passou, e por sua vez irá contatar o administrador do site de origem, do ponto de vista dele.

Invasores bem preparados em geral usam uma cadeia de sistemas intermediários, alguns (ou muitos) dos quais podem nem ao menos saber que foram comprometidos. Tentar seguir a trilha desse tipo de ataque pode ser difícil, e então você percebe a falta que fazem profissionais de rede em muitos provedores de pequeno e médio porte. Mas ser educado e atencioso, mesmo com os amadores que precisarão que você explique a eles que aquele sistema operacional pelo qual eles pagaram uma pequena fortuna não é tão seguro como a propaganda dizia, pode ajudar em muito na sua tarefa.

Naturalmente você deverá também notificar qualquer entidade de segurança da qual seja membro, e os desenvolvedores ou proprietários de qualquer software no qual você tenha encontrado bugs que comprometam a segurança e para os quais ainda não exista correção. Mas veremos isto com detalhes na segunda parte deste artigo. Até o próximo mês!

 

A Revista do Linux é editada pela Conectiva S/A
Todos os Direitos Reservados.

Política de Privacidade