安全研究

安全漏洞
Cisco IOS TCP选项处理远程拒绝服务漏洞

发布日期:2010-03-23
更新日期:2010-03-26

受影响系统:
Cisco IOS 12.4
Cisco IOS 12.3
Cisco IOS 12.2
描述:
BUGTRAQ  ID: 38930
CVE ID: CVE-2010-0577

Cisco IOS是思科网络设备所使用的互联网操作系统。

Cisco IOS Software受拒绝服务漏洞的影响,可能允许未经认证的远程攻击者导致受影响的设备重载或挂起。
  
仅有TCP会话创建阶段所接收到的TCP段才可以触发这个漏洞。所接收到的TCP段必须包含有特制的但非畸形的TCP选项。无需完成TCP三重握手就可以利用漏洞。
  
设备必须配置了以下特征之一才会受这个漏洞影响:

  * 特定的TCP窗口大小
  * TCP路径MTU发现(PMTUD)
  * SNAT TCP为传输协议

漏洞存在于Cisco IOS Software的TCP选项处理代码中。当触发这个漏洞时,Cisco IOS Software会陷入到死循环,导致设备重载或挂起。以下系统日志消息可以说明这个漏洞被利用:

    %SYS-3-CPUHOG: Task is running for (128004)msecs, more than (2000)msecs (23/1),process = IP Input.
    -Traceback= 0x41CA6AC4 0x41C83170 0x41A22704 0x41F249D4 0x41A24A34 0x41B24C58
    %SYS-2-WATCHDOG: Process aborted on watchdog timeout, process = IP Input.

<*来源:Cisco
  
  链接:http://secunia.com/advisories/39078/
        http://www.cisco.com/warp/public/707/cisco-sa-20100324-tcp.shtml
*>

建议:
临时解决方法:

* 使用特定TCP窗口大小的配置
   +----------------------------------------------

   可从配置中删除ip tcp window-size命令实现不设置特定的TCP接收窗口大小。

* 使用路径MTU发现的配置
   +--------------------------------------

   在一些使用PMTUD的Cisco IOS Software功能中可以使用PMTUD。用于禁用PMTUD的特定命令取决于特定的功能:

  * TCP over IPv4:从配置中删除ip tcp path-mtu-discovery命令可以对来自设备的TCP over IPv4会话禁用PMTUD。

  * TCP over IPv6:PMTUD对IPV6默认为启用,且无法禁用。
    
  * BGP:如果对BGP会话启用了PMTUD的最近Cisco IOS Software版本上配置了BGP,则可在路由器配置模式通过no bgp transport path-mtu-discovery命令禁用所有的BGP会话。
  
* 使用传输协议为TCP的状态NAT的配置
   +-------------------------------------------------------------------

   可从配置中删除ip nat Stateful id命令来禁用SNAT。

* 对于需要提供TCP服务的设备,可使用控制面整形(CoPP)阻断不可信任来源到设备的SIP通讯。可在网络中应用以下示例:
    
    !-- The 192.168.1.0/24 network and the 172.16.1.1 host are trusted.
    !-- Everything else is not trusted. The following access list is used
    !-- to determine what traffic needs to be dropped by a control plane
    !-- policy (the CoPP feature.) If the access list matches (permit)
    !-- then traffic will be dropped and if the access list does not
    !-- match (deny) then traffic will be processed by the router.
    !-- Note that TCP ports 22 and 23 are just examples; this configuration
    !-- needs to be expanded to include all used TCP ports.
    
    access-list 100 deny tcp 192.168.1.0 0.0.0.255 any eq 22
    access-list 100 deny tcp 192.168.1.0 0.0.0.255 any eq 23
    access-list 100 deny tcp host 172.16.1.1 any eq 22
    access-list 100 deny tcp host 172.16.1.1 any eq 23
    access-list 100 permit tcp any any
    
    !-- Permit (Police or Drop)/Deny (Allow) all other Layer3 and Layer4
    !-- traffic in accordance with existing security policies and
    !-- configurations for traffic that is authorized to be sent
    !-- to infrastructure devices.
    !-- Create a Class-Map for traffic to be policed by
    !-- the CoPP feature.
    
    class-map match-all drop-tcp-class
      match access-group 100
    
    !-- Create a Policy-Map that will be applied to the
    !-- Control-Plane of the device, and add the "drop-tcp-traffic"
    !-- class map.
    
    policy-map control-plane-policy
     class drop-tcp-class
      drop
    
    !-- Apply the Policy-Map to the Control-Plane of the
    !-- device.
    
    control-plane
     service-policy input control-plane-policy

厂商补丁:

Cisco
-----
Cisco已经为此发布了一个安全公告(cisco-sa-20100324-tcp)以及相应补丁:
cisco-sa-20100324-tcp:Cisco IOS Software Crafted TCP Packet Denial of Service Vulnerability
链接:http://www.cisco.com/warp/public/707/cisco-sa-20100324-tcp.shtml

浏览次数:3590
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障