sniffers ou farejadores são softwares muito úteis

11
Sniffers ou farejadores são softwares muito úteis. Tão grande é a utilidade deles, que até os sistemas de IDS (como o Snort) são feitos com base em sniffers. Um sniffer é um programa que consegue capturar todo o tráfego que passa em um segmento de uma rede. Para tornar mais fácil o entendimento, observe a imagem abaixo: Quando ligamos computador no HUB, e enviamos informação de um computador para o outro, na realidade esses dados vão para todas as portas do HUB, e conseqüentemente para todas as máquinas. Acontece que só a máquina na qual a informação foi destinada enviará para o sistema operacional. Se um sniffer estivesse rodando nos outros computadores, mesmo sem esses sistemas enviarem a informação que trafega ali para o sistema operacional, o farejador intercederá na camada de rede, capturando os dados e mostrando-os para o usuário, de forma pouco amigável. Geralmente os dados são organizados por tipos de protocolo (TCP, UDP, FTP, ICMP, etc...) e cada pacote mostrado pode ter seu conteúdo lido. Uma típica tela de sniffer seria a mostrada abaixo:

Upload: paulo-cesar

Post on 05-Jul-2015

413 views

Category:

Documents


19 download

TRANSCRIPT

Page 1: Sniffers ou farejadores são softwares muito úteis

Sniffers ou farejadores são softwares muito úteis. Tão grande é a utilidade deles, que até os sistemas de IDS (como o Snort) são feitos com base em sniffers. Um sniffer é um programa que consegue capturar todo o tráfego que passa em um segmento de uma rede. Para tornar mais fácil o entendimento, observe a imagem abaixo:

 

 

Quando ligamos computador no HUB, e enviamos informação de um computador para o outro, na realidade esses dados vão para todas as portas do HUB, e conseqüentemente para todas as máquinas. Acontece que só a máquina na qual a informação foi destinada enviará para o sistema operacional.

Se um sniffer estivesse rodando nos outros computadores, mesmo sem esses sistemas enviarem a informação que trafega ali para o sistema operacional, o farejador intercederá na camada de rede, capturando os dados e mostrando-os para o usuário, de forma pouco amigável. Geralmente os dados são organizados por tipos de protocolo (TCP, UDP, FTP, ICMP, etc...) e cada pacote mostrado pode ter seu conteúdo lido. Uma típica tela de sniffer seria a mostrada abaixo:

Page 2: Sniffers ou farejadores são softwares muito úteis

A informação lida é mostrada em duas colunas: uma em hexadecimal, e outra em texto puro (ascii), como é visto na imagem acima. Após entender como ele funciona, qual seria a utilidade do sniffer?

Muitas. Mas principalmente na captura de senhas, afinal, qualquer senha não-criptografada (como exemplo senhas de webmail como bol, yahoo, etc...) que foi digitada em qualquer computador da rede, será capturada pelo sniffer.

Claro que se a rede estiver segmentada por um switch, o sniffing básico não vai mais funcionar. Aí teríamos que nos utilizarmos de uma técnica chamada de ARP POISONING, capaz de envenenar o ARP de vários equipamentos e incluir entradas falsificadas. Mas isso nós veremos em uma próxima coluna.

Observação: Não é possível utilizar um sniffer com modems, apenas com placas de rede (comuns ou wireless). E também não é possível fazer o farejamento de redes remotas, sem algum programa instalado para realizar essa “ponte”, como um backdoor.

http://www.invasao.com.br/coluna-marcos-17.htm

A análise de rede

Um “analisador rede” (chamado igualmente analisador de tramas ou em inglês sniffer) é um dispositivo que permite “ouvir” o tráfego de uma rede, quer dizer, capturar as informações.

Page 3: Sniffers ou farejadores são softwares muito úteis

Com efeito, numa rede não comutada, os dados são enviados a todas as máquinas da rede. Contudo, numa utilização normal, as máquinas ignoram os pacotes que lhes não são destinados. Assim, utilizando o interface rede dum modo específico (chamado geralmente modo "promiscuous") é possível ouvir todo o tráfego que passa por um adaptador rede (uma placa rede ethernet, uma placa rede sem fios, etc.).

Utilização do sniffer

