当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2015-0155673

漏洞标题:某知名安防厂家又一缓冲区溢出漏洞

相关厂商:海康威视

漏洞作者: BeShadow

提交时间:2015-11-25 10:26

修复时间:2015-12-17 14:48

公开时间:2015-12-17 14:48

漏洞类型:设计不当

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-11-25: 细节已通知厂商并且等待厂商处理中
2015-11-29: 厂商已经确认,细节仅向厂商公开
2015-12-02: 细节向第三方安全合作伙伴开放(绿盟科技唐朝安全巡航
2016-01-23: 细节向核心白帽子及相关领域专家公开
2016-02-02: 细节向普通白帽子公开
2016-02-12: 细节向实习白帽子公开
2015-12-17: 细节向公众公开

简要描述:

某安防厂家大量摄像机存在协议上的漏洞,导致缓冲区溢出问题

详细说明:

上周提交问题,因描述太简单,被咔嚓,这次完整的复现整个问题。
0x01 涉及问题的厂家设备
摄像机是从淘宝淘的海康IPC,型号:DS-2CD2820FWD,主控版本:V5.2.3
从海康官网下载这款摄像机最新的升级包V5.3.0:
http://**.**.**.**/cn/download_more_714.html

影响的型号和版本信息声明如下:

1 官网下载摄像机匹配版本.jpg



问题涉及到的型号还是不少的,目前其他设备也躺枪。

升级完设备版本:

2 升级后版本.jpg



0x02 利用漏洞
ONVIF协议是安防行业最通用的摄像机接入平台的协议,服务端与客户端的数据交互采用SOAP协议,默认80端口。
从实现角度看,可以简单的看为,通过HTTP协议传输XML消息。

所以重放问题的方法就是:向设备的80端口,构造一段伪造的ONVIF请求的XML请求消息,对XML消息中个别字段进行放大。
细节参考Poc的Python文件构造的消息,重点破坏的字段有:
payload += 'utf-8' *1000
payload += '<wsse:Username>' * 1000
payload += ' </s:Envelope>' *1000
当这3个字段通过人为构造超长后,摄像机还是按照固定的长度去解析,就必然出现缓存区溢出漏洞,设备直接重启。

PS:之前已爆出的RTSP溢出问题,但貌似海康还是没有投入资源去做好安全这块的防护。
详细问题请度娘“海康棱镜门”

漏洞证明:

0x04 漏洞证明
见照片。

3 漏洞证明.jpg


还要证明的话,只能用ZoomEye搜海康在互联网的摄像机,但这样太不厚道了。
或者,请厂家自测下。

修复方案:

严格校验外部来源的消息,最少,超长的得过滤掉。

版权声明:转载请注明来源 BeShadow@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:15

确认时间:2015-11-29 18:31

厂商回复:

感谢提交,属于拒绝服务,未造成溢出点。

最新状态:

暂无


漏洞评价:

评价