Um ataque spoofing envolve a falsificação do endereço de origem. É o acto de usar uma máquina para representar o papel de outra. A maioria das aplicações e ferramentas no UNIX baseam-se na autenticação do IP de origem.
Muitos programadores têm usado controle de acesso baseado na máquina para segurança das suas redes. O endereço IP de origem é um identificador único mas não é fiável. Ele pode facilmente ser forjado (spoofed).
Para entender o processo de spoofing, Primeiro vou explicar o o processo de autenticação do TCP e do IP e depois como um atacante pode enganar a sua rede.
O sistema cliente começa por enviar uma mensagem SYN para o servidor. O servidor então confirma a menssagem SYN enviando uma mensagem de SYN-ACK para o cliente. O cliente então completa estabelecendo a conexão respondendo com uma mensagem de ACK.
A conexão entre o cliente e o servidor é então aberta, e os dados específicos do serviço podem ser trocado entre o cliente e o servidor.
Cliente e servidor podem agora enviar dados específicos do serviço.
O TCP usa números sequênciais. Quando um circuito virtual é estabelecido entre duas máquinas, o TCP designa para cada pacote um número com um índice identificador. Amboa as máquinas usam este número para verificarem erros e fazerem relatórios.
Rik Farrow, no seu artigo “Sequence Number Attacks”, explica o sistema de números sequênciais como sendo o seguinte:
“Os números sequênciais são usados para confirmar a recepção de dados. No início de uma ligação TCP, o cliente envia um pacote TCP com uma número sequêncial inicial, mas nenhum reconhecimento.
Se existir um servidor de aplicação a correr na outra ponta da ligação, o servidor envia de volta um pacote TCP com o seu próprio número sequêncial, e o reconhecimento; o número inicial do pacote do cliente mais um. Quando o sistema cliente recebe este pacote, ele deve enviar de volta o seu próprio reconhecimento; a sequência de número inicial do servidor mais um.”
Desta forma um atacante tem dois problemas
A segunda tarefa é a mais complicada porque quando o destino ajusta o número sequêncial inicial, o agressor deve responder correctamente. Assim que o agressor adivinhe o número sequêncial correcto, pode então sincronizar com o destino e estabelecer uma sessão válida.
Serviços vulneráveis ao IP Spoofing: Configurações e serviços que são vulneráveis ao IP spoofing :
RPC (Serviços de Invocação Remota de Funções) Qualquer serviço que use autenticação de endereço IP O sistema X Window O conjunto de serviços R (rlogin, rsh, etc.) TCP e Ferramentas de IP spoofing:
Mendax é uma ferramenta de uso fácil para prever o número sequêncial TCP e para rshd spoofing.
spoofit.h é uma biblioteca muito bem comentada para inclusão de funcionalidades IP spoofing dentro de seus programas. [URL actual desconhecido. -Ed.]
ipspoof é um utilitário para TCP e IP spoofing.
hunt é um sniffer que também oferece muitas funções de spoofing.
dsniff é uma coleção de ferramentas para auditar redes e para testes de penetração. dsniff, filesnarf, mailsnarf, msgsnarf, urlsnarf, e webspy vigiam passivamente uma rede para conseguir dados interessantes (palavras-chave, e-mail, ficheiros, etc.). arpspoof, dnsspoof, e macof auxiliam na interceptação de tráfego de rede.
Medidas para se prevenir de ataques IP Spoofing:
Evite usar autenticação de endereço de origem. Implemente criptografia na autenticação em todo o sistema.
Configure a sua rede para rejeitar pacotes de redes externas que declaram ser de um endereço local. Isto é geralmente feito com um router. Se você permitir ligações externas de máquinas seguras, possibilite encriptação da sessão no router.
Ataques spoofing são muito perigosos e difíceis de detectar. Eles estão se tornando cada vez mais frequentes actualmente. O único jeito de prevenir estes ataques é implementar medidas de segurança como autenticação cifrada para proteger a sua rede.
Plano I
Plano II
Plano III