什么是DAI
DAI(Dynamic ARP Inspection)即动态ARP检测,是一种利用绑定表来防御中间人攻击的ARP安全功能。


DAI(Dynamic ARP Inspection)即动态ARP检测,是一种利用绑定表来防御中间人攻击的ARP安全功能。
为什么需要DAI
网络中针对ARP的攻击层出不穷,中间人攻击是常见的ARP欺骗攻击方式之一。
中间人攻击(Man-in-the-middle attack)是指攻击者与通讯的两端分别创建独立的联系,并交换其所收到的数据,使通讯的两端认为与对方直接对话,但事实上整个会话都被攻击者完全控制。在中间人攻击中,攻击者可以拦截通讯双方的通话并插入新的内容。
如下图所示,攻击者主动向UserA发送伪造UserB的ARP报文,导致UserA的ARP表中记录了错误的UserB地址映射关系,攻击者可以轻易获取到UserA原本要发往UserB的数据;同样,攻击者也可以轻易获取到UserB原本要发往UserA的数据。这样,UserA与UserB间的信息安全无法得到保障。
为了防御中间人攻击,避免合法用户的数据被中间人窃取,可以开启动态ARP检测功能。

中间人攻击
DAI是如何工作的
DAI利用绑定表来防御中间人攻击。当设备收到ARP报文时,将此ARP报文对应的源IP地址、源MAC地址、接口和VLAN信息和绑定表的信息进行比较,如果信息匹配,说明发送该ARP报文的用户是合法用户,允许此用户的ARP报文通过,否则就认为是攻击,丢弃该ARP报文。
DAI功能仅适用于DHCP Snooping场景、存在静态绑定表的场景。设备使能DHCP Snooping功能后,当DHCP用户上线时,设备会自动生成DHCP Snooping绑定表;对于静态配置IP地址的用户,设备不会生成DHCP Snooping绑定表,所以需要手动添加静态绑定表。绑定表如下表所示,包括静态绑定表和DHCP Snooping动态绑定表两种。
表1-1 绑定表

DAI原理图如下图所示,非法主机仿冒合法主机的发送ARP报文到达Switch后,因报文和绑定表不匹配被Switch丢弃,从而Switch上的ARP表不会被错误更新。

DAI实现原理图
当设备上部署动态ARP检测功能后,如果攻击者连接到设备并试图发送伪造的ARP报文,设备会根据绑定表检测到这种攻击行为,对该ARP报文进行丢弃处理。
DAI的应用场景
如下图所示,局域网中UserA、UserB、UserC等DHCP用户通过Switch接入连接到Gateway访问Internet。
正常情况下,UserA、UserB、UserC上线之后,通过相互之间交互ARP报文,UserA、UserB、UserC和Gateway上都会创建相应的ARP表项。此时,如果有攻击者通过在广播域内发送伪造的ARP报文,篡改Gateway或者UserA、UserB、UserC上的ARP表项,攻击者可以轻而易举地窃取UserA、UserB、UserC的信息或者阻碍UserA、UserB、UserC正常访问网络。

防ARP欺骗攻击组网
为了避免上述危害,可以在接入设备上部署动态ARP检测功能。部署动态ARP检测功能后,当Switch收到ARP报文时,将此ARP报文中的源IP、源MAC、收到ARP报文的接口及VLAN信息和绑定表的信息进行比较,如果信息匹配,则认为是合法用户,允许此用户的ARP报文通过,否则认为是攻击,丢弃该ARP报文,这样可以有效防止中间人攻击。
DAI与IPSG的区别
DAI和IPSG都是利用绑定表(静态绑定表者DHCP Snooping绑定表)实现对报文过滤的技术。它们的主要区别如下表所示。
表1-2 DAI与IPSG的区别

另外,IPSG无法避免地址冲突。例如,当非法主机在合法主机在线时盗用其IP地址,非法主机发送的ARP请求会广播到合法主机,从而产生地址冲突。所以,为了避免IP地址冲突,可以在部署IPSG的同时配置DAI。

更多推荐



所有评论(0)