domingo, 11 de abril de 2010

O que são sniffers e como usa-los

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. 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: por favor adicione esta imagem ao conteudo do curso (colunamarcos17-01.jpg) 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. – Como usa-los Para utilizar um sniffer é indispensável que você esteja no mesmo segmento de rede que os dados que pretende capturar. Existem muitos sniffers disponíveis na Internet, nesse artigo vamos abordar o Ethereal, ele existe nas versões Windows/Linux/BSD/Mac dentre outros. Para conseguir o Ethereal procure em seu site oficial, http://www.ethereal.com. Não entraremos em detalhes de instalação, uma vez que isto está bem documentado no site oficial. Uma vez aberto o Ethereal você se deparará com uma tela para iniciar os procedimentos de captura de pacotes, clique em Capture/Start No primeiro campo selecione a placa de rede que está conectada no segmento de rede desejado. Os campos seguintes (Count/File size/Duration) se referem a quantidade de informação/tempo que a captura estará ativa. Lembre-se que esse processo exige muito da memória da máquina, portanto é interessante limitar a quantidade de dados que se deseja analisar. É importante marcar a opção Capture Packets in Promíscuos Mode, assim o Ethereal interceptará também os pacotes que não tenham sua máquina como destino. Dessa forma todos os pacotes que passarem por seu segmento de rede estará sujeito ao sniffer. Agora clique em ok e espere até conseguir pegar um número significativo de pacotes de rede. Depois mande a captura parar e serão mostrados os pacotes capturados, clique em algum deles com o botão direito e selecione a opção Follow TCP Stream. Será mostrada uma tela com a área de dados do pacote transformada em texto plano. Ocorreu tudo certo. Como podemos ver é apenas a página do UOL, mas poderia ser uma conexão de e-mail a um servidor POP3 ou uma conexão Telnet. Por isso é importante usar recursos de criptografia em nossas transmissões, assim mesmo que os dados sejam capturados nunca serão decifrados.

0 comentários:

Postar um comentário

Proibido palavras ofensivas, racistas ou descriminatórias.

[Seu Comentário será liberado no máximo em 24horas]