Arquivo mensal: março 2014
Port mirroring em switches com dd-wrt usando o iptables
Ocasionalmente é necessário monitorar o tráfeo de rede de um determinada máquina para a solução de problemas de rede ou verificações de segurança (máquinas comprometidas, sofrendo ataques, verficações de filtros, etc).
Em um ambiente antigo bastava estar no mesmo hub que a máquina em questão, os hubs inefcientes foram quase que totalmente substituídos por switches, que não propagam o tráfego além das máquinas envolvidas ou redes wi-fi em que o tráfego é encriptado, o que impede a análise
Nos switches mais sofisticados existe a função port mirroring, em que o tráfego de uma porta é replicado na porta onde está ligado o computador que irá fazer a análise do tráfego. Em switches mais simples essa função não existe e ainda existe o problema de análise em rede wi-fi, cada vez mais presente.
Esse problema pode ser contornado caso seja utilizado um switch que utilize o firmware dd-wrt, um poderoso firmware baseado em linux com diversos recursos e que utiliza o iptables para a parte de filtragem e roteamento avançada do switch.
Com o iptables é possível manipular o tráfego de maneira que todos os pacotes destinados ou enviados de uma máquina específica sejam replicados para outra máquina, onde poderão ser analisados.
Por exemplo, uma máquina utilizando wi-fi, com endereço IP 192.168.10.9 necessita ter seu tráfego analisado por outra máquina, que tem o endereço IP 192.168.10.111, com interface ethernet. Ambas estão conectadas por um switch com firmware dd-wrt.
No switch com dd-wrt digite o seguinte na janela de comandos e execute:
iptables -t mangle -A POSTROUTING -d 192.168.10.9 -j ROUTE --tee --gw 192.168.10.111 iptables -t mangle -A PREROUTING -s 192.168.10.9 -j ROUTE --tee --gw 192.168.10.111
Dessa maneira, todo o tráfego destinado ao computador 192.168.10.9 é replicado para o computador 192.168.10.111.
Se houver um analisador de pacotes, como o wireshark, faça um filtro para que apenas o IP 192.168.10.9 seja analisado.