Cisco DAI(dynamic arp inspection)

DAI(dynamic arp inspection) 是一种能够验证网络中ARP数据包的安全特性,可以防止中间人攻击。 通常需要和DHCP的snooping结合使用,因为要利用到DHCP snooping技术生成的绑定表。也可静态写IP和MAC的绑定表 原理:启用DAI后,将接口分为trusted和untrusted。对于untrusted接口,要进行ARP的检查,必须是和绑定表中的条目相匹配的ARP包才允许通过。 ip arp inspection vlan 1 //启用 int f0/1 ip arp inspection trust //指定arp检测的trust接口,一定要做 ip arp inspection limit rate 100 //限制每秒所接收的arp包个数 show ip arp inspection interfaces show ip arp inspection vlan 1 一个实际案例:(不跟DHCP的snooping结合,单独使用DAI) arp access-list WOLF permit ip host 162.16.40.1 mac host 0000.0c07.ac28 Cisco7609_2(config)#ip arp inspection vlan 40 Cisco7609_2(config)#ip arp inspection filter WOLF vlan 40 static 注意:ARP包是直接封装进二层的,所以上面的源保护技术没法对付ARP欺骗

Cisco交换机上防范ARP欺骗和二层攻击

人为实施通常是指使用一些黑客的工具对网络进行扫描和嗅探,获取管理帐户和相关密码,在网络上中安插木马,从而进行进一步窃取机密文件。攻击和欺骗过程往往比较隐蔽和安静,但对于信息安全要求高的企业危害是极大的。而来自木马或者病毒及蠕虫的攻击和往往会偏离攻击和欺骗本身的目的,现象有时非常直接,会带来网络流量加大、设备 CPU 利用率过高、二层生成树环路直至网络瘫痪。 目前这类攻击和欺骗工具已经非常成熟和易用,而目前企业在部署这方面的防范还存在很多不足,有很多工作要做。思科针对这类攻击已有较为成熟的解决方案,主要基于下面的几个关键的技术: • Port Security feature • DHCP Snooping • Dynamic ARP Inspection (DAI) • IP Source Guard 下面部分主要针对目前非常典型的二层攻击和欺骗说明如何在思科交换机上组合运用和部署上述技术,从而实现防止在交换环境中实施“中间人”攻击、 MAC/CAM 攻击、 DHCP 攻击、地址欺骗等,更具意义的是通过上面技术的部署可以简化地址管理,直接跟踪用户 IP 和对应的交换机端口;防止 IP 地址冲突。同时对于大多数对二层网络造成很大危害的具有地址扫描、欺骗等特征的病毒可以有效的报警和隔离。 1 MAC/CAM攻击的防范 1.1MAC/CAM攻击的原理和危害 交换机主动学习客户端的 MAC 地址,并建立和维护端口和 MAC 地址的对应表以此建立交换路径,这个表就是通常我们所说的 CAM 表。 CAM 表的大小是固定的,不同的交换机的 CAM 表大小不同。 MAC/CAM 攻击是指利用工具产生欺骗 MAC ,快速填满 CAM 表,交换机 CAM 表被填满后,交换机以广播方式处理通过交换机的报文,这时攻击者可以利用各种嗅探攻击获取网络信息。 CAM 表满了后,流量以洪泛方式发送到所有接口,也就代表 TRUNK 接口上的流量也会发给所有接口和邻接交换机,会造成交换机负载过大,网络缓慢和丢包甚至瘫痪。 1.2典型的病毒利用MAC/CAM攻击案例 曾经对网络照成非常大威胁的 SQL 蠕虫病毒就利用组播目标地址,构造假目标 MAC 来填满交换机 CAM 表。其特征如下图所示: 1.3使用 Port Security feature 防范MAC/CAM攻击 思科 Port Security feature 可以防止 MAC 和 MAC/CAM 攻击。通过配置 Port Security 可以控制: • 端口上最大可以通过的 MAC 地址数量 • 端口上学习或通过哪些 MAC 地址 • 对于超过规定数量的 MAC 处理进行违背处理 端口上学习或通过哪些 MAC 地址,可以通过静态手工定义,也可以在交换机自动学习。交换机动态学习端口 MAC ,直到指定的 MAC 地址数量,交换机关机后重新学习。目前较新的技术是 Sticky Port Security ,交换机将学到的 mac 地址写到端口配置中,交换机重启后配置仍然存在。 对于超过规定数量的 MAC 处理进行处理一般有三种方式(针对交换机型号会有所不同): • Shutdown 。这种方式保护能力最强,但是对于一些情况可能会为管理带来麻烦,如某台设备中了病毒,病毒间断性伪造源 MAC 在网络中发送报文。 • Protect 。丢弃非法流量,不报警。 • Restrict 。丢弃非法流量,报警,对比上面会是交换机 CPU 利用率上升但是不影响交换机的正常使用。推荐使用这种方式。 1.4配置 port-security 配置选项: Switch(config-if)# switchport port-security ? aging Port-security aging commands mac-address Secure mac address maximum Max secure addresses violation Security violation mode 配置 port-security 最大 mac 数目,违背处理方式,恢复方法 Cat4507(config)#int fastEthernet 3/48 Cat4507 (config-if)#switchport port-security Cat4507 (config-if)#switchport port-security maximum 2 Cat4507 (config-if)#switchport port-security violation shutdown Cat4507 (config)#errdisable recovery cause psecure-violation Cat4507 (config)#errdisable recovery interval 30 通过配置 sticky port-security学得的MAC interface FastEthernet3/29 switchport mode access switchport port-security switchport port-security maximum 5 switchport port-security mac-address sticky switchport port-security mac-address sticky 000b.db1d.6ccd switchport port-security mac-address sticky 000b.db1d.6cce switchport port-security mac-address sticky 000d.6078.2d95 switchport port-security mac-address sticky 000e.848e.ea01 1.5使用 其它技术 防范MAC/CAM攻击 除了 Port Security 采用 DAI 技术也可以防范 MAC 地址欺骗。 2 DHCP攻击的防范 2.1采用DHCP管理的常见问题: 采用 DHCP server 可以自动为用户设置网络 IP 地址、掩码、网关、 DNS 、 WINS 等网络参数,简化了用户网络设置,提高了管理效率。但在 DHCP 管理使用上也存在着一些另网管人员比较问题,常见的有: • DHCP server 的冒充。 • DHCP server 的 Dos 攻击。 • 有些用户随便指定地址,造成网络地址冲突。 由于 DHCP 的运作机制,通常服务器和客户端没有认证机制,如果网络上存在多台 DHCP 服务器将会给网络照成混乱。由于用户不小心配置了 DHCP 服务器引起的网络混乱非常常见,足可见故意人为破坏的简单性。通常黑客攻击是首先将正常的 DHCP 服务器所能分配的 IP 地址耗尽,然后冒充合法的 DHCP 服务器。最为隐蔽和危险的方法是黑客利用冒充的 DHCP 服务器,为用户分配一个经过修改的 DNS server ,在用户毫无察觉的情况下被引导在预先配置好的假金融网站或电子商务网站,骗取用户帐户和密码,这种攻击是非常恶劣的。 对于 DHCP server 的 Dos 攻击可以利用前面将的 Port Security 和后面提到的 DAI 技术,对于有些用户随便指定地址,造成网络地址冲突也可以利用后面提到的 DAI 和 IP Source Guard 技术。这部分着重介绍 DHCP 冒用的方法技术。 2.2DHCP Snooping技术概况 DHCP Snooping技术是DHCP安全特性,通过建立和维护DHCP Snooping绑定表过滤不可信任的DHCP信息,这些信息是指来自不信任区域的DHCP信息。DHCP Snooping绑定表包含不信任区域的用户MAC地址、IP地址、租用期、VLAN-ID 接口等信息,如下表所示: cat4507#sh ip dhcp snooping binding MacAddress IpAddress Lease(sec) Type VLAN Interface ------------------ --------------- ---------- ------- ---- ----------------- 00:0D:60:2D:45:0D 10.149.3.13 600735 dhcp-snooping 100 GigabitEthernet1/0/7 这张表不仅解决了 DHCP用户的IP和端口跟踪定位问题,为用户管理提供方便,而且还供给动态ARP检测DA)和IP Source Guard使用。 2.3基本防范 首先定义交换机上的信任端口和不信任端口,对于不信任端口的 DHCP 报文进行截获和嗅探, DROP 掉来自这些端口的非正常 DHCP 报文,如下图所示: 基本配置示例如下表: IOS 全局命令: ip dhcp snooping vlan 100,200 /* 定义哪些 VLAN 启用 DHCP 嗅探 ip dhcp snooping 接口命令 ip dhcp snooping trust no ip dhcp snooping trust (Default) ip dhcp snooping limit rate 10 (pps) /* 一定程度上防止 DHCP 拒绝服 /* 务攻击 手工添加 DHCP 绑定表 ip dhcp snooping binding 1.1.1 vlan 1 1.1.1.1 interface gi1/1 expiry 1000 导出 DHCP 绑定表到 TFTP 服务器 ip dhcp snooping database tftp:// 10.1.1 .1/directory/file 需要注意的是 DHCP 绑定表要存在本地存贮器 (Bootfalsh 、 slot0 、 ftp 、 tftp) 或导出到指定 TFTP 服务器上,否则交换机重启后 DHCP 绑定表丢失,对于已经申请到 IP 地址的设备在租用期内,不会再次发起 DHCP 请求,如果此时交换机己经配置了下面所讲到的 DAI 和 IP Source Guard 技术,这些用户将不能访问网络。 2.3高级防范 通过交换机的端口安全性设置每个 DHCP 请求指定端口上使用唯一的 MAC 地址,通常 DHCP 服务器通过 DHCP 请求的报文中的 CHADDR 段判断客户端 MAC 地址,通常这个地址和客户端的真是 IP 相同,但是如果攻击者不修改客户端的 MAC 而修改 DHCP 报文中 CHADDR ,实施 Dos 攻击, Port Security 就不起作用了, DHCP 嗅探技术可以检查 DHCP 请求报文中的 CHADDR 字段,判断该字段是否和 DHCP 嗅探表相匹配。这项功能在有些交换机是缺省配置的,有些交换机需要配置,具体需要参考相关交换机的配置文档。 3 ARP欺骗/ MITM(Man-In-The-Middle)攻击原理和防范 3.1 MITM(Man-In-The-Middle) 攻击原理 按照 ARP 协议的设计,为了减少网络上过多的 ARP 数据通信,一个主机,即使收到的 ARP 应答并非自己请求得到的,它也会将其插入到自己的 ARP 缓存表中,这样,就造成了“ ARP 欺骗”的可能。如果黑客想探听同一网络中两台主机之间的通信(即使是通过交换机相连),他会分别给这两台主机发送一个 ARP 应答包,让两台主机都“误”认为对方的 MAC 地址是第三方的黑客所在的主机,这样,双方看似“直接”的通信连接,实际上都是通过黑客所在的主机间接进行的。黑客一方面得到了想要的通信内容,另一方面,只需要更改数据包中的一些信息,成功地做好转发工作即可。在这种嗅探方式中,黑客所在主机是不需要设置网卡的混杂模式的,因为通信双方的数据包在物理上都是发送给黑客所在的中转主机的。 这里举个例子,假定同一个局域网内,有 3 台主机通过交换机相连: A 主机: IP 地址为 192.168.0.1 , MAC 地址为 01:01:01:01:01:01 ; B 主机: IP 地址为 192.168.0.2 , MAC 地址为 02:02:02:02:02:02 ; C 主机: IP 地址为 192.168.0.3 , MAC 地址为 03:03:03:03:03:03 。 B 主机对 A 和 C 进行欺骗的前奏就是发送假的 ARP 应答包,如图 所示 在收到 B主机发来的ARP应答后,A主机应知道: 到 192.168.0.3 的数据包应该发到 MAC 地址为 020202020202 的主机; C 主机也知道:到 192.168.0.1 的数据包应该发到 MAC 地址为 020202020202 的主机。这样, A 和 C 都认为对方的 MAC 地址是 020202020202 ,实际上这就是 B 主机所需得到的结果。当然,因为 ARP 缓存表项是动态更新的,其中动态生成的映射有个生命期,一般是两分钟,如果再没有新的信息更新, ARP 映射项会自动去除。所以, B 还有一个“任务”,那就是一直连续不断地向 A 和 C 发送这种虚假的 ARP 响应包,让其 ARP缓存中一直保持被毒害了的映射表项。 现在,如果 A 和 C 要进行通信,实际上彼此发送的数据包都会先到达 B 主机,这时,如果 B 不做进一步处理, A 和 C 之间的通信就无法正常建立, B 也就达不到“嗅探”通信内容的目的,因此, B 要对“错误”收到的数据包进行一番修改,然后转发到正确的目的地,而修改的内容,无非是将目的 MAC 和源 MAC 地址进行替换。如此一来,在 A 和 C 看来,彼此发送的数据包都是直接到达对方的,但在 B 来看,自己担当的就是“第三者”的角色。这种嗅探方法,也被称作“ Man-In-The-Middle ”的方法。如图 所示。 3.2攻击实例 目前利用 ARP原理编制的工具十分简单易用,这些工具可以直接嗅探和分析FTP、POP3、SMB、SMTP、HTTP/HTTPS、SSH、MSN等超过30种应用的密码和传输内容。 下面是测试时利用工具捕获的 TELNET 过程,捕获内容包含了 TELNET 密码和全部所传的内容 : 不仅仅是以上特定应用的数据,利用中间人攻击者可将监控到数据直接发给 SNIFFER等嗅探器,这样就可以监控所有被欺骗用户的数据。 还有些人利用 ARP原理 开发出网管工具,随时切断指定用户的连接。这些工具流传到捣乱者手里极易使网络变得不稳定,通常这些故障很难排查。 3.3防范方法 思科 Dynamic ARP Inspection (DAI)在交换机上提供IP地址和MAC地址的绑定, 并动态建立绑定关系。DAI 以 DHCP Snooping绑定表为基础,对于没有使用DHCP的服务器个别机器可以采用静态添加ARP access-list实现。DAI配置针对VLAN,对于同一VLAN内的接口可以开启DAI也可以关闭。通过DAI可以控制某个端口的ARP请求报文数量。通过这些技术可以防范“中间人”攻击。 3.3配置示例 IOS 全局命令: ip dhcp snooping vlan 100,200 no ip dhcp snooping information option ip dhcp snooping ip arp inspection vlan 100,200 /* 定义对哪些 VLAN 进行 ARP 报文检测 ip arp inspection log-buffer entries 1024 ip arp inspection log-buffer logs 1024 interval 10 IOS 接口命令: ip dhcp snooping trust ip arp inspection trust /* 定义哪些接口是信任接口,通常是网络设备接口, TRUNK 接口等 ip arp inspection limit rate 15 (pps) /* 定义接口每秒 ARP 报文数量 对于没有使用 DHCP 设备可以采用下面办法: arp access-list static-arp permit ip host 10.66.227.5 mac host 0009.6b88.d387 ip arp inspection filter static-arp vlan 201 3.3配置DAI后的效果: • 在配置 DAI技术的接口上,用户端不能采用指定地址地址将接入网络。 • 由于 DAI检查 DHCP snooping绑定表中的IP和MAC对应关系,无法实施中间人攻击,攻击工具失效。下表为实施中间人攻击是交换机的警告: 3w0d: %SW_DAI-4-DHCP_SNOOPING_DENY: 1 Invalid ARPs (Req) on Fa5/16, vlan 1. ([000b.db1d.6ccd/192.168.1.200/0000.0000.0000/192.168.1.2 • 由于对 ARP请求报文做了速度限制,客户端无法进行认为或者病毒进行的IP扫描、探测等行为,如果发生这些行为,交换机马上报警或直接切断扫描机器。如下表所示: 3w0d: %SW_DAI-4-PACKET_RATE_EXCEEDED: 16 packets received in 184 milliseconds on Fa5/30. ******报警 3w0d: %PM-4-ERR_DISABLE: arp-inspection error detected on Fa5/30, putting Fa5/ 30 in err-disable state ******切断端口 I49-4500-1#.....sh int f.5/30 FastEthernet5/30 is down, line protocol is down (err-disabled) Hardware is Fast Ethernet Port , address is 0002.b90e .3f 4d (bia 0002.b90e .3f 4d) MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec, reliability 255/255, txload 1/255, rxload 1/255 I49-4500-1#...... • 用户获取 IP地址后,用户不能修改IP或MAC,如果用户同时修改IP和MAC必须是网络内部合法的IP和MAC才可,对于这种修改可以使用下面讲到的 IP Source Guard技术来防范。下表为手动指定IP的报警: 3w0d: %SW_DAI-4-DHCP_SNOOPING_DENY: 1 Invalid ARPs (Req) on Fa5/30, vlan 1.([000d.6078.2d95/192.168.1.100/0000.0000.0000/192.168.1.100/01:52:28 UTC Fri Dec 29 2000 ]) 4 IP/MAC欺骗的防范 4.1常见的欺骗攻击的种类和目的 常见的欺骗种类有 MAC欺骗、IP欺骗、IP/MAC欺骗,其目的一般为伪造身份或者获取针对IP/MAC的特权。当目前较多的是攻击行为:如Ping Of Death、syn flood、ICMP unreacheable Storm,另外病毒和木马的攻击也具有典型性,下面是木马攻击的一个例子。 4.2攻击实例 下图攻击为伪造源地址攻击,其目标地址为公网上的 DNS服务器,直接目的是希望通使DNS服务器对伪造源地址的响应和等待,造成DDOS攻击,并以此扩大攻击效果。该攻击每秒钟上万个报文,中档交换机2分钟就瘫痪,照成的间接后果非常大。 4.3IP/MAC欺骗的防范 IP Source Guard 技术配置在交换机上仅支持在 2 层端口上的配置,通过下面机制可以防范 IP/MAC 欺骗: • IP Source Guard 使用 DHCP sooping 绑定表信息。 • 配置在交换机端口上,并对该端口生效。 • 运作机制类似 DAI,但是 IP Source Guard不仅仅检查ARP报文,所有经过定义IP Source Guard检查的端口的报文都要检测。 • IP Source Guard检查 接口 所通过的流量的IP地址和MAC地址是否在DHCP sooping绑定表,如果不在绑定表中则阻塞这些流量。注意如果需要检查MAC需要DHCP服务器支持Option 82,同时使路由器支持Option 82信息。 通过在交换机上配置 IP Source Guard: • 可以过滤掉非法的 IP地址,包含用户故意修改的和病毒、攻击等造成的。 • 解决 IP地址冲突问题。 • 提供了动态的建立 IP+MAC+PORT的对应表和绑定关系,对于不使用DHCP的服务器和一些特殊情况机器可以采用利用全局命令静态手工添加对应关系到绑定表中。 • 配置 IP Source Guard的接口初始阻塞所有非DHCP流量。 • 不能防止“中间人攻击”。 对于 IP欺骗在路由器上也可以使用urpf技术。 4.4配置示例: 检测接口上的 IP+MAC IOS 全局配置命令: ip dhcp snooping vlan 12,200 ip dhcp snooping information option ip dhcp snooping 接口配置命令: ip verify source vlan dhcp-snooping port-security switchport mode access switchport port-security switchport port-security limit rate invalid-source-mac N /* 控制端口上所能学习源 MAC 的速率,仅当 IP+MAC 同时检测时有意义。 检测接口上的 IP IOS 全局配置命令 ip dhcp snooping vlan 12,200 no ip dhcp snooping information option ip dhcp snooping 接口配置命令: ip verify source vlan dhcp-snooping 不使用 DHCP 的静态配置 IOS 全局配置命令: ip dhcp snooping vlan 12,200 ip dhcp snooping information option ip dhcp snooping ip source binding 0009.6b88.d387 vlan 212 10.66.227.5 interface Gi4/5 5 IP地址管理和病毒防范的新思路 5.1IP地址管理 综上所述通过配置思科交换机的上述特征,不仅解决了一些典型攻击和病毒的防范问题,也为传统 IP地址管理提供了新的思路。 通过上面的几项技术解决了传统的利用DHCP服务器管理客户端IP地址的问题: • 故意不使用手工指定静态 IP地址和DHCP分配地址冲突 • 配置 DHCP server • 使用静态指定 IP遇到的问题 • 不使用分配的 IP地址和服务器或其他地址冲突 • 不容易定位 IP地址和具体交换机端口对应表 使用静态地址的重要服务器和计算机,可以进行静态绑定 IP+MAC、IP+MAC+PORT,手工配置DAI和 IP Source Guard绑定表项, 来保护这些设备,同时也防止来自这些设备的攻击。 目前对于网络病毒的不断爆发,越来越多的用户开始重视对 PC的管理,用户关注谁能访问网络、访问以后能做什么、做了哪些事情、这就是我们常说的AAA认证,除了这些用户希望能够很快定位到用户在哪台交换机、哪个端口、以哪个IP和MAC登陆,这样有有了”AAA+A”( Authenticate, Authorize,Account , Address )的概念。 通过上面的配置我们在网络层面已经可以定位用户了,加上 802.1X认证我们可以在网络层面根据用户的身份为用户授权,从而实现”AAA+A”。 更进一步要审计用户所使用电脑具备的条件,如系统补丁、所装杀毒软件及补丁、等条件可以考虑采用思科网络准入控制 NAC。 5.2使用DHCP Snooping 、DAI、IP Source Guard技术能解决的有关病毒问题 由于大多数对局域网危害较大的网络病毒都具有典型的欺骗和扫描,快速发包,大量 ARP 请求等特征,采用上述技术一定程度上可以自动切断病毒源,及时告警,准确定位病毒源。

