科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网安全频道Cisco环境下解决ARP欺骗的两种技术

Cisco环境下解决ARP欺骗的两种技术

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

ARP欺骗原理简单,利用的是免费ARP来达到欺骗主机上面的网关arp表项。这里介绍cisco环境下解决ARP欺骗的2个技术:dhcp snooping和ARP inspection。

作者:佚名 来源:IT168   2008年9月24日

关键字: CISCO 攻击防范 ARP欺骗 ARP攻击

  • 评论
  • 分享微博
  • 分享邮件

  网上有好多求助ARP病毒防范办法,其实ARP欺骗原理简单,利用的是ARP协议的一个“缺陷”,免费ARP来达到欺骗主机上面的网关的arp表项的。

  免费ARP当时设计出来是为了2个作用的:

  1.IP地址冲突检测

  2.ARP条目自动更新,更新网关。

  arp欺骗就是利用这里面的第二条,攻击的主机发送一个arp更新,条目的ip地址是网关,但是mac地址一项,却不是网关,当其他主机接受到,会根据arp协议的规则,越新的越可靠的原则,达到欺骗的目的。虽然arp不是tcp/ip协议簇中的一员,但是鉴于以太网的大行其道,所以放弃动态ARP协议,使用手动方式的来来做arp映射,好像不大现实(个别情况除外)。

  介绍下cisco网络环境下解决这个问题的思路:

  其实这里面使用到了2个技术:dhcp snooping和ARP inspection

  一.dhcp snooping

  DHCP Snooping技术是DHCP安全特性,通过建立和维护DHCP Snooping绑定表过滤不可信任的DHCP信息,这些信息是指来自不信任区域的DHCP信息。DHCP Snooping绑定表包含不信任区域的用户MAC地址、IP地址、租用期、VLAN-ID 接口等信息。

  当交换机开启了DHCP-Snooping后,会对DHCP报文进行侦听,并可以从接收到的DHCP Request或DHCP Ack报文中提取并记录IP地址和MAC地址信息。另外,DHCP-Snooping允许将某个物理端口设置为信任端口或不信任端口。信任端口可以正常接收并转发DHCP Offer报文,而不信任端口会将接收到的DHCP Offer报文丢弃。这样,可以完成交换机对假冒DHCP Server的屏蔽作用,确保客户端从合法的DHCP Server获取IP地址。

  作用:

  1.dhcp-snooping的主要作用就是隔绝非法的dhcp server,通过配置非信任端口。

  2.建立和维护一张dhcp-snooping的绑定表,这张表一是通过dhcp ack包中的ip和mac地址生成的,二是可以手工指定。

  这张表是后续DAI(dynamic arp inspect)和IP Source Guard 基础。这两种类似的技术,是通过这张表来判定ip或者mac地址是否合法,来限制用户连接到网络的。

  配置:

  switch(config)#ip dhcp snooping

  switch(config)#ip dhcp snooping vlan 10

  switch(config-if)#ip dhcp snooping limit rate 10

  /*dhcp包的转发速率,超过就接口就shutdown,默认不限制

  switch(config-if)#ip dhcp snooping trust

  /*这样这个端口就变成了信任端口,信任端口可以正常接收并转发DHCP Offer报文,不记录ip和mac地址的绑定,默认是非信任端口

  switch#ip dhcp snooping binding 0009.3452.3ea4 vlan 7 192.168.10.5 interface gi1/0/10

  /*这样可以静态ip和mac一个绑定

  switch(config)#ip dhcp snooping database tftp:// 10.1.1.1/dhcp_table

  /*因为掉电后,这张绑定表就消失了,所以要选择一个保存的地方,ftp,tftp,flash皆可。本例中的dhcp_table是文件名,而不是文件夹,同时文件名要手工创建一个。

  二. ARP inspection

  1.介绍

  DAI是以dhcp-snooping的绑定表为基础来检查mac地址和ip地址的合法性。

  2.配置

  switch(config)#ip dhcp snooping vlan 7

  switch(config)#ip dhcp snooping information option

  /*默认

  switch(config)#ip dhcp snooping

  switch(config)#ip arp inspection vlan 7

  /* 定义对哪些 VLAN 进行 ARP 报文检测

  switch(config)#ip arp inspection validate src-mac dst-mac ip

  /*对源,目mac和ip地址进行检查

  switch(config-if)#ip dhcp snooping limit rate 10

  switch(config-if)#ip arp inspection limit rate 15

  /* 定义接口每秒 ARP 报文数量

  switch(config-if)#ip arp inspection trust

  /*信任的接口不检查arp报文,默认是检测

  3.注意点

  对于前面dhcp-snooping的绑定表中关于端口部分,是不做检测的;同时对于已存在于绑定表中的mac和ip对于关系的主机,不管是dhcp获得,还是静态指定,只要符合这个表就可以了。如果表中没有就阻塞相应流量。

  在开始应用Dynamic ARP Inspection时,交换机会记录大量的数据包,当端口通过的数据包过多时,交换机会认为遭受DoS攻击,从而将端口自动errdisable,造成通信中断。为了解决这个问题,我们需要加入命令errdisable recovery cause arp-inspection

  在cisco网络环境下,boot request在经过了启用DHCP SNOOPING特性的设备上时,会在DHCP数据包中插入option 82的选项(具体见RFC3046)这个时候,boot request中数据包中的gateway ip address:为全0,所以一旦dhcp relay 设备检测到这样的数据包,就会丢弃。

  如果dhcp服务器使用了中继服务,那需要在网关交换机上键入如下命令:

  方法1:

  inter vlan7

  ip dhcp relay information trusted

  方法2:

  switch(config)# ip dhcp relay information trust-all

  三.总结

  虽然dhcp snooping是用来防止非法的dhcp server接入的,但是它一个重要作用是一旦客户端获得一个合法的dhcp offer。启用dhcp snooping设备会在相应的接口下面记录所获得IP地址和客户端的mac地址。这个是后面另外一个技术ARP inspection检测的一个依据。ARP inspection是用来检测arp请求的,防止非法的ARP请求。认为是否合法的标准的是前面dhcp snooping时建立的那张表。因为那种表是dhcp server正常回应时建立起来的,里面包括是正确的arp信息。如果这个时候有arp攻击信息,利用ARP inspection技术就可以拦截到这个非法的arp数据包。其实利用这个方法,还可以防止用户任意修改IP地址,造成地址冲突的问题。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章