ARP攻击原理:但凡局域网内存在arp攻击,说明网络存在“中间人”
1.PC1需要跟PC2通信,通过ARP请求包询问PC2的MAC地址,由于采用广播的形式,所以交换机会将ARP请求包从接口PC1广播到PC2和PC3。(注:交换机收到广播/组播/未知帧都会其他接口泛洪)
2.PC2根据询问信息,返回ARP单播回应包,此时PC3作为攻击者,没有返回ARP包,处于“监听”状态,为后续攻击做准备。
3.PC1和PC2根据ARP问答,将各自的ARP映射信息(IP---MAC)存储在本地ARP缓存
4.交换机根据其学习机制,记录MAC地址对应的接口信息,存储在CAM缓存表(也就是MAC表)。交换机收到数据包时,会解封装数据包,根据目标MAC字段进行转发
根据上面,总结:
1.主机通信需要查找ARP表,而交换机通信需要查找CAM表,(路由器通信则需要查找路由表)
注:ARP表:ip<-->mac, CAM表:mac<----->port(Router表:route<-------->port)
2.交换机基于源MAC地址学习,基于目的MAC地址转发
3.同一局域网内,攻击者可以根据主机ARP广播请求监听其IP和MAC信息
注:这里是“被动监听”,跟“主动扫描”原理上有区别
作为hacker,只要持续不停地发送欺骗包,就一定能覆盖掉正常的ARP回应包。稳健的arp嗅探/渗透工具,能在短时间内做网络扫描(例如1秒钟发送成千上百的数据包),能够持续对外发送欺骗包。而最终结果如下图
ARP攻击总结
1.ARP缓存表基于“后到优先”原则,ip与mac的映射信息能够被覆盖
2.ARP攻击基于伪造的ARP回应包,黑客通过构造“错位”的ip和MAC映射。覆盖主机的ARP表(被称为ARP毒化),最终截取用户的数据流量
3.一旦遭受ARP攻击,通过最终抓包信息流,账号和密码都可能被截取(如果通信的协议不是加密的)
扩展:vmware虚拟网卡模式
1.NAT地址翻转模式:可以访问互联网,共享真机的ip地址
2.Brige桥接模式,可以访问互联网,使用各自的ip地址
3.Host-Only主机模式。不可以访问互联网