CISCO DAI 防ARP攻击

配置局域网的安全特性,防止地址乱配,ARP攻击等弊病! 1、启用DHCP SNOOPING 全局命令: ip dhcp snooping vlan 10,20,30 no ip dhcp snooping information option ip dhcp snooping database flash:dhcpsnooping.text //将snooping表保存到单独文档中,防止掉电后消失。 ip dhcp snooping 接口命令: ip dhcp snooping trust //将连接DHCP服务器的端口设置为Trust,其余unTrust(默认) 2、启用DAI,防止ARP欺骗和中间人攻击!通过手工配置或者DHCP监听snooping,交换机将能够确定正确的端口。如果ARP应答和snooping不匹配,那么它将被丢弃,并且记录违规行为。违规端口将进入err-disabled状态,攻击者也就不能继续对网络进行进一步的破坏了! 全局命令 ip arp inspection vlan 30 接口命令(交换机之间链路配置DAI信任端口,用户端口则在默认的非信任端口): ip arp inspection trust ip arp inspection limit rate 100 3、启用IPSG 前提是启用IP DHCP SNOOPING,能够获得有效的源端口信息。IPSG是一种类似于uRPF(单播反向路径检测)的二层接口特性,uRPF可以检测第三层或路由接口。 接口命令: switchport mode acc switchport port-security ip verify source vlan dhcp-snooping port-security 4、关于几个静态IP的解决办法 可通过ip dhcp snooping binding 1.1.1 vlan 1 1.1.1.1 interface gi0/8 通过arp access-list添加静态主机: arp access-list static-arp permit ip host 192.168.1.1 mac host 0000.0000.0003 ip arp inspection filter static-arp vlan 30 DHCP 中绑定固定IP: ip dhcp pool test host 192.168.1.18 255.255.255.0 (分给用户的IP) client-identifier 0101.0bf5.395e.55(用户端mac) client-name test 开展及总结: 思科交换机在全局配置模式下开启IP DHCP SNOOPING后,所有端口默认处于DHCP SNOOPING UNTRUSTED模式下,但DHCP SNOOPING INFORMATION OPTION功能默认是开启的,此时DHCP报文在到达一个SNOOPING UNTRUSTED端口时将被丢弃。因此,必须在4506配置IP DHCP SNOOPING INFORMATION OPTION ALLOW-UNTRUSTED命令(默认关闭),以允许4506从DHCP SNOOPING UNTRUSTED端口接收带有OPTION 82的DHCP REQUEST报文。建议在交换机上关闭DHCP INFORMATION OPTION,即全局配置模式下NO IP DHCP SNOOPING INFORMATION OPTION。 7、对于允许手工配置IP地址等参数的客户端,可以手工添加绑定条目到DHCP SNOOPING BINDING数据库中。ip dhcp snooping binding 00d0.2bd0.d80a vlan 100 222.25.77.100 interface gig1/1 expiry 600表示手工添加一条MAC地址为00d0.2bd0.d80a,IP地址为222.25.77.100,接入端口为GIG1/1,租期时间为600秒的绑定条目。 8、IPSG即IP SOURCE GUARD是在DHCP SNOOPING功能的基础上,形成IP SOURCE BINDING表,只作用在二层端口上。启用IPSG的端口,会检查接收到所有IP包,只转发与此绑定表的条目相符合的IP包。默认IPSG只以源IP地址为条件过滤IP包,如果加上以源MAC地址为条件过滤的话,必须开启DHCP SNOOPING INFORMAITON OPTION 82功能。 9、DAI即DYNAMIC ARP INSPECTION也是以DHCP SNOOPING BINDING DATABASE为基础的,也区分为信任和非信任端口,DAI只检测非信任端口的ARP包,可以截取、记录和丢弃与SNOOPING BINDING中IP地址到MAC地址映射关系条目不符的ARP包。如果不使用DHCP SNOOPING,则需要手工配置ARP ACL。 MAC/CAM攻击的原理和危害 MAC/CAM 攻击是指利用工具产生欺骗 MAC ,快速填满 CAM 表,交换机 CAM 表被填满后,交换机以广播方式处理通过交换机的报文,这时攻击者可以利用各种嗅探攻击获取网络信息。 CAM 表满了后,流量以洪泛方式发送到所有接口,也就代表 TRUNK 接口上的流量也会发给所有接口和邻接交换机,会造成交换机负载过大,网络缓慢和丢包甚至瘫痪。 1.1使用 Port Security feature 防范MAC/CAM攻击 Cat4507(config)#int fastEthernet 3/48 Cat4507 (config-if)#switchport port-security Cat4507 (config-if)#switchport port-security maximum 2 Cat4507 (config-if)#switchport port-security violation protect Cat4507 (config)#errdisable recovery cause psecure-violation Cat4507 (config)#errdisable recovery interval 30 2.DHCP攻击 DHCP server 的冒充、DHCP server 的 Dos 攻击、 有些用户随便指定地址,造成网络地址冲突。攻击是首先将正常的 DHCP 服务器所能分配的 IP 地址耗尽,然后冒充合法的 DHCP 服务器。最为隐蔽和危险的方法是黑客利用冒充的 DHCP 服务器,为用户分配一个经过修改的 DNS server ,在用户毫无察觉的情况下被引导在预先配置好的假金融网站或电子商务网站,骗取用户帐户和密码,这种攻击是非常恶劣的。 2.1 DHCP防范 通过建立和维护DHCP Snooping绑定表过滤不可信任的DHCP信息,这些信息是指来自不信任区域的DHCP信息。DHCP Snooping绑定表包含不信任区域的用户MAC地址、IP地址、租用期、VLAN-ID 接口等信息。

cisco交换机端口ipmac绑定

基于端口的MAC地址绑定      思科2950交换机为例,登录进入交换机,输入管理口令进入配置模式,敲入命令:   Switch#c onfig terminal   进入配置模式   Switch(config)# Interface fastethernet 0/1   #进入具体端口配置模式   Switch(config-if)#Switchport port-secruity   #配置端口安全模式   Switch(config-if )switchport port-security mac-address MAC(主机的MAC地址)   #配置该端口要绑定的主机的MAC地址   Switch(config-if )no switchport port-security mac-address MAC(主机的MAC地址)   #删除绑定主机的MAC地址 二、基于MAC地址的扩展访问列表 Switch(config)Mac access-list extended MAC   #定义一个MAC地址访问控制列表并且命名该列表名为MAC   Switch(config)permit host 0009.6bc4.d4bf any   #定义MAC地址为0009.6bc4.d4bf的主机可以访问任意主机   Switch(config)permit any host 0009.6bc4.d4bf   #定义所有主机可以访问MAC地址为0009.6bc4.d4bf的主机   Switch(config-if )interface Fa0/20   #进入配置具体端口的模式   Switch(config-if )mac access-group MAC in   #在该端口上应用名为MAC的访问列表(即前面我们定义的访问策略)   Switch(config)no mac access-list extended MAC   #清除名为MAC的访问列表 三、IP地址的MAC地址绑定 只能将应用1或2与基于IP的访问控制列表组合来使用才能达到IP-MAC 绑定功能。   Switch(config)Mac access-list extended MAC   #定义一个MAC地址访问控制列表并且命名该列表名为MAC   Switch(config)permit host 0009.6bc4.d4bf any   #定义MAC地址为0009.6bc4.d4bf的主机可以访问任意主机   Switch(config)permit any host 0009.6bc4.d4bf   #定义所有主机可以访问MAC地址为0009.6bc4.d4bf的主机   Switch(config)Ip access-list extended IP   #定义一个IP地址访问控制列表并且命名该列表名为IP   Switch(config)Permit 192.168.0.1 0.0.0.0 any   #定义IP地址为192.168.0.1的主机可以访问任意主机   Permit any 192.168.0.1 0.0.0.0   #定义所有主机可以访问IP地址为192.168.0.1的主机   Switch(config-if )interface Fa0/20   #进入配置具体端口的模式   Switch(config-if )mac access-group MAC1in   #在该端口上应用名为MAC的访问列表(即前面我们定义的访问策略)   Switch(config-if )Ip access-group IP in   #在该端口上应用名为IP10的访问列表(即前面我们定义的访问策略)   Switch(config)no mac access-list extended MAC   #清除名为MAC的访问列表   Switch(config)no Ip access-group IP in   #清除名为IP的访问列表 在cisco交换机中为了防止ip被盗用或员工乱改ip,可以做以下措施,即ip与mac地址的绑定和ip与交换机端口的绑定。 一、通过IP查端口   先查Mac地址,再根据Mac地址查端口:   bangonglou3#show arp | include 208.41 或者show mac-address-table 来查看整个端口的ip-mac表    Internet 10.138.208.41 4 0006.1bde.3de9 ARPA Vlan10   bangonglou3#show mac-add | in 0006.1bde    10 0006.1bde.3de9 DYNAMIC Fa0/17   bangonglou3#exit 二、ip与mac地址的绑定,这种绑定可以简单有效的防止ip被盗用,别人将ip改成了你绑定了mac地址的ip后,其网络不同, (tcp/udp协议不同,但netbios网络共项可以访问),具体做法: cisco(config)#arp 10.138.208.81 0000.e268.9980 ARPA 这样就将10.138.208.81 与mac:0000.e268.9980 ARPA绑定在一起了 三、ip与交换机端口的绑定,此种方法绑定后的端口只有此ip能用,改为别的ip后立即断网。有效的防止了乱改ip。 cisco(config)# interface FastEthernet0/17 cisco(config-if)# ip access-group 6 in cisco(config)#access-list 6 permit 10.138.208.81 这样就将交换机的FastEthernet0/17端口与ip:10.138.208.81绑定了。

Cisco DHCP

一、典型示例 service dhcp ip dhcp pool cisco network 192.168.0.0 255.255.255.0 default-router 192.168.0.1 dns-server 218.108.248.228 218.108.248.245 lease 9   二、选项配置 1、ip dhcp excluded-address  [定义DHCP服务器中排除的IP地址] 示例: ip dhcp excluded-address192.168.0.1 192.168.1.16 ip dhcpexcluded-address 192.168.1.254 2、ip dhcp ping packet  [定义DHCP服务器ping一个地址的次数] 示例: ip dhcp pingpacket 3 说明:本命令用于设置ping操作发送的数据包个数,缺省为2个,最多可设置为10个包,如果设置为0,则关闭ping操作,这可能导致客户机IP地址冲突。 3、ip dhcp ping timeout  [定义地址冲突检测时,ping操作的等待应答超时时间] 示例: ip dhcp pingtimeout 600 说明:当DHCP服务器从地址池中取一个地址进行分配前,它会先用ping操作检测该地址是否已被某主机占用,如果在指定的时间内没有收到主机的应答,就认为该地址是空闲的,可以进行分配。缺省为500毫秒。 4、hardware-address  [定义DHCP地址绑定时的客户端硬件地址] 示例: hardware-address C80A.A978.50DFtype 说明:此命令只是在配置DHCP地址绑定时才使用,它用于把IP地址和客户端的硬件地址进行绑定,使客户端可获得一个固定的IP地址。 type:标识客户端的硬件平台协议。取值是ethernet 或ieee802,也可以用数字定义,1表示ethernet,6表示ieee802。如果省略此值,则默认为ethernet。 5、client-identifier  [设置DHCP地址绑定时的客户端标识] 示例: ip dhcp pool Paul host 192.168.0.101 255.255.255.0 client-identifier 0100.1617.9003.EA 说明:01 表示是以太网媒介类型,此命令只是在配置DHCP地址绑定时才使用,它用于把IP地址和客户端进行绑定,使客户端可获得一个固定的IP地址。 6、ip dhcp conflict logging  [设置在日志文件中记录地址冲突] 示例: no ip dhcpconflict logging 说明:此命令默认启用,将地址冲突信息记录到日志文件中。但是有时会造成地址池IP地址未用尽,而客户端却无法分配到IP地址。clear ipdhcp bind 或重启设备后正常,过后又如此!这时候可以将之关闭。

网络中数据传输过程解析

网络中数据传输过程解析 比如有一个网络: 1 1、PC-A、PC-B、PC-C、PC-D都有一个MAC地址,路由器是不是也有一个MAC地址? 2、假设我们使用两层交换机,交换机就可以不要MAC地址?使用三层交换机的话交换机就有一个MAC地址吗? 3、假设我现在有一个数据包从PC-A发送到PC-C,请讲解一下数据转发的具体过程? 4、在这个网络中,PC-A、PC-C的MAC地址设置为相同的网络也能正常通信吗? 5、网关的设置是怎么回事呢? 1.某些带有以太或快速以太接口的路由器在这两种接口里会带有MAC地址,也就是说在路由器局域网接口才会有MAC地址,而MAC的实质是一种数据封装的类型;路由器有些也有广域网接口,广域网接口就没有这样的局域网地址,但也有类似数据封装结构,比如ppp,hdlc等。 2.不管是二层还是三层交换机,在每个交换机的交换接口都有一个MAC地址,但此MAC地址不会在数据转发时起作用,我们通常所说的交换机通过MAC地址来完成数据交换是说交换机通过学习到下连的client的地址来完成数据转发服务。二层交换机是说此交换机只处理数据包中的第二层封装信息;而三层交换机是说此交换机集成了路由器与二层交换机的功能,可处理数据包中二层及三层信息。 3.数据包的发包路由过程是一个较为复杂的过程,要首先了解数据包的封装结构。pc-a要发包给pc-c,如果pc-a没有知道pc-c的ip地址,则pc-a首先要发出一个dns的请求,路由器a或dns解析服务器会给pc-a回应pc-c的ip地址。这样pc-a关于数据包第三层的ip地址信息就全了:源ip地址:pc-a,目的ip地址:pc-c。下一步,pc-a要具体了解有关如何到达pc-c,则还要了解到达pc-c要经过的下一跳信息,pc-a会发出一个arp的地址解析请求,路由器a会对pc-a的arp地址请求作出回应:要去往pc-c可以发包到自己这儿处理,然后回应路由器a的以太口MAC地址给pc-a,这样pc-a关于去往pc-c的数据包的第二层信息也全了:源mac地址:pc-a的mac地址,目的mac地址:路由器的以太口mac地址。这样二三层信息收集完全,可以发包出去了。数据到达了交换机a,交换机a查看数据包的第二层目的mac地址,是去往路由器a的,就把数据帧发到路由器a,路由器a收到此数据包,首先查看此数据包的第三层ip目的地址,如果在自己路由表中有去往pc-c的路由,说明这是一个可路由的数据包,然后路由器要进行一个所谓的线内重写 的过程:首先更换此数据包的第二层包头信息,因为路由器a去往pc-c要经过一个广域网,广域网封装协议有很多,比如hdlc、ppp、slip、frame-relay等,各种不同的封装协议都有其自身的结构,是全然与局域网的mac封装不同,但起到的作用类似:就是发往目的地的具体下一跳信息。同时做完第二层和第三层的数据包重校验,线内重写另一个主要工作是在第三层中的ttl值减一。这样把数据包从internet中发出去,到达对端有相反的处理过程。 4.pc-a 与pc-c的mac设为相同不会影响正常通信,因为这两个主机所处的lan被广域网分割开来,通过上面发包的过程可了解不会有任何问题。 5.所谓网关,是说这样一种设备:如果主机要发包,就往这个设备发送。也就是说此设备要有路由功能或有去往外部网路的路径。在实际网络里,网关一般由路由器或server充当。