MAC e IP Spoofing, flooding, scanning e a análise

O que me motivou a escrever esse post foi ver um outro post de segurança dedicado a explicar como modificar um MAC address em Linux a partir de um programa. O post em questão nem disse pra que serve isso, mas o que me sacudiu foi ver um post dedicado a um programa pra fazer uma tarefa que você faz com o ifconfig. Nã-nã. Não precisa de programa ‘especialista’ nenhum.

Spoofing

Trata-se de uma técnica de mascaramento, tendo utilidades benéficas ou maléficas, dependendo de quem e como a usa. Não quero entrar em detalhes profundos de aplicação para não produzir Gremilins (1984), mas vou exemplificar uma condição de uso estranha.

Suponhamos que você tenha que passar por um firewall cujo filtro navegação seja controlado pelo MAC (empresas costumam fazer isso para dar acesso irrestrito a determinados hosts). Você não sabe quais IPs estão liberados na rede, mas sabe que o host do chefe pode tudo. Esqueça os princípios nesse momento – nada de TAP, é seu notebook direto na rede. – Então, (a) você pode por um curto periodo de tempo receber pacotes que eram direcionados a este host ou (b) simplesmente navegar como se fosse o outro host que é permitido. Mas como? – Simples. Primeiramente, faça um ping ao host (supondo 192.168.1.250):

Em seguida, pegue rapidamente o MAC:

Pronto, hora de brincar, mas primeiramente, porque você precisa do MAC? – Isso é porque você não sabe o que está sendo enviado para o host alvo e agora voce pretende que os pacotes sejam redirecionados para você – ou uma segunda opção – você quer tornar esse host indisponível na rede – ou, terceira opção – assumir a navegação outrora permitida ao host alvo. Supondo que seu IP seja 192.168.1.222 e o gateway 192.168.1.1. Abra um terminal extra e faça um flood para o gateway, ainda que o filtro do firewall esteja configurado contra flooding:

O propósito disso é conseguir manter-se na tabela ARP dos dispositivos de rede a cada renovação, deixando a mínima possibilidade para o host original retomar a conexão. Mas para tal, você precisa assumir o lugar dele, então anteceda o ping configurando sua interface de rede com o IP e MAC do host alvo (usando um MAC fictício abaixo):

Provavelmente a resposta não será imediata, pode ser necessário esperar um determinado tempo e as respostas podem ser meio randômicas, considerando a renovação da tabela ARP dos dispositivos de meio, como switches, gateways, etc.

Pode ser necessário mais alguma coisa? – Sim, pode. Mas não escrevo tutoriais pra malefício, portanto, agora uma dica de como identificar um rato na rede.




Encontrando um rato na rede

Qualquer um pode ser vitima desse tipo de ataque se o usuário dentro da sua rede possui acesso administrativo ao computador, portanto, o erro começou aí. Mas se precisar identificar o originador do problema para punição ou para fins periciais? – O processo é bastante simples.

DWOS TAP

Intercepte a rede entre o switch e o roteador, colocando seu TAP ethernet e inicie uma escuta. A primeira pista que você tem de que algo está errado (seja para análise de redes ou outro fim) é que o host de um diretor hora ou outra se torna indisponível na rede, portanto você sabe o IP e/ou MAC que deve monitorar. No momento dessa intermitência você deverá efetuar a escuta, então capturar dados suficientes para identificar a navegação desse IP. Coletados os dados, passa-se a segunda etapa.

Scanner

Você não deverá fazer mais do que identificar o host e suas características, e ainda assim será complicado utilizar essa informação a seguir no documento pericial (exceto seja apenas administração de sistema, aí vale tudo).

Tenha instalado em seu Linux o nmap, seja de que forma for. Então inicie um scan no host alvo da maneira mais simplória possível (preferencialmente que o host do seu chefe esteja desligado nesse momento):

A resposta seria parecida com algo assim, como fiz no meu próprio host para exemplificar:

scan nmap
scan nmap

Vigança é um prato que se come frio

Brincadeiras à parte, tenha paciência. De mais esse dia de bônus ao rato. Enquanto isso, analise os dados coletados pela interceptação para identificar o máximo possível dos traços de navegação dele, uma vez que alguém que faz spoofing, provavelmente pode estar cometendo outro ilícito.

Com o scan você já obterá o sistema operacional, portas de serviço e mais algumas informações que certamente serão diferentes do host do chefe. Por isso, quando esse host clonado sair da rede, faça o procedimento de scan na máquina do chefe. Agora você tem provas de que duas máquinas distintas estão participando dos mesmos dados de rede e também tem o tráfego originado pelo host clone, já podendo tomar medidas a respeito sem preocupação. Se você é um administrador de sistema, dependendo das dimensões do problema pode ser ideal fazer uma ata notarial (esse artigo será escrito pelo Ilmo. Sr. Perito Diego Souza). Indiferente de sim ou não, agora você precisa encontrar a máquina na rede. Mas como fazer para saber exatamente onde está esse equipamento? – Simples, obrigue ele a se denunciar. É um trabalho e tanto e pode ter mais de uma opção, mas vamos a uma receita.

– Vá ao host que possui o DHCP server e copie o arquivo de leases.
– Verifique quais hosts desse arquivo estão na rede.
– Separe os que não estão
– Bloqueie o IP do chefe
– Aguarde alguem reclamar que o computador não funciona ou:
– Monitore o arquivo de leases pra ver se entra um novo host.

Após a manifestação desse computador, proceda com um novo scan, então substitua temporária e gentilmente o computador do usuário alegando qualquer coisa que não o faça sentir-se constrangido.

Leve a máquina pro laboratório, faça uma cópia raw do disco e posteriormente identifique os links no cache do navegador ou procure pelos aplicativos correspondentes às portas abertas encontradas pelo scanner. Monte a linha do tempo, documente e faça o que for legal e necessário em relação ao problema.

Logo mais estaremos lançando no mercado nacional um duplicador forense excepcional, então escreverei um post a respeito, mas por enquanto paramos por aqui. Espero que tenha sido uma leitura agradável para você.

Siga-nos no Do bit Ao Byte no Facebook.

Prefere twitter? @DobitAoByte.

Inscreva-se no nosso canal Do bit Ao Byte Brasil no YouTube.

Próximo post a caminho!




Comments

comments

Djames Suhanko

Djames Suhanko é Perito Forense Digital. Já atuou com deployer em sistemas de missão critica em diversos países pelo mundão. Programador Shell, Python, C, C++ e Qt, tendo contato com embarcados ( ora profissionalmente, ora por lazer ) desde 2009.

Deixe uma resposta