关于部分厂商设备存在SNMP协议社区字符串认证权限绕过漏洞(StringBleed)的安全公告

2017-04-28 15:34:01

安全公告编号:CNTA-2017-0033

近日,国家信息安全漏洞共享平台(CNVD)收录了部分厂商设备存在的SNMP协议社区字符串认证权限绕过漏洞(CNVD-2017-05535,对应CVE-2017-5135,发现者命名为“StringBleed”)。攻击者可利用任意字符串或整数值来绕过SNMP的访问控制,在MIB(管理信息库)中写入任意字符串,从而获得设备的敏感信息。

一、漏洞情况分析

简单网络管理协议(SNMP)由一组网络管理的标准实现组成,包含一个应用层协议(application layer protocol)、数据库模型(database schema)和一组资源对象。MIB(Management Information Base)是设备的管理对象信息库(或称数据库),它包括SNMP可以通过网络设备的SNMP管理代理进行设置的变量。SNMP 协议V1和V2版本在设备中实现时是通常使用Community String "社区字符串"来进行客户端的身份验证,而在V3版本中则可以由客户配置选择用户名、密码以及其他身份验证的方式,而对象标识符(OIDs)等内容信息则会保存在管理信息库(MIB)之中。

SNMP v1和v2版本所使用的身份验证机制只能接受保存在SNMP代理验证机制中的数据值, 而V1和V2版本在多个厂商设备实现时存在一个远程代码执行漏洞,利用特定构造的字符串或整数值可绕过SNMP的访问控制,然后在MIB(管理信息库)中写入任意字符串。这样攻击者就可以在不用去尝试community string的情况下从目标设备中获取到类似用户密码这样的敏感信息。

CNVD对该漏洞的综合评级为“高危”。

二、漏洞影响范围

漏洞存在于应用SNMPv1版本和v2版本的多个厂商网络设备中,国外漏洞发现者的测试实例是CISCO DPC3928SL。根据CNVD秘书处抽样测试结果,已经在多个互联网实例中抽样验证存在风险。根据不完全统计,有超过100种网络设备受到StringBleed漏洞影响,影响的产品类型包括路由器(无线、有线)、VoIP网关、其他拨号网关等,相关设备型号列举如下:

5352\BCW700J\BCW710J\BCW710J2\C3000-100NAS\CBV734EW\CBV38Z4EC\CBV38Z4ECNIT\CBW383G4J\CBW38G4J\CBW700N\CG2001-AN22A\CG2001-UDBNA\CG2001-UN2NA\CG2002\CG2200\CGD24G-100NAS\CGD24G-1CHNAS\CM5100\CM5100-511\CM-6300n\DCX-3200\DDW2600\DDW2602\DG950A\DPC2100\DPC2320\DPC2420\DPC3928SL\DVW2108\DVW2110\DVW2117\DWG849\DWG850-4\DWG855\EPC2203\EPC3212\IB-8120-W21\IB-8120-W21E1\MNG2120J\MNG6200\MNG6300\SB5100\SB5101\SB5102\SBG6580\SBG900\SBG901\SBG941\SVG1202\SVG2501\T60C926\TC7110.AR\TC7110.B\TC7110.D\TC7200.d1I\TC7200.TH2v2\THG540\THG541\Tj715x\TM501A\TM502B\TM601A\TM601B\TM602A\TM602B\TM602G\TWG850-4U\TWG870\TWG870U\U10C019\U10C037\VM1700D\WTM552G\WTM652G\DCM-704\DCM-604\DG950S

三、防护建议

目前,包括思科在内的多个设备厂商产品都受到漏洞影响,建议设备用户检查配置情况,启用SNMPv3进行身份验证。

附:参考链接:

http://www.cnvd.org.cn/flaw/show/CNVD-2017-05535

https://stringbleed.github.io/