如何解决无线局域网内伪造DHCP 服务器攻击
2020-10-26唐磊
唐磊
(重庆三峡职业学院信息化建设办公室,重庆404155)
1 概述
我校某办公楼内出现计算机使用拨号客户端连接上网提示“当前网络不可达,请稍后认证”,无法认证上网。使用ping 命令检查网络连通性,发现该办公楼的网关地址正常连通,但获取的DNS 地址为192.168.1.1,导致无法通过认证。手动配置计算机的IP 地址为192.168.1.250,网关地址为192.168.1.1,在浏览器中输入http://192.168.1.1,可以访问无线路由器的管理界面(如图1 所示)。将计算机的DNS 地址配置为61.128.128.68,能正常认证上网,因此断定网络故障是由局域网内接入无线路由器引发的伪造DHCP 服务器攻击所致。
图1 路由器管理界面
2 问题原因分析
产生上述问题的原因是:客户机通过广播方式发送DHCP请求寻找DHCP 服务器,DHCP 服务器接收到客户机的IP 租约请求时,同时提供IP 租约给客户机。客户机收到IP 租约时,同时发送DHCPREQUEST 消息。当DHCP 服务器收到消息后,同时完成DHCP 分配。由于局域网中同时存在多个DHCP 服务器,所有DHCP 服务器都收到计算机发送的DHCP 请求,互相争夺DHCP 提供权,导致计算机获取到伪装DHCP 服务器的IP地址,从而无法上网。
3 解决方法
对于伪造DHCP 服务器,本文采用的解决方法步骤如下:
第一步:在故障电脑上命令提示符中输入arp -a 命令,在出现的IP 地址与物理地址列表信息中,查找到IP 地址192.168.1.1 的物理地址为be-5f-f6-01-a8-12,此物理地址为路由器所对应的硬件MAC 地址。如图2 所示。
第二步:使用telnet 命令登录AC,通过display wlan client |in be5f-f601-a812 命令查看该无线路由器接入的AP,命令执行如下:
再次使用命令 display wlan ap all address | in e-4f-410-sh,可知该无线路由器通过名称为e-4f-410-shiwai 的AP 接入,该AP 的物理地址为1cab-34c5-c340。
图2 ARP 缓存列表
第三步:使用telnet 命令登录到E 栋的汇聚交换机,通过display mac-address 1cab-34c5-c340 命令查看该AP 的MAC 地址表项,命令执行情况如下:
从命令执行情况可知,该AP 的MAC 地址所对应的交换机端口号为GE1/0/18。因为交换机在收到数据帧后,首先记录其源MAC 地址和对应接口到MAC 表中,然后会检查自己的MAC表中是否有数据帧中目标MAC 地址的信息,通过该原理可找到该AP 所对应的交换机端口。
第四步:通过shutdown 命令关闭GE1/0/18 端口,将无线路由器接入的AP 与内网通信阻断。要想从根本上解决无线局域网内伪造DHCP 服务器攻击,则要在交换机中开启DHCP Snooping 功能。为防止非法DHCP 服务的问题,DHCP Snooping把端口分为两种类型,TRUST 端口和UNTRUST 端口,设备只转发TRUST 端口收到的DHCP 应答报文,丢弃所有来自UNTRUST 端口的应答报文,实现对伪造DHCP 服务器的屏蔽。配置命令如下:
汇聚交换机:
其它接入端口(上联口除外)配置方法同上。
接入交换机:
其它接入端口(上联口除外)配置方法同上。
4 结论
通过在交换机中配置DHCP Snooping 后,已解决了局域网内伪造DHCP 服务器攻击的问题。伪造DHCP 服务器攻击是网络常见故障之一。如果交换机不支持DHCP Snooping 功能,还可通过其他的方法如端口隔离、接入层ACL 和接入认证来进行防范。