网络安全——ARP欺骗与突破封锁

ARP协议及其工作流程

ARP协议(地址解析协议)
  • 功能::将计算机的网络层协议地址(IP地址)解析成数据链路层的硬件MAC地址。

关于ARP协议属于网络层协议还是数据链路层协议的说法

  • 由于传送ARP分组使用的是IP协议,所以把ARP协议划归网络层
  • ARP协议的用途是为了从网络层使用的IP地址解析出在数据链路层使用的硬件地址,所以有的课本将ARP协议划归数据链路层
以主机A(IP_A,MAC_A)向同一个局域网内的主机B(IP_B,MAC_B)发数据包为例,ARP协议的工作流程简单描述如下:
  • 主机A通过IP_B查询本机的ARP缓存列表(其中存放了最近和本机通信过的主机的IP地址和相应MAC地址记录),看是否有相应的记录。有,则直接可以进行通信,无需解析;没有,转下一步。

  • 主机A向局域网内所有主机广播ARP请求报文:“我是IP_A,我的MAC地址是MAC_A,我想知道IP_B的MAC地址。”

  • 局域网内所有主机收到主机A的ARP请求报文后,首先检查自己的ARP缓存列表内是否有主机A的IP地址与相应MAC地址的记录,没有记录或者记录与新收到的报文不同,就更新本机的ARP缓存列表。然后比对自己的IP地址是否为IP_B。不是,则本机工作完毕;是,则向主机A发送ARP响应报文:“我是IP_B,我的MAC地址是MAC_B。 ”

  • 主机A收到来自主机B的ARP响应报文后,更新本机的ARP缓存列表。将MAC_B作为目的MAC地址写入以太帧,通过局域网送达主机B。

注:ARP是解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题,对于不同局域网的主机,无法进行解析。换句话说,也根本不需要解析。因为在这个跨网的通信过程中,需要路由器进行数据报的转发, 所以我们要跨网段传数据,只需要解析出网关的MAC地址即可!!!

为了减少局域网内的ARP通信量,ARP协议规定,即使一台主机收到的ARP响应报文并非自己请求得到,他也会将其更新到本机的ARP缓存列表中。而且ARP缓存列表的更新策略是以最新的为准,也就是说,在ARP缓存列表已存在相关记录的情况下,如果新收到的ARP应答报文中的记录与ARP缓存列表中的记录不符,ARP协议规定用最新的记录更新ARP缓存列表中的旧记录。ARP协议的这些设计原则使得ARP欺骗成为可能。

ARP协议把保存在ARP高速缓存表中的每一个映射地址项目设置了生存时间(老化时间),凡是超过老化时间的项目就会从ARP高速缓存表中删除掉。

ARP欺骗的几个目的

  • 阻断主机之间的通信
    如果攻击者的目的是阻断受骗主机的通信,那么ARP欺骗包指定的网卡一般是局域网内不存在的一块网卡,使主机将数据包全都发送给一个不存在的地址,造成通信失败。并且攻击目标只有一台受骗主机

  • 阻断主机与互联网的连接(对内网PC的网关欺骗)
    它通知路由器一系列错误的内网MAC地址,并按照一定的频率不断进行,使真实的地址信息无法通过更新保存在路由器中,结果路由器的所有数据只能发送给错误的MAC地址,造成正常PC无法收到信息。

  • 通过ARP欺骗对受骗主机的流量进行嗅探,使数据流量重定向
    攻击者的目的是重定向受骗主机的流量从而嗅探的话,那么ARP欺骗包就必须指定自己的网卡,并且同时指定通信的双方为攻击目标。也就是我们常说的,一个完整的ARP欺骗是“欺上瞒下”的。

ARP欺骗使数据流量重定向操作流程:

  • 若主机M(IP_M,MAC_M)想改变主机A(IP_A,MAC_A)与同一个局域网内的主机S(IP_S,MAC_S)之间的数据流流向,那么主机M只需要在固定时间间隔向主机A发送ARP响应报文:“我是IP_S,我的MAC地址是MAC_M。 ”,向主机S发送ARP响应报文:“我是IP_A,我的MAC地址是MAC_M。”。这样,主机A就会把本应送达主机S的数据发给主机M,主机S亦然。为了保证主机A与主机S之间的通信不被中断,主机M上需要有相应的数据转发机制。如此,主机M就成为主机A与主机S之间的“中间人”,他就可以监测主机A与主机B之间的会话内容。

  • 通信的双方不在同一个局域网内,例如,主机A位于LAN_A内,主机S位于LAN_A外,LAN_A的网关为R。这种情况下,由于局域网内所有发向外网的流量均需通过网关转发,因此“中间人”只要在主机A与网关R之间进行ARP欺骗,攻击者此时对于主机A扮演网关,对于网关扮演主机A。就可以完成数据流的重定向。

注:由于ARP欺骗所造成的通信故障属于数据链路层的故障

几款利用ARP欺骗来进行攻击的软件

  • 网络执法官
    “网络执法官”是一款局域网管理辅助软件,采用网络底层协议,能穿透各客户端 防火墙对网络中的每一台主机(本文中主机指各种计算机、交换机等配有IP的网络设备)进行监控;采用网卡号(MAC)识别用户,可靠性高

  • P2P终结者
    P2P终结者是由Net.Soft工作室开发的一套专门用来控制企业网络P2P下载流量的网络管理软件。软件通过截获路由器数据包,修改IP以及MAC缓存,达到控制网速的目的,简单一点去理解的话,P2P终结者就是通过不停的“攻击”路由器,从而达到控制网速,也正是因为P2P终结者的这种攻击,导致整个网络的负荷严重增加。

突破ARP欺骗封锁的方式

  • 安装的杀毒软件(比如360、腾讯电脑管家开启ARP防火墙)
  • 利用MAC地址静态绑定的方式,将需要通信双方的MAC地址绑定在该主机上
  • 修改本机MAC地址,骗过攻击者
查看ARP缓存以及绑定MAC地址的一些命令
  • 查看MAC地址:在DOS界面输入:ipconfig /all
  • 查看ARP缓存:在DOS界面输入:arp -a
  • 静态添加MAC地址到ARP缓存表中:在DOS界面输入:arp -s IP地址 MAC地址
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

loveCC_orange

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值