Um sniffer é um instrumento formidável que permite estudar o tráfego de uma rede. Serve geralmente para os administradores diagnosticarem os problemas na sua rede, bem como para saber que tráfego há. Assim, os detectores de intrusão (IDS, para intrusion detection system) são baseados num sniffeur para a captura das redes, e utilizam uma base de dados de regras para detectar redes suspeitas.

Infelizmente, como todos os instrumentos de administração, o sniffer pode igualmente ser utilizado por uma pessoa maliciosa que tem um acesso físico à rede para recolher informações. Este risco é ainda mais importante nas redes sem fios, porque é difícil confinar as ondas hertzianas num perímetro delimitado, de modo que pessoas maliciosas podem ouvir o tráfego estando simplesmente na vizinhança.

A grande maioria dos protocolos Internet faz transitar as informações de forma transparente, quer dizer de maneira não cifrada. Assim, quando um utilizador da rede consulta o seu serviço de mensagens através do protocolo POP ou IMAP, ou surfa na Internet em sites cujo endereço não começa por HTTPS, todas as informações enviadas ou recebidas podem ser interceptadas. É assim que sniffers específicos foram afinados por piratas para recuperar as senhas que circulam no fluxo rede.

Os desfiles

Existem várias maneiras de se precaver contra os incómodos que poderia provocar a utilização de um sniffer na sua rede:

Utilizar protocolos cifrados para todas as comunicações cujo conteúdo possua um nível de confidencialidade elevado.

Segmentar a rede a fim de limitar a divulgação das informações. É recomendado nomeadamente preferir a utilização de switchs (comutadores) a hubs (concentradores), porque comutam as comunicações, quer dizer que as informações são enviadas unicamente às máquinas de destino.

Utilizar um detector de sniffer. Trata-se de um instrumento que sonda a rede à procura de materiais que utilizam o modo "promiscuous".

Para as redes sem fios é aconselhável reduzir a potência dos materiais, de maneira a cobrir apenas a superfície necessária. Isso não impede eventuais os piratas de ouvir a rede, mas reduz o perímetro geográfico no qual têm a possibilidade de o fazer.

Proteja suas Senhas Contra Sniffers

A sua senha é difícil de ser "quebrada", você troca com uma certa regularidade e um belo dia você é surpreendido ao receber acusações de invasão. Evidências indicam que

Page 4: Sniffers ou farejadores são softwares muito úteis

invasões a contas de terceiros partiram de sua conta e você não tem a menor idéia do que está acontecendo. Isto é, alguém pode ter feito uso de sua conta e realizou estes atos como sendo você. Como isso pode ter acontecido? Uma forte possibilidade é que você tenha sido vítima de um ataque de "sniffer". Mas, o que é isso?

"Sniffers" são programas que permitem a um atacante roubar sua senha e assim utilizar a sua conta como se fosse você.

Estes tipos de ataques são comuns. É muito importante que você, como usuário Internet, tenha consciência de como suas senhas são vulneráveis e como tomar medidas apropriadas para tornar sua conta mais segura. Selecionar uma boa senha e regularmente trocar de senha ajuda bastante, mas também é muito importante que se conheça quando se está vulnerável a "sniffers" e como lidar com eles.

O que é um "sniffer"?

Programas que permitem monitorar a atividade da rede registrando nomes (username, e senhas) sempre que estes acessam outros computadores da rede.

Estes programas ficam monitorando ("xeretando") o tráfego da rede para capturar acessos a serviços de redes, tais como: serviço de email remoto (IMAP, POP), acesso remoto (telnet, rlogin, etc), transferência de arquivos (FTP), etc. Acessos feitos, pacotes capturados. Sempre com o objetivo de pegar a identificação de acesso a conta do usuário.

Quando sua senha pode ser capturada por "sniffers"?

Muitas redes locais (LANs) são configuradas compartilhando um mesmo segmento de rede Ethernet. Praticamente qualquer computador desta rede pode executar um programa "sniffer" para "roubar" senhas dos usuários. "Sniffers" atuam monitorando o fluxo de comunicação entre os computadores da rede para descobrir quando alguém utiliza os serviços de rede mencionados anteriormente. Cada um destes serviços utiliza um protocolo que define como uma sessão é estabelecida, como sua conta é identificada e autenticada e como o serviço é utilizado.

