一种网络摄像头漏洞远程检测方法及装置与流程

文档序号:13984436阅读:1408来源:国知局

本发明涉及网络安全领域,具体涉及一种网络摄像头漏洞远程检测方法及装置。



背景技术:

随着物联网技术的发展,网络摄像头已经被人们越来越多地使用,而由网络摄像头安全引发的问题也越来越多,很多网络摄像头存在安全漏洞。

现有的漏洞检测方案主要针对于web应用,对目标网络摄像头进行简单的版本识别扫描从而判断漏洞的存在性,或者是通过poc(proofofconcept,漏洞存在的证据)盲打的方式来进行漏洞验证。但摄像头的品牌繁多,并且同品牌摄像头又有多种不同版本,判断版本并不能确定漏洞的存在性。前者采用的是单一发包的方式,漏洞的误报率非常高;而poc盲打的方式采用所有poc对目标进行逐一测试,这种方式并不能识别摄像头相关信息,测试时间长、效率低。由此可见,上述方案并不适用于摄像头漏洞。



技术实现要素:

本发明的目的在于提供一种网络摄像头漏洞远程检测方法,通过标识精确识别出网络摄像头的品牌以及版本型号,再针对确定版本的网络摄像头进行漏洞验证,漏洞检测的效率和准确率高。本发明的目的还在于提供一种网络摄像头漏洞远程检测装置,利用上述检测方法实现对网络摄像头漏洞的远程检测。

为达到上述目的,本发明采用如下技术方案:

一种网络摄像头漏洞远程检测方法,步骤包括:

通过扫描探针对目标网络摄像头进行端口扫描,获取目标标识信息;

将所述目标标识信息与标识库的信息进行比对,从所述标识库中找出对应的或最接近的标识信息;

根据所述对应的或最接近的标识信息筛选出匹配度高的poc库;

如果所述poc库中包含所述目标标识信息,则向所述网络摄像头发送两次payload(为漏洞验证定制的数据)进行poc漏洞验证,通过返回的响应信息来判断所述网络摄像头是否存在漏洞。

进一步地,所述端口扫描是指对所述网络摄像头目标端口发出请求以建立连接,记录所述目标端口的应答情况,并根据该应答情况查看所述网络摄像头安装的服务项。

进一步地,所述进行端口扫描时,通过端口存活列表中含有的同一网络摄像头的所有开放端口信息来判别所述目标端口是否开放,如是,则获取所述目标标识信息。

进一步地,所述目标标识信息包括设备厂商信息、设备型号、唯一字段等。

进一步地,根据所述目标标识信息,利用dork相关来查找关键词或目标,筛选出匹配度高的poc库。

一种网络摄像头漏洞远程检测装置,包括存储器和处理器,所述存储器存储计算机程序,所述程序被配置为由所述处理器执行,所述程序包括用于执行上述方法中各步骤的指令。

本发明采用的方法的核心思想为:一是通过目标标识识别来缩小检测范围,二是通过poc的检测来提高漏洞检测率。据此,本方法首先识别标识信息,可以得到相对精确的摄像头目标信息,从而提供更全面的信息来选择是否进行漏洞验证以及漏洞验证中使用的poc库,使得需要扫描的poc数量减少,在同等资源条件下减少了扫描时间,提高了漏洞检测效率;其次采取了二次验证的方式,两次验证将会为我们提供更多的信息来判断漏洞的存在性,减小误报漏报的几率。

附图说明

图1为本发明一种网络摄像头漏洞远程检测方法流程图。

具体实施方式

为使本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图作详细说明如下。

本实施例提供一种网络摄像头漏洞远程检测方法,所采取得步骤包括:

1)识别目标标识信息。

通过扫描探针对目标网络摄像头进行预扫,通过返回的目标标识信息与标识库中现有的标识信息进行比对,找出与之对应或最近接的标识信息。其中,目标标识信息包括设备厂商信息、设备型号、唯一字段等。例如获取的设备登录信息中含有hikvision,表明这个设备厂商为海康威视。又如登录信息中含有td-3t45i3-78k1-1poe字段,这个字段为海康威视产品型号。又如某一特殊连接http://ip/config/user.xml只有某一设备独有,则可作为唯一字段。

在得到标识信息后做进一步分析,筛选出匹配度高的poc库。标识信息和poc之间通过dork相关联,dork为一种查询关键词或目标的特性,例如标识信息识别目标为海康威视摄像头后,其dork可为“hikvision”(设备厂商)、“td-3t45i3-78k1-1poe”(设备型号)、“port:82”(设备登录端口号)、“welcomehikvision”(登录界面特征)等。根据标识信息筛选poc的目的有两个:第一是减小验证poc的数量,从而缩短时间提高效率;第二是针对性验证,避免其他无关poc干扰,导致验证过程出现误报的情况,例如若已知摄像头品牌为海康威视,则无需用dahua摄像头相关的漏洞poc再来验证,避免出现不可知的错误。

如果对所有熟知端口或自己选定的某个范围内的熟知端口分别建立连接,并记录下端口所给予的应答,通过查看记录就可以知道网络摄像头上都安装了哪些服务,这个过程就叫做端口扫描。扫描时,当与网络摄像头的某个端口提出建立连接的请求时,如果对方有此项服务就会应答并建立连接;如果对方未安装此项服务,即使向相应的端口发出请求,对方也无应答。

标识识别基于这种端口扫描技术,在拿到一个扫描目标时,通过端口存活列表中含有的同一网络摄像头的所有开放端口信息来判别目标端口是否开放,当目标端口被判定为开放时,根据目标端口开放情况来进行标识识别。

2)利用poc进行验证。

根据目标标识信息,通过poc库的比对判断,来判定此网络摄像头是否包含在poc库中。

如果poc库支持该目标网络摄像头的漏洞,继续对其进行poc漏洞验证。在poc验证过程中将以往的一次验证拆分成两步。以下用python验证方法举例。

在第一次验证中判断了该目标是否能执行发送的payload,如果执行成功即证明该漏洞存在,在这种情况下会返回检测成功的信息。但这只是第一步检测,存在较高的误报几率,所以要进行第二步检测。第二步检测以获取到更进一步信息的payload,发送给目标来获取目标的响应。第二次检测中目标会回复更多的信息来为漏洞验证提供判断。所以在此检测过程中,通过这两次的验证来判定漏洞的存在性。

本实施例还提供一种网络摄像头漏洞远程检测装置,利用上述方法实现对网络摄像头的漏洞远程检测功能。

采用本发明方法和现有技术对网络摄像头进行的漏洞检测实验:

以下进行三组漏洞检测实验,为使实验数据尽量避免偶然因素,真实客观,进行大批量网络摄像头检测,数量分别为50、500及5000个,实验数据如下所示:

表1为对50个网络摄像头的检测数据

表2为对500个网络摄像头的检测数据

表3为对5000个网络摄像头的检测数据

通过以上三组实验数据可知,现有技术检测的含有漏洞摄像头的数量均偏高,均存在一定的误报率,例如表3中的误报率为4.92%,由此可见,现有技术的检测存在误报,检测结果不够准确。而采用本发明的方法进行网络摄像头的漏洞检测,误报率均为零,检测结果准确;另外,本发明的方法检测所用的时间比现有技术均显著减少,如表3中的检测时间减少了58.20%。综上说明,本方法能够显著提高漏洞的检测准确率和检测效率。

以上实施例仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的精神和范围,本发明的保护范围应以权利要求书所述为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1