SNMP(Simple Network Management Protocol)即简单网络管理协议,它为网络管理
系统提供了底层网络管理的框架,使得网络和系统管理员能够远程监测和配置管理他们的
网络设备(如路由器和交换机)。一个支持SNMP协议的网络设备或者是主机就是一个SNMP
实体。一个SNMP实体包含两部分:SNMP管理端负责发起请求和接受主动公告信息,SNMP代
理端服务负责响应管理端发起的请求和发送主动公告信息。一个具有SNMP代理功能的SNMP
实体包含了SNMP管理端和SNMP代理端两项功能。

    snmp协议是基于UDP协议通讯的。在snmp代理服务中,snmp管理端使用udp 162端口,
snmp代理端使用udp 161端口进行服务通讯,一个随机的高端端口会被协商出用来接收SNMP
的通告(inform)信息,并且udp 162端口和这个协商出来的随机端口会被系统初始化。
    
    这个随机端口是按以下条件产生的:
    1、在49152和59152之间随机生成一个端口号。
    2、cisco ios系统检测这个随机生成的udp端口是否被使用,如果没有,就使用该端
       口作为接受公告信息的端口。
    3、如果这端口已经被使用,系统会在这个随机数上加一,并再次重复2的步骤,直到找
       到一个没有被使用的端口。
      原则上说,这个端口数可以被一直加到59152。

    cisco的ios系统在处理snmp信息时存在一个漏洞,系统会不停处理协商请求,并初始
化随机的端口,直到内存被耗尽导致系统重新启动。
 影响系统:
CISCO IOS
12.0(23)S4, 12.0(23)S5
12.0(24)S4, 12.0(24)S5
12.0(26)S1
12.0(27)S
12.0(27)SV, 12.0(27)SV1
12.1(20)E, 12.1(20)E1, 12.1(20)E2
12.1(20)EA1
12.1(20)EW, 12.1(20)EW1
12.1(20)EC, 12.1(20)EC1
12.2(12g), 12.2(12h) 
12.2(20)S, 12.2(20)S1
12.2(21), 12.2(21a)
12.2(23) 
12.3(2)XC1, 12.3(2)XC2
12.3(5), 12.3(5a), 12.3(5b) 
12.3(6) 
12.3(4)T, 12.3(4)T1, 12.3(4)T2, 12.3(4)T3 
12.3(5a)B
12.3(4)XD, 12.3(4)XD1 
 
 风险:
 危害描述:
远程拒绝服务***
 解决方案:
临时解决办法:
   1、如果实际运行中不需要SNMP服务,则禁用SNMP服务
   2、使用防火墙或者在路由器限制只允许本管理域内主机访问如下端口:
     UDP/161
     UDP/162

补丁下载:
   Cisco已经针对该漏洞发布了相关的安全公告和补丁程序,请尽快到Cisco网站升级您的IOS系统
   http://www.cisco.com/warp/public/707/cisco-sa-20040420-snmp.shtml