齐头并进堵源治本高校校园网ARP攻击防御解决方案DIGTIAL CHINA DIGITAL CAMPUS神州数码网络有限公司2008-07前言自2006年以来,基于病毒的arp攻击愈演愈烈,几乎所有的校园网都有遭遇过。
地址转换协议ARP(Address Resolution Protocol)是个链路层协议,它工作在OSI参考模型的第二层即数据链路层,与下层物理层之间通过硬件接口进行联系,同时为上层网络层提供服务。
ARP攻击原理虽然简单,易于分析,但是网络攻击往往是越简单越易于散布,造成的危害越大。
对于网络协议,可以说只要没有验证机制,那么就可以存在欺骗攻击,可以被非法利用。
下面我们介绍几种常见ARP攻击典型的症状:¾上网的时候经常会弹出一些广告,有弹出窗口形式的,也有嵌入网页形式的。
下载的软件不是原本要下载的,而是其它非法程序。
¾网关设备ARP表项存在大量虚假信息,上网时断时续;网页打开速度让使用者无法接受。
¾终端不断弹出“本机的XXX段硬件地址与网络中的XXX段地址冲突”的对话框。
对于ARP攻击,可以简单分为两类:一、ARP欺骗攻击,又分为ARP仿冒网关攻击和ARP仿冒主机攻击。
二、ARP泛洪(Flood)攻击,也可以称为ARP扫描攻击。
对于这两类攻击,攻击程序都是通过构造非法的ARP报文,修改报文中的源IP地址与(或)源MAC地址,不同之处在于前者用自己的MAC地址进行欺骗,后者则大量发送虚假的ARP报文,拥塞网络。
主机A主机D主机B主机C图一 ARP仿冒网关攻击示例神州数码网络秉承“IT服务随需而动”的理念,对于困扰高教各位老师已久的ARP 攻击问题,结合各个学校网络现状,推出业内最全、适用面最广、最彻底的ARP整体解决方案。
神州数码网络公司从客户端程序、接入交换机、汇聚交换机,最后到网关设备,都研发了ARP攻击防护功能,高校老师可以通过根据自己学校的网络特点,选取相关的网络设备和方案进行实施。
一、接入交换机篇接入交换机是最接近用户侧的网络设备,也最适于通过它进行相关网络攻击防护。
通过对接入交换机的适当设置,我们可以将很多网络威胁隔离在交换机的每端口内,而不至于对整网产生危害。
1、AM功能AM(access management)又名访问管理,它利用收到数据报文的信息(源IP 地址或者源IP+源MAC)与配置硬件地址池(AM pool)相比较,如果找到则转发,否则丢弃。
AM pool 是一个地址列表,每一个地址表项对应于一个用户。
每一个地址表项包括了地址信息及其对应的端口。
地址信息可以有两种:¾ IP 地址(ip-pool),指定该端口上用户的源IP 地址信息。
¾ MAC-IP 地址(mac-ip pool),指定该端口上用户的源MAC 地址和源IP 地址信息。
当AM使能的时候,AM模块会拒绝所有的IP报文通过(只允许IP地址池内的成员源地址通过)。
我们可以在交换机端口创建一个MAC+IP 地址绑定,放到地址池中。
当端口下联主机发送的IP报文(包含ARP报文)中,所含的源IP+源MAC不符合地址池中的绑定关系,此报文就将被丢弃。
配置命令示例如下:举例:使能AM 并允许交接口4 上源IP为192.1.1.2,源MAC是00-01-10-22-33-10 的用户通过。
Switch(Config)#am enableSwitch(Config)#interface Ethernet 0/0/4Switch(Config-Ethernet0/0/4)#am portSwitch(Config-Ethernet0/0/4)#am mac-ip-pool 00-01-10-22-33-10 192.1.1.21)功能优点配置简单,除了可以防御ARP攻击,还可以防御IP扫描等攻击。
适用于信息点不多、规模不大的静态地址环境下。
2)功能缺点1、需要占用交换机ACL资源;2、网络管理员配置量大,终端移动性差。
2、ARP Guard功能基本原理就是利用交换机的过滤表项,检测从端口输入的所有ARP 报文,如果ARP 报文的源IP 地址是受到保护的IP 地址,就直接丢弃报文,不再转发。
举例:在端口Ethernet0/0/1 启动配置ARP Guard 地址192.168.1.1(设为网关地址)。
Switch(Config)#interface ethernet0/0/1Switch(Config- Ethernet 0/0/1)# arp-guard ip 192.168.1.1STOP主机B主机D主机C主机A端口Ethernet0/0/1端口发出的仿冒网关ARP报文都会被丢弃,所以ARP Guard 功能常用于保护网关不被攻击。
1)功能优点配置简单,适用于ARP仿冒网关攻击防护快速部署。
2)功能缺点ARP Guard需要占用芯片FFP 表项资源,交换机每端口配置数量有限。
3、DHCP Snooping 功能实现原理:接入层交换机监控用户动态申请IP 地址的全过程,记录用户的IP 、MAC 和端口信息,并且在接入交换机上做多元素绑定,从而在根本上阻断非法ARP 报文的传播。
下图为交换机DHCP Snooping 功能原理说明:主机D 主机C 主机B 主机A 1)主机A 向DHCP Server 发起DHCP 请求,交换机记录下发起请求的PORT 和MAC 。
2)DHCP Server 返回分配给用户的IP 地址,交换机上记录下DHCP 返回的IP 地址。
3)交换机根据DHCP snooping 功能记录下来的信息,在相应的交换机端口上绑定合法的IP 、MAC 信息。
举例:如上图在交换机在端口Ethernet0/0/2 启动DHCP Snooping 功能,并进行ARP 绑定。
Switch(Config)#ip dhcp snooping enable Switch(Config)#ip dhcp snooping binding enable Switch(Config)#interface ethernet 0/0/1Switch(Config-Ethernet0/0/1)#ip dhcp snooping trust //DHCP 服务器连接端口需设置为TrustSwitch(Config-Ethernet0/0/1)#interface ethernet 0/0/2 Switch(Config-Ethernet0/0/2)#ip dhcp snooping binding arp Switch(Config-Ethernet0/0/2)#exit1)功能优点被动侦听,自动绑定,对信息点数量没有要求,适用于IP 地址动态分配环境下广泛实施。
2)功能缺点IP 地址静态环境下,需要手工添加绑定关系,配置量较大。
4、端口ARP 限速功能神州数码系列交换机防ARP 扫描的整体思路是若发现网段内存在具有ARP 扫描特征的主机或端口,将切断攻击源头,保障网络的安全。
有两种方式来防ARP 扫描:基于端口和基于IP 。
基于端口的ARP 扫描会计算一段时间内从某个端口接收到的ARP 报文的数量,若超过了预先设定的阈值,则会down 掉此端口。
基于IP 的ARP 扫描则计算一段时间内从网段内某IP 收到的ARP 报文的数量,若超过了预先设置的阈值,则禁止来自此IP 的任何流量,而不是down 与此IP 相连的端口。
此两种防ARP 扫描功能可以同时启用。
端口或IP 被禁掉后,可以通过自动恢复功能自动恢复其状态。
主机D 主机C 主机B S-ARP举例:如上图在交换机的端口启动ARP 报文限速功能。
Switch(Config)#anti-arpscan enable //使能Anti-arpscanSwitch(Config)#anti-arpscan port-based threshold 10 //设置每个端口每秒的ARP 报文上限Switch(Config)#anti-arpscan ip-based threshold 10 //设置每个IP每秒的ARP报文上限Switch(Config)#anti-arpscan recovery enable //开启防网段扫描自动恢复功能Switch(Config)#anti-arpscan recovery time 90//设置自动恢复的时间90秒1)功能优点全局使能,无须在端口模式下配置,配置简单。
2)功能缺点不能杜绝虚假ARP报文,只是适用于对ARP扫描或者flood攻击防御,建议和交换机其它功能一起使用。
二、汇聚交换机篇校园网内信息点众多,部署的接入交换机的品牌杂、型号多已经是不争的事实。
在很多高校,不可网管、不支持ACL的交换机数量也不在少数,所以保护学校现有投资、不升级接入交换机的前提,全网防御ARP病毒攻击,成为了神州数码网络的关注点。
下面我们介绍一种通过神州数码汇聚交换机实现全网防御ARP攻击的解决方案。
1、端口隔离功能介绍端口隔离是一个基于端口的独立功能,作用于端口和端口之间,隔离相互之间的流量,利用端口隔离的特性,可以实现vlan内部的端口隔离,从而节省vlan资源,增加网络的安全性,现在大多数接入交换机都具备此功能。
各个交换机的拓扑和配置如上图所示,要求在交换机1 上配置端口隔离后,交换机1的e0/0/1 和e0/0/2 不通,但e0/0/1 和e0/0/2 都可以和上联口e0/0/25 通。
即:所有下行端口之间不能互通,但下行端口可以和指定的上行端口互通。
2、Local ARP Proxy功能介绍Local ARP proxy:本地arp代理功能。
是指在一个vlan内,通过使用一台三层交换机(一般为汇聚交换机),来作为指定的设备对另一设备作出ARP请求的应答,实现限制arp报文在同一vlan内的转发,从而引导数据流量通过交换机进行三层转发。
该功能通常需要和其他的安全功能配合使用,例如在汇聚交换机上配置local arp proxy,而在下连的二层交换机上配置端口隔离功能,这样将会引导所有的IP流量通过汇聚交换机上进行三层转发,二层交换机下联主机不能相互ARP欺骗。
3、防御ARP攻击原理如下图所示,端口Eth0/0/2和Eth0/0/3在Vlan100内,接入交换机开启端口隔离功能,主机A和主机B二层流量不可达。
网关地址为192.168.1.1,汇聚交换机启用Local ARP proxy 功能。
192.168.1.1Eth0/0/1Eth0/0/2Eth0/0/31.接入交换机启用端口隔离功能;汇聚交换机启用ARP Local Proxy功能和端口ARP限速功能;2.动态IP环境中,汇聚交换机通过DHCP Snooping检测ARP;静态IP环境中,可以使用神州数码专有的DHCP Snooping绑定工具,对汇聚交换机ARP表项进行初始化(静态地址环境下,还需要结合关闭交换机arp自动更新或者自动学习,可参见神州数码交换机手册);3.由于主机A没有主机B的MAC地址,因此主机A发送ARP Request并广播出去;4.在启动ARP Local Proxy的情况下,交换机向主机A发送ARP Reply报文(填充自己的MAC地址);5.主机A收到该ARP Reply之后,创建ARP表项,发送IP报文,封装的以太网帧头的目的MAC为交换机的MAC;6.当交换机收到该IP报文之后,交换机查询路由表(创建路由缓存),并下发硬件表项;7.当交换机有主机B的ARP表项情况下,直接封装以太网头部并发送报文(目的MAC为主机B);如果交换机没有主机B的ARP表项,那么会请求主机B的ARP,然后发送IP报文。