实验环境
系统:
Windows XP Professional x86 IP:192.168.234.132
Windows Server 2003 Standard Edition x86 IP:192.168.234.133
软件:
VMware Workstation pro、Wireshark
ARP通信原理
内网中想要通信 必须知道mac地址 因为内网通信主要使用二层交换机,二层交换机需要mac进行寻址
例如192.168.234.132想与192.168.234.133进行通信,在命令提示符下查看ARP表,并没有看到192.168.234.133的mac地址,所以无法直接通信,此时需要网络层协议ARP去获取数据链路层的mac地址
第一步:打开wireshark工具选择网卡进行抓包
第二步:使用234.132 ping 234.133
第三步:抓取并分析ARP请求包
将ARP请求包展开发现192.168.234.132首先发送arp请求包在网络上询问who has 192.168.234.133 并且告诉对方了自己的 ip 地址
将arp请求包进一步扩展开来又发现在该请求包内还包含了源mac地址和目的mac地址,源mac地址为192.168.234.132这台主机的mac,而目的mac为ff:ff:ff:ff:ff:ff,是广播包的典型特征,此时理解了两个知识点:
1、要通信需mac,没mac先询问
2、arp请求包为广播包

用图简单表示出来是这样的
接着我们打开第二个ARP包进行分析:
wireshar对这个包的描述是 192.168.234.133 at 00-0C-29-86-43-3A,我们知道了192.168.234.133这个IP地址对应的mac地址
扩展开来看,发现源mac地址就是192.168.234.133对应mac地址,所以这个包就是上面那个arp请求包的响应包
整个arp请求的简图表示出来如下:
最后一步:
查看192.168.234.132的arp表是否将192.168.234.133的mac地址绑定
打开cmd 输入arp -a 会发现192.168.234.133 与 对应mac 已经绑定
另外还有个静态绑定的方法,直接在cmd里面输入
arp -s 192.168.234.133 00-0C-29-86-43-3A
小型的局域网或家庭网使用静态绑定的方法更安全,但是实际办公网络中更复杂,使用静态绑定不太实际
ARP攻击原理
- ARP攻击的思维
arp攻击的思维是以从第三方攻击者的角度对内网进行监听,当监听到某pc的arp请求包,然后对该请求包进行虚假回应,实现arp欺骗
- ARP攻击的协议理解
上面讲过了ARP的通信原理,arp请求包是一个广播包,意味着当某PC进行arp请求的时候,内网的其他主机也会收到该请求包,正常情况下如果不是该请求包查找的IP地址,是会将该请求包丢弃,而攻击者会去主动回应自己的mac地址,也就是说冒充别人的IP写上自己的MAC
这个图就能描述出整个ARP欺骗过程,内网通信始终会经过交换机,除非是两台机器直连,从第一步到第三步之后,使用 arp -a 查看会发现192.168.234.132 会将 192.168.234.133 与 00-0C-29-31-44-9C 绑定,如图:
ARP协议遵循一个原则,后到优先原则,所以这也成为了arp协议最容易被用来攻击的原因,随时随地都能更改你的arp表
此时理解了两个知识点:
1、arp协议是不安全协议
2、arp协议遵循后到优先原则