Je travaille sur un projet de recherche impliquant une intoxication par ARP.
Je voudrais intercepter les paquets sur le niveau IP. Si ma machine reçoit un paquet avec une adresse IP non destinée à sa propre adresse IP, je voudrais que ce paquet soit envoyé à un programme d’espace utilisateur.
Je pensais que cela pourrait être accompli en utilisant une interface TUN / TAP. Donc, si mon interface matérielle avait l'adresse IP 192.168.1.3 et mon TUN, l'adresse IP 192.168.1.4, l'interface matérielle pouvait alors être configurée pour transférer tous les paquets destinés à 192.168.1.4 au TUN, puis les transmettre à l'espace utilisateur. programme.
Les paquets entrants seront toujours destinés à mon interface matérielle en raison d'une intoxication par ARP et auront l'adresse IP de mon TUN. Les appareils seront connectés sur le même réseau par un commutateur Ethernet ou WiFi.
Est-ce une approche viable? Y a-t-il un moyen plus facile / meilleur d'y parvenir?
libpcap
. Nécessite la racine, cependant, et est critique pour la sécurité.