ARP回复数据包不会更新Ubuntu上的ARP缓存

时间:2012-08-10 05:57:52

标签: c ubuntu-12.04 arp spoofing

因此,在我使用Digitalsquid(http://digitalsquid.co.uk/netspoof/)开发的Network Spoofer之后,我一直试图通过编写执行某些操作的ac程序来更好地理解其内部工作类似。

我的程序目前有4个参数 - source ip,source mac,victim ip和victim mac - 并发送一个ARP回复包。在我的家庭网络上测试程序的时候,我会做一些事情,比如设置源IP是路由器的ip,源mac是虚假的东西,受害者ip是我的笔记本电脑的ip,受害者mac是我的笔记本电脑的无线卡mac。

问题是,虽然我可以看到使用tcpdump监控无线网卡发送/接收的数据包(即我会看到类似“01:43:23.656745 ARP,以太网(len 6),IPv4(len 4) ),回复 rouer-ip is-at bogus-mac-address ,长度为28“,这正是我的预期),路由器的ARP缓存条目保持不变相同(即仍然具有正确的mac地址)。

我不太确定这里的问题是什么,以及为什么我无法中毒我的ARP缓存。我在某处读到它可能是我的操作系统,Ubuntu 12.04,丢弃未经请求的ARP数据包,所以我试图将/ proc / sys / net / ipv4 / conf / wlan0 / arp_accept设置为1 - 没有运气。我还尝试按照另一篇文章的建议打开IP转发(将/ proc / sys / net / ipv4 / ip_forward设置为1),但仍然没有运气。

如果有人可以给我一些关于问题可能的指示/提示,我真的很感激。另外,如果我理解错误,请纠正我 - 我在c编程和ARP欺骗领域都是新手。

谢谢!

JY

1 个答案:

答案 0 :(得分:2)

很好地接受这些参数(source ip,source mac,target ip和target mac),但你没有给它提供正确的值。

假设A =受害者

和B =网络中的网关/路由器/交换机

ARP欺骗实际上说服了A和B

通过将您的MAC地址作为所需节点,您需要更加积极地向A和B发送ARP请求/回复。

因此无论A / B发送的是什么,都会先找到你。 IP和MAC地址字段基本上在交换机的CAT(内容可寻址存储器)表中更新,并且不断更新。

因此,当您向A(即路由器/网关/交换机)发送ARP Reuest时: -

 Source IP=Victim's IP i.e A
 Source MAc=your MAC(hackers MAC) so that data may come to your system
 Destination IP=Rouer's IP
 Detination MAC will be blank in case of ARP request