十几年老网工经验之谈:如何在交换机上建立防arp机制

接着跟大家讲讲网工方面的课题。大家在工作的时候最怕就是出现大面积网络瘫痪的情况,如果整个局域网都无法上网,那很好判断肯定是出口路由出问题了,查出口路由或者查ISP。就怕部分电脑还能上,而且不能上网的PC时而能上时而不能不上。此时大家跟我想的一样——ARP攻击可能性很大。

什么是arp攻击?

攻击者向电脑A发送一个伪造的ARP响应,告诉电脑A:电脑B的IP地址192.168.2.101对应的MAC地址是6c-72-e7-5f-02-ea,电脑A信以为真,将这个对应关系写入自己的ARP缓存表中,以后发送数据时,将本应该发往电脑B的数据发送给了攻击者。同样的,攻击者向电脑B也发送一个伪造的ARP响应,告诉电脑B:电脑A的IP地址192.168.2.100对应的MAC地址是d8-96-95-4e-ca-a5,电脑B也会将数据发送给攻击者。

至此攻击者就控制了电脑A和电脑B之间的流量,他可以选择被动地监测流量,获取密码和其他涉密信息,也可以伪造数据,改变电脑A和电脑B之间的通信内容。这就是arp攻击的大抵方式。

局域网中ARP攻击该怎么办?

如果你的局域网出现ARP攻击了,在排查的过程中肯定是要应急地让某些电脑先上网保证公司最低限度的运营。

Windows XP系统应急操作:1、开始-->运行-->CMD-->输入命令“arp -a”;2、进行静态绑定网关IP和MAC操作,输入命令“arp -s 192.168.2.1 2c-b2-1a-5f-87-2d”。 如图:

arp -a命令

arp -s命令

Windows 7/ Windows 10系统应急操作:1、在DOS命令提示符下输入命令“netsh interface ipv4 show interface” 回车,查看你电脑所有网卡的idx并从中确定你要进行邦定的idx,一般都为11;2、输入命令“netsh interface ipv4 set neighbors 11 192.168.2.1 2c-b2-1a-5f-87-2d”实现静态邦定。如图:

查询Idx 命令

Win 7静态绑定命令

今天向大家讲讲在交换机上如何防范arp攻击

一、ARP表项严格学习(arp learning strict)

如果大量用户在同一时间段内向设备发送大量ARP报文,或者攻击者伪造正常用户的ARP报文发送给设备,则会造成下面的危害:

设备因处理大量ARP报文而导致CPU负荷过重,同时设备学习大量的ARP报文可能导致设备ARP表项资源被无效的ARP条目耗尽,造成合法用户的ARP报文不能继续生成ARP条目,进而导致用户无法正常通信。

伪造的ARP报文将错误地更新设备的ARP表项,导致用户无法正常通信。

为避免上述危害,可以在网关设备上部署ARP表项严格学习功能。

ARP表项严格学习是指只有本设备主动发送的ARP请求报文的应答报文才能触发本设备学习ARP,其他设备主动向本设备发送的ARP报文不能触发本设备学习ARP,这样,可以拒绝大部分的ARP报文攻击。如图:

通常情况下,当UserA向Gateway发送ARP请求报文后,Gateway会向UserA回应ARP应答报文,并且添加或更新UserA对应的ARP表项。当Gateway配置ARP表项严格学习功能以后:

对于Gateway收到UserA发送来的ARP请求报文,Gateway不添加也不更新UserA对应的ARP表项。如果该请求报文请求的是Gateway的MAC地址,那么Gateway会向UserA回应ARP应答报文。

如果Gateway向UserB发送ARP请求报文,待收到与该请求对应的ARP应答报文后,Gateway会添加或更新UserB对应的ARP表项。

二、配置防止ARP中间人攻击

当网络中存在中间人攻击时,中间人仿冒服务器,向客户端发送带有自己的MAC和服务器IP的报文,让客户端学到中间人的IP和MAC,达到仿冒服务器的目的。然后,中间人向服务器发送带有自己的MAC和客户端IP的报文,让服务器学到中间人的IP和MAC,达到仿冒客户端的目的。这样攻击者就可以获得服务器和客户端的数据。

为了避免受到中间人攻击,可以在交换机上配置ARP报文检查功能,对接口或VLAN下收到的ARP报文和绑定表进行匹配检查,当报文的检查项和绑定表中的特征项一致时,转发该报文,否则丢弃报文。如图:

Switch的Eth0/0/1和Eth0/0/2接口连接了两个用户。假设Eth0/0/2接口连接的用户是一个攻击者。为了防止ARP中间人攻击,要求在Switch上配置ARP报文检查功能,只有接收到的ARP报文信息和绑定表中的内容一致才会被转发,否则报文将被丢弃。

1.配置ARP报文检查功能

# 在连接Client的Eth0/0/1接口使能ARP报文检查功能。

[Quidway] interface ethernet 0/0/1

[Quidway-Ethernet0/0/1] arp anti-attack check user-bind enable

[Quidway-Ethernet0/0/1] arp anti-attack check user-bind check-item ip-address mac-address vlan

[Quidway-Ethernet0/0/1] quit

# 在连接Attacker的Eth0/0/2接口使能ARP报文检查功能。

[Quidway] interface ethernet 0/0/2

[Quidway-Ethernet0/0/2] arp anti-attack check user-bind enable

[Quidway-Ethernet0/0/2] arp anti-attack check user-bind check-item ip-address mac-address vlan

[Quidway-Ethernet0/0/2] quit

2.配置静态绑定表项

# 配置Client为静态绑定表项。

[Quidway] user-bind static ip-address 10.0.0.1 mac-address 0001-0001-0001 interface Ethernet 0/0/1 vlan 10

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180721A02YV600?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券