Para ter acesso a um destes serviços, você primeiro tem que efetuar um "log in". É na sequência de login -- a parte de autenticação destes protocolos, a qual ocorre no início de cada sessão -- que os "sniffers" estão interessados, porque é nesta parte que está a sua senha. Portanto, é só filtrar as "strings" chaves que a senha é obtida.

A figura seguinte mostra o processo de "conversação" entre duas máquinas remotas, onde a identificação do usuário passa "abertamente" pela rede de uma máquina para outra. Neste exemplo transferência de arquivos via FTP.

Page 5: Sniffers ou farejadores são softwares muito úteis

A máquina A inicia a conexão com a máquina B, que solicita identificação do usuário. Este ao se autenticar na máquina remota B tem sua senha capturada pelo "sniffer" de plantão.

Como "sniffers" são implantados e as senhas capturadas?

Para entender como um "sniffer" funciona, você precisa saber que cada computador em uma LAN compartilhada pode "ver" todos os pacotes de dados que transitam de um computador a outro desta LAN. Assim, cada computador desta rede pode executar um programa "sniffer" que "olha" os pacotes e salva uma cópia em arquivo.

Basicamente, os seguintes passos são executados por atacantes (veja ilustração a seguir): (1) o atacante ao penetrar em sua rede, quebrando uma determinada máquina; (2) instala um programa "sniffer"; (3) este programa monitora a rede em busca de acesso a serviços de rede, as capturas são realizadas e registradas em um log file; (4) em seguida o arquivo de log é recuperado pelo atacante.

Page 6: Sniffers ou farejadores são softwares muito úteis

Por quê roubar sua senha?

Existem diversas razões que levam pessoas a roubarem senhas, desde para simplesmente aborrecer alguém (enviando email como sendo você) até para praticar atividades ilegais (invasão em outros computadores, "roubo" de informações, etc.). Um atrativo para os hackers é a capacidade de utilizar a identidade de terceiros nestas atividades.

Uma das principais razões que atacantes tentam quebrar sistemas e instalar "sniffers" é poder capturar rapidamente o máximo de contas possível. Assim, quanto mais contas este atacante possuir, mais fácil fica ocultar o seu esconderijo.

Como você pode se proteger?

Não fique pensando que "sniffers" podem tornar toda a Internet insegura. Não é isso. Você precisa ter consciência de onde o risco está, quando você está em risco e o quê fazer para estar a salvo.

Quando você tem seu cartão de crédito roubado ou desconfia que alguém pode estar utilizando-o indevidamente, você cancela o cartão e solicita outro. Da mesma forma, como senhas podem ser roubadas, é fundamental que você a troque regularmente. Esta precaução limita a quantidade de tempo que uma senha roubada possa ser utilizada por um atacante.

Nunca compartilhe sua senha com outros. Este compartilhamento torna difícil saber onde sua senha está sendo utilizada (e exposta) e é mais difícil detectar uso não autorizado.

Page 7: Sniffers ou farejadores são softwares muito úteis

Nunca forneça sua senha para alguém alegando que precisa acessar sua conta para corrigir algum problema ou quer investigar uma "quebra" do sistema. Este truque é um dos métodos mais eficazes de hacking, conhecido como "engenharia social".

Utilize redes que você possa confiar

Um outro aspecto que você deverá levar em consideração é quê rede você pode confiar e quais não pode. Se você estiver viajando e necessita acessar computadores de sua organização remotamente. Por exemplo, pegar algum arquivo em seu home directory e você tem disponível um "CyberCafé" ou uma rede de outra organização. Você tem certeza que pode confiar naquela rede?

Se você não tiver nenhuma alternativa para acesso remoto seguro e só tem disponível recursos como telnet, por exemplo, você pode "atenuar" este efeito trocando a senha ao final de cada sessão. Lembre-se que somente os primeiros pacotes (200 a 300 bytes) de cada sessão carregam informações de seu "login". Portanto, ao trocar sempre sua senha antes de encerrar a sessão, esta não será capturada e a senha anterior que esteve exposta à rede não será mais válida. É claro que é possível se capturar tudo que passar pela rede, mas atacantes não tem interesse de lotar o sistema de arquivo rapidamente e com isso ser facilmente descobertos.

Porquê redes continuam vulneráveis a "sniffers" por muito tempo?

Existem várias razões e não existe uma solução rápida para o problema.

