美国当地时间2018年03月29日,美国国家漏洞数据库(NVD)通报了Cisco Smart Install存在远程命令执行漏洞的情况,国家信息安全漏洞共享平台(CNVD)同步收录了该漏洞(CNVD-2018-06774,对应CVE-2018-0171)。CNCERT下属的工业互联网安全应急响应中心(http://www.ics-cert.org.cn)针对漏洞情况进行了分析,并对国内相关联网资产进行了在线监测,具体情况通报如下:


一、漏洞情况分析

Cisco Smart Install作为一项即插即用配置和镜像管理功能,为新加入网络的交换机提供零配置部署,实现了自动化初始配置和操作系统镜像加载的过程,同时还提供配置文件的备份功能。

安全研究人员发现,Cisco Smart Install存在远程命令执行漏洞,SMI IBC Server Process进程中包含了Smart Install Client的实现代码。Smart InstallClient在TCP(4786)端口上开启服务(默认开启),用来与 Smart Install Director 交互。当服务处理一段特殊构造的恶意信息ibd_init_discovery_msg时,因为未能检查拷贝到固定大小缓冲区的数据尺寸(大小和数据是直接从网络数据包中获得的,并由***者控制),smi_ibc_handle_ibd_init_discovery_msg函数在处理该数据包时会触发缓冲区栈溢出造成设备拒绝服务(DoS)或远程执行Cisco系统命令。


二、漏洞影响范围

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

根据生产厂商以及漏洞研究者的测试结果,该漏洞影响的产品:Catalyst 4500Supervisor Engines、Catalyst 3850Series、Catalyst 3750Series、Catalyst 3650Series、Catalyst 3560Series、Catalyst 2960Series、Catalyst 2975Series、IE 2000、IE 3000、IE 3010、IE 4000、IE 5000、SM-ES2 SKUs、SM-ES3 SKUs、NME-16ES-1G-P、SM-X-ES3 SKUs等。

截止当前,我中心通过监测手段发现国内大量暴露在互联网上的相关网络资产,详细信息见附录一和附录二。


三、漏洞处置建议

1、漏洞自查方法:

方法一:确认目标设备是否开启4786/TCP端口,如果开启则表示可能受到影响。

比如用nmap扫描目标设备端口:

nmap -p T:4786设备IP地址

方法二:使用Cisco提供的脚本探测是否开放CiscoSmart Install协议,若开启则可能受到影响。

# pythonsmi_check.py -i 设备IP地址

方法三:(需登录设备)可以通过以下命令确认是否开启 Smart Install Client功能:

switch>showvstack config

Role:Client (SmartInstall enabled)

Vstack Director IP address: 0.0.0.0

switch>showtcp brief all

TCB Local Address Foreign Address (state)

0344B794 *.4786 *.* LISTEN

方法四:(需登录设备)

switch>show version

将回显内容保存在a.txt中,并上传至Cisco的CiscoIOS Software Checker进行检测。

检测地址:https://tools.cisco.com/security/center/softwarechecker.x


2、漏洞修复方法:

方法一:更新软件。

思科官方已发布针对此漏洞的升级补丁,相关用户及时更新。

方法二:关闭协议,命令如下

switch#conf t

switch(config)#novstack

switch(config)#dowr

switch(config)#exit

可按照上述自查方法检验协议是否关闭。

详情请关注厂商网站的相关信息:https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20180328-smi2。


3、其他安全防护措施

此外,建议相关用户应采取的其他安全防护措施如下:

(1)最大限度地减少所有控制系统设备和/或系统的网络暴露,并确保无法从Internet访问。

(2)定位防火墙防护的控制系统网络和远程设备,并将其与业务网络隔离。

(3)当需要远程访问时,请使用安全方法如虚拟专用网络(***),要认识到***可能存在的漏洞,需将***更新到最新版本。


工业互联网安全应急响应中心将持续跟踪漏洞处置情况,如需技术支持,请及时与我们联系。

联系电话:010-82992157

邮箱:ics-cert@cert.org.cn

网站:www.ics-cert.org.cn。

微信公众号:工业互联网安全应急响应中心

相关安全公告链接参考如下:

https://nvd.nist.gov/vuln/detail/CVE-2018-0171。


附录一 国内暴露在互联网的相关网络资产信息


省份

数量

省份

数量

台湾

5212

河南

150

北京

2567

湖南

110

上海

2300

陕西

81

香港

1971

山西

63

广东

1014

黑龙江

54

江苏

667

海南

49

浙江

505

江西

47

天津

286

吉林

45

重庆

285

宁夏

42

甘肃

243

内蒙古

25

福建

231

广西

24

山东

228

安徽

22

云南

168

新疆

21

四川

165

贵州

8

河北

165

青海

4

辽宁

163

西藏

3

湖北

153

新疆

2

 

附录二 国内暴露在互联网的相关网络资产分布图




©著作权归作者所有:来自51CTO博客作者mob604756ef5a44的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. Shiro源码分析----授权流程
  2. 快速提高技术的方法 & 长期欢迎投稿
  3. C/C++ 性能优化背后的方法论:TMAM
  4. 深入理解Java Stream流水线
  5. 配置 eslint 去掉 no-unused-vars 报错 方法汇总
  6. 运维助力敏捷交付-我们的运维看板
  7. 重要|Spark driver端得到executor返回值的方法
  8. 一对多、多对多查询,最简单的方法请拿好
  9. 报表生成器FastReport .Net如何存储和加载报告

随机推荐

  1. c语言本身没有输入输出语句吗
  2. c语言中continue语句的作用是什么
  3. C语言中字符串的结束标志是什么
  4. vc++和c++之间有什么区别?
  5. C语言标识符有哪三类
  6. strcat函数的作用是什么
  7. c语言是高级语言吗?
  8. strcpy函数的作用是什么
  9. c++引用和指针的区别是什么?
  10. scanf在c语言中的作用是什么?