Cisco环境解决ARP欺骗问题

hacker5年前黑客文章715
因为经常看到网上有看到求助ARP病毒防范办法,其实ARP欺骗原理简单,利用的是ARP协议的一个“缺陷”,免费ARP来达到欺骗主机上面的网关的ARP表项。


其实免费ARP当时设计出来是为了2个作用的:
1,IP地址冲突检测
2,ARP条目自动更新,更新网关。

ARP欺骗就是利用这里面的第二条,攻击的主机发送一个ARP更新,条目的ip地址是网关,但是MAC地址一项,却不是网关,当其他主机接受到,会根据ARP协议的规则,越新的越可靠的原则,达到欺骗的目的。

虽然ARP不是tcp/ip协议簇中的一员,但是鉴于以太网的大行其道,所以放弃动态ARP协议,使用手动方式的来来做ARP映射,好像不大现实(个别情况除外)。

一、深入ARP协议特征

我在这里介绍Cisco *** 环境下解决这个问题的思路:
其实这里面使用到了2个技术:DHCP snooping和ARP inspection

1、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是文件名,而不是文件夹,同时文件名要手工创建一个
2. 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报文,默认是检测

二.注意点:交换机会错认受DoS攻击

对于前面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服务器使用了中继服务,那需要在网关交换机上键入如下命令:
*** 一:
inter vlan7
ip DHCP relay information trusted
*** 二:
switch(config)# ip DHCP relay information trust-all

三.总结:防止非法的ARP请求

虽然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地址,造成地址冲突的问题。
标签: 黑客技术

相关文章

OllyDbg是不是适用全部电脑操作系统?

OllyDbg是不是适用全部电脑操作系统?

什么叫OllyDbg? 这一黑客工具是一个32位系统汇编器剖析程序调试。二进制代码剖析促使该专用工具在源不能用的状况下很有效。OllyDbg具备优良的操作界面,循环系统,API启用,高級编码剖析,可...

JohnRipper是“最后的”登陆密码黑客工具!专用工

JohnRipper是“最后的”登陆密码黑客工具!专用工

什么叫John the Ripper? John the Ripper是最著名的密码破解(网络黑客)专用工具,这就是为何它一直在大家的“十大黑客工具”中。除开有有含义的名字,大家喜爱John the...

77种网站XSS跨站攻击脚本语法

XSS又叫CSS (Cross-Site Script) ,跨站脚本攻击。恶意攻击者往Web页面里插入恶意html代码 当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意用...

如何打造个人成功博客教程:建站思路与上线

如何打造个人成功博客教程:建站思路与上线

  目前有不少的站长是在做博客网站的,特别是很多新手。因为博客比较简单,需要的精力还有技术相对来说都比较少一点。不过据我一直观察真正会做博客的站长其实真的很少,大部分的博客...

OSSECHIDS的典型性主要用途是啥?

OSSECHIDS的典型性主要用途是啥?

什么叫OSSEC HIDS? OSSEC HIDS是一个多服务平台,可拓展和根据开源系统的服务器入侵防御系统系统软件,具备强劲的强劲的有关和剖析模块。   OSSEC HIDS是不是完全免...

XSS技术专业表述

XSS技术专业表述

先给大伙说一下XSS的技术专业表述吧!   什么叫XSS进攻? 每每程序运行的新网页页面中包括不会受到信赖的、未历经适当认证或转义的数据信息,或是应用能够建立JavaScript 的电脑浏...