Ataques ao protocolo ARP (Address Resolution Protocol)

Posted: 16 junho 2011 by Bhior in Marcadores: , , , ,
0

Address Resolution Protocol ou ARP é um protocolo usado para encontrar um endereço da camada de enlace (Ethernet, por exemplo) a partir do endereço da camada de rede (como um endereço IP). O emissor difunde em broadcast um pacote ARP contendo o endereço IP de outro host e espera uma resposta com um endereço MAC respectivo. Cada máquina mantém uma tabela de resolução em cache para reduzir a latência e carga na rede. O ARP permite que o endereço IP seja independente do endereço Ethernet, mas apenas funciona se todos os hosts o suportarem.

O ARP foi implementado em vários tipos de redes; não é uma protocolo restrito a redes IP ou Ethernet e pode ser utilizado para resolver endereços de diferentes protocolos de rede. Porém devido a prevalência de redes IPv4 e Ethernet, ARP é utilizado primordialmente para traduzir Endereço IP para Endereço MAC. Também é utilizado em outras tecnologias de IP sobre LAN, como Token Ring, FDDI ou IEEE 802.11, e para redes IP sobre ATM.

A alternativa para as máquinas que não suportem ARP é um pré-mapeamento (estático) dos endereços.

No protocolo IP de próxima geração, IPv6, a funcionalidade do ARP é provida pelo Neighbor Discovery Protocol (NDP).

Ao processo inverso dá-se o nome de RARP (Reverse ARP).

Na maioria dos sistemas operacionais, como Linux, FreeBSD e outros sistemas operacionais baseados em UNIX, e mesmo incluindo o Windows, o programa "arp" está presente. Este programa pode ser usado para exibir ou modificar as entradas de cache ARP.

Um exemplo de saída do "arp" utilidade seria a seguinte aparência:

Windows:
> arp -a
Interface: 192.168.1.102 --- 0x2
 Enderço IP         Endereço físico        Tip
 192.168.1.101      d5-8d-3c-ce-b0-6b      dinâmico

Linux:
$ arp -na
? (192.168.1.1) at d8:5d:4c:ce:b0:8b [ether] on eth0

FreeBSD:
$ arp -na
? (192.168.1.1) at 00:00:0c:3e:4d:49 on bge0

Funcionamento do protocolo ARP
Consiste no envio de um frame em broadcasting com endereço IP do destino, o qual responde com um datagrama contendo o seu endereço IP e o endereço físico. A máquina que gerou o broadcasting passa a usar o endereço físico do destino para enviar seus datagramas.

Falhas ARP Protocolo
Principal falha ARP está em seu cache. Sabendo que é possível para ARP para atualizar entradas existentes, bem como adicionar ao cache, este leva a crer que as respostas forjadas podem ser feitas, que resultam em ataques de envenenamento de cache ARP.

ARP Cache Poisoning: Broadcasting forjada ARP respostas em uma rede local. Em certo sentido, "enganando" os nós da rede. Isto pode ser feito porque não tem recursos de autenticação ARP, assim, aceitar cegamente qualquer pedido e resposta que é recebido ou enviado.

MAC Flooding: Um ataque de envenenamento de cache ARP que é usado principalmente em ambientes comutados. Inundando um switch com endereços MAC falsos, o switch fica sobrecarregado. Devido a isso, ele transmite todo o tráfego de rede para cada nó conectado. Este resultado é conhecido como "modo de transmissão", pois, todo o tráfego passando pelo switch é transmitido para fora, como um Hub faria. Isso, então, pode resultar em sniffing todo o tráfego de rede.

Hijacking
Em ciência da computação, seqüestro de sessão é a exploração de um computador válido sessão, às vezes também chamada uma sessão-chave para ganhar acesso não autorizado a informações ou serviços em um sistema de computador. Em particular, ele é usado para se referir ao roubo de um cookie mágico usado para autenticar um usuário a um servidor remoto. Tem particular relevância para os desenvolvedores web, como os cookies HTTP usado para manter uma sessão em muitos sites podem ser facilmente roubados por um atacante usando um computador intermediário ou com acesso aos cookies salvos no computador da vítima

Connection Resetting
O nome explica-se muito bem. Quando estamos redefinindo conexão de um cliente, estamos cortando sua conexão ao sistema. Isto pode ser facilmente feito usando o código especialmente criado para fazê-lo. Felizmente, temos software maravilhoso que foi feito para nos ajudar a fazê-lo.

Man-In-The-Middle
O man-in-the-middle é uma forma de ataque em que os dados trocados entre duas partes, por exemplo você e o seu banco, são de alguma forma interceptados, registados e possivelmente alterados pelo atacante sem que as vitimas se apercebam.[1] Numa comunicação normal os dois elementos envolvidos comunicam entre si sem interferências através de um meio, aqui para o que nos interessa, uma rede local a Internet ou ambas.

Durante o ataque man-in-the-middle a comunicação é interceptada pelo atacante e retransmitida por este de uma forma discricionária. O atacante pode decidir retransmitir entre os os legítimos participantes os dados inalterados, com alterações ou bloquear partes da informação.

Como os participantes legítimos da comunicação não se apercebem que os dados estão a ser adulterados tomam-nos como válidos, fornecendo informações e executando instruções por ordem do atacante.

Packet Sniffer
A "packet sniffer" é um utilitário que fareja sem modificar os pacotes da rede de forma alguma.
Farejamento de pacotes. É um método de espionagem, que permite interceptar os pacotes de dados transmitidos por outros micros, através da rede. Em redes Ethernet os pacotes são transmitidos a todos os micros da rede, daí dizer-se que as redes Ethernet usam uma topologia lógica de barramento. Em teoria, somente a placa de rede que tivesse o endereço MAC correto leria o pacote, as demais os ignorariam. Mas, como de qualquer forma todos os outros micros recebem os pacotes, não é tão difícil assim burlar este frágil sistema, passando a ter acesso a todos os dados transmitidos através da rede. A mesma vulnerabilidade existe no acesso via cabo, já que vários usuários estão ligados ao mesmo cabo.

No caso das redes Ethernet não existe proteção, ao menos que seja implantado algum sistema de criptografia. Mas, maioria das empresas que oferece acesso via cabo já vem implantando sistemas de criptografia para proteger seus usuários. Note que o Packet Sniffing só permite ler os dados transmitidos no mesmo segmento de rede e não na Internet.

Negação de Serviço

Ataques de negação de serviço pode ocorrer quando grandes quantidades de pacotes não solicitados são direcionados contra um determinado host e/ou opcionalmente em portas específicas. Isto pode resultar no nó remoto causando pânico e fechando a porta (negando o seu serviço), ou até mesmo desligar o sistema todo - possivelmente um reboot.
MAC Address Flooding pode ser considerado um ataque de negação de serviço.
Em um ataque típico MAC Flooding, o switch é bombardeado por pacotes que contém diferentes destinos de endereço MAC. A intenção é consumir a memória limitada reservada no switch para armazenar a tabela de endereço físico do MAC.

-----------------XXX----------------

Ajude a melhorar o artigo, enviando dicas e informações....

0 comentários: