1. MAC/CAM攻击的防范
1.1MAC/CAM攻击的原理和危害
1.2典型的病毒利用MAC/CAM攻击案例
1.3使用 Port Security feature 防范MAC/CAM攻击
1.4配置
1.5使用 其它技术 防范MAC/CAM攻击
2. DHCP攻击的防范
2.1采用DHCP管理的常见问题:
2.2DHCP Snooping技术概况
2.3基本防范
2.4高级防范
3. ARP欺骗/ MITM(Man-In-The-Middle)攻击原理和防范
3.1 MITM(Man-In-The-Middle)攻击原理
3.2攻击实例
3.3防范方法
3.4配置示例
3.5配置DAI后的效果:
4. IP/MAC欺骗的防范
4.1常见的欺骗攻击的种类和目的
4.2攻击实例
4.3IP/MAC欺骗的防范
4.4配置示例:
5. IP地址管理和病毒防范的新思路
5.1IP地址管理
5.2使用DHCP Snooping 、DAI、IP Source Guard技术能解决的有关病毒问题
本文所提到的攻击和欺骗行为主要针对链路层和网络层。在网络实际环境中,其来源可概括为两个途径:人为实施;病毒或蠕虫。人为实施通常是指使用一些黑客的工具对网络进行扫描和嗅探,获取管理帐户和相关密码,在网络上中安插木马,从而进行进一步窃取机密文件。攻击和欺骗过程往往比较隐蔽和安静,但对于信息安全要求高的企业危害是极大的。而来自木马或者病毒及蠕虫的攻击和往往会偏离攻击和欺骗本身的目的,现象有时非常直接,会带来网络流量加大、设备 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
1.1MAC/CAM攻击的原理和危害
1.2典型的病毒利用MAC/CAM攻击案例
1.3使用 Port Security feature 防范MAC/CAM攻击
1.4配置
1.5使用 其它技术 防范MAC/CAM攻击
2. DHCP攻击的防范
2.1采用DHCP管理的常见问题:
2.2DHCP Snooping技术概况
2.3基本防范
2.4高级防范
3. ARP欺骗/ MITM(Man-In-The-Middle)攻击原理和防范
3.1 MITM(Man-In-The-Middle)攻击原理
3.2攻击实例
3.3防范方法
3.4配置示例
3.5配置DAI后的效果:
4. IP/MAC欺骗的防范
4.1常见的欺骗攻击的种类和目的
4.2攻击实例
4.3IP/MAC欺骗的防范
4.4配置示例:
5. IP地址管理和病毒防范的新思路
5.1IP地址管理
5.2使用DHCP Snooping 、DAI、IP Source Guard技术能解决的有关病毒问题
本文所提到的攻击和欺骗行为主要针对链路层和网络层。在网络实际环境中,其来源可概括为两个途径:人为实施;病毒或蠕虫。人为实施通常是指使用一些黑客的工具对网络进行扫描和嗅探,获取管理帐户和相关密码,在网络上中安插木马,从而进行进一步窃取机密文件。攻击和欺骗过程往往比较隐蔽和安静,但对于信息安全要求高的企业危害是极大的。而来自木马或者病毒及蠕虫的攻击和往往会偏离攻击和欺骗本身的目的,现象有时非常直接,会带来网络流量加大、设备 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