Estou trabalhando em um projeto de pesquisa envolvendo envenenamento por ARP.
Eu gostaria de interceptar pacotes no nível de IP. Se minha máquina receber um pacote com um endereço IP não destinado a seu próprio endereço IP, gostaria que esse pacote fosse enviado para um programa espacial do usuário.
Eu estava pensando que isso poderia ser feito usando uma interface TUN / TAP. Então, se minha interface de hardware tivesse o endereço IP 192.168.1.3 e meu TUN tivesse o endereço IP 192.168.1.4, então a interface de hardware poderia ser configurada para encaminhar todos os 192.168.1.4 pacotes destinados ao TUN que poderiam então encaminhar para o espaço do usuário. programa.
Os pacotes recebidos ainda serão destinados à minha interface de hardware devido ao envenenamento por ARP e terão o endereço IP do meu TUN. Os dispositivos serão conectados na mesma rede por um comutador ethernet ou Wi-Fi.
Esta é uma abordagem viável? Existe uma maneira mais fácil / melhor de realizar isso?
Tags networking sockets tunnel ip unix