Parte do problema é que as empresas tendem a investir mais em novos recursos do que em adicionar segurança. Novas funcionalidades de segurança podem deixar os sistemas mais difíceis de configurar e menos convenientes para utilizar.

Uma outra parte do problema está relacionada a custos adicionados por switches Ethernet, hubs, interfaces de rede que não suportam o modo especial "promiscuous" que "sniffers" podem utilizar.

Como detectar um "sniffer" na rede?

Não é fácil, na verdade pode se tornar uma tarefa muito difícil. "Sniffers" são aplicações passivas, não geram nada que possa ser sentido facilmente pelos usuários e/ou administratores. Em geral, não deixam "rastros".

Uma maneira de detectar um "sniffer" é verificar todo os processo em execução. Isto não é totalmente confiável, mas é um bom ponto de partida. Comandos para listar processos em execução variam de plataforma para plataforma. Se você estiver em uma máquina Unix, o "sniffer" aparecerá em uma lista do comando "ps", a menos que este "ps" seja um "trojan" (programa implementado pelo atacante que aparentemente funciona como o esperado, mas efetuar funções desconhecidas pelo usuário).

Uma outra alternativa é procurar por um "sniffer" conhecido. Existe uma grande chance do atacante estar utilizando uma versão "freeware". Obviamente, existe a possibilidade do atacante ter escrito o seu próprio "sniffer" e neste caso a busca fica mais difícil. Você teria que gastar mais tempo em analisar o que pode ter sido alterado pelo atacante. Por exemplo, comparar backup de dias diferentes ou utilizar alguns programas que possam

Page 8: Sniffers ou farejadores são softwares muito úteis

ajudá-lo nesta atividade, como: TripWire, ATP e Hobgoblin que são programas interessantes para checagem da integridade do sistema e arquivos.

"Sniffers" podem ser "escondidos" (ou melhor, "disfaçados") na listagem do "ps" (o próprio "ps" como a maioria dos programas também pode). Basta trocar o argumento do seu argv[0] (o primeiro argumento) para um nome qualquer e não parecerá ser um programa suspeito que esteja em execução.

Alguns utilitários permitem identificar se o seu sistema encontra-se em modo "promiscuous" e levá-lo a encontrar uma máquina suspeita.

O que se está fazendo?

Muitas organizações que estão atentas a este problema utilizam:

Placas de redes que não podem ser colocadas em modo "promiscuous". Assim, os computadores não podem ser "apoderados" e transformados em "sniffers".

Normalmente, a interface Ethernet passa somente pacotes até o protocolo de nível mais alto que são destinados a máquina local. Esta interface em modo promiscuous permite que todos os pacotes sejam aceitos e passados para a camada mais alta da pilha de protocolos. Isto permite que a seleção do que se deseja.

Pacotes que criptografam dados que transitam pela rede, evitando assim que senhas trafeguem "às claras".

Considerando o último ítem, se a sua organização adota e estimula o uso de software que permitam estabelecer sessões de acessos remotos criptografadas, ajudará em muito a tornar seu ambiente mais seguro. Porém, para uma segurança mais efetiva somente quando implementado em TODOS os computadores que você utiliza em sua empresa, em sua casa e nas organizações fora se sua empresa que eventualmente tenha conta.

Uma das tecnologia de encriptação bastante comum atualmente na comunicação segura entre máquina remota é SSH (Secure Shell). O SSH encontra-se disponível para diferentes plataformas. O seu uso não impede que a senha capturada, mas como esta encontra-se criptografada não servirá para o atacante. SSH negocia conexões utilizando algoritmo RSA. Depois que o serviço é autenticado, todo o tráfego subsequente é encriptado utilizando tecnologia IDEA. Este tipo de criptografia é bastante forte.

No futuro, a segurança será cada vez mais intrínseca aos sistemas e nas infraestruturas de redes. Não adianta ter todos os "aparatos" de segurança que você precisa, mas não utilizá-los. Segurança não é algo que se possa garantir totalmente. Lembre-se, ninguém está 100% seguro.

Referências:

CERT Advisory CA-94:01, Ongoing Network Monitoring Attacks, Feb. 1994. D.Dittrich, Network"sniffers" & You. Washington University/CAC, Jan. 1998. "Anonymous", Maximum Security, Sams.net Pub., 1997.