本申请涉及信息安全技术领域,特别涉及一种基于工业互联网的漏洞扫描平台、方法、设备及介质。
背景技术:
在当前网络安全技术下,对于工业控制系统安全来说,传统的漏洞扫描主要分成两种模式:一种是采用主动方法扫描的基于网络的漏洞扫描技术,一种是采用被动方法扫描的基于主机的漏洞扫描技术,存在漏洞扫描器频繁扫描给系统带来巨大的资源占用,造成业务系统的工作负担,极大的影响生产系统性能,不利于生产安全的问题。
技术实现要素:
有鉴于此,本申请的目的在于提供一种基于工业互联网的漏洞扫描平台、方法、设备及介质,能够降低扫描带来的系统业务负担,提高工业控制系统的稳定性。其具体方案如下:
第一方面,本申请公开了一种基于工业互联网的漏洞扫描平台,包括:
系统配置模块,用于配置扫描任务,并下发所述扫描任务;
扫描管理模块,用于执行所述扫描任务,发现所述扫描任务对应的目标工控网络,对所述目标工控网络中的设备发送预设tcp协议数据包,以对所述目标工控网络中的设备进行漏洞扫描,得到扫描结果,其中,所述预设tcp协议数据包包括包头部分和预设数据部分,所述包头部分包括目的端口,并且,所述目的端口为预设工控协议端口,所述预设数据部分满足预设工控协议,并且,所述预设数据部分中包括漏洞扫描行为数据;
日志生成模块,基于所述扫描结果生成对应的扫描日志,并对所述扫描日志进行显示。
可选的,所述扫描管理模块,具体用于:
对所述目标工控网络中的设备发送预设tcp协议数据包,获取目标信息,利用所述目标信息与预设漏洞库进行比对,确定所述目标工控网络中的漏洞信息,以得到所述扫描结果。
可选的,所述扫描管理模块,具体用于:
发现所述扫描任务对应的目标工控网络,生成所述目标工控网络的网络拓扑结构。
可选的,所述日志生成模块,具体用于:
基于所述扫描结果生成对应的扫描日志,所述扫描日志中包括所述网络拓扑结构。
可选的,所述扫描管理模块,具体用于:
基于扫描引擎执行所述扫描任务,发现所述扫描任务对应的目标工控网络,对所述目标工控网络中的设备发送预设tcp协议数据包,以对所述目标工控网络中的设备进行漏洞扫描,得到扫描结果。
可选的,还包括:
操作系统管理模块,用于维护所述漏洞扫描平台的操作系统。
第二方面,本申请公开了一种基于工业互联网的漏洞扫描方法,包括:
通过系统配置模块配置扫描任务,并下发所述扫描任务;
通过扫描管理模块执行所述扫描任务,发现所述扫描任务对应的目标工控网络,对所述目标工控网络中的设备发送预设tcp协议数据包,以对所述目标工控网络中的设备进行漏洞扫描,得到扫描结果,其中,所述预设tcp协议数据包包括包头部分和预设数据部分,所述包头部分包括目的端口,并且,所述目的端口为预设工控协议端口,所述预设数据部分满足预设工控协议,并且,所述预设数据部分中包括漏洞扫描行为数据;
通过日志生成模块基于所述扫描结果生成对应的扫描日志,并对所述扫描日志进行显示。
可选的,所述对所述目标工控网络中的设备发送预设tcp协议数据包,以对所述目标工控网络中的设备进行漏洞扫描,得到扫描结果,包括:
对所述目标工控网络中的设备发送预设tcp协议数据包,获取目标信息,利用所述目标信息与预设漏洞库进行比对,确定所述目标工控网络中的漏洞信息,以得到所述扫描结果。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述的漏洞扫描方法。
第四方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,所述计算机程序被处理器执行时实现前述的漏洞扫描方法。
可见,本申请公开的基于工业互联网的漏洞扫描平台,包括:系统配置模块,用于配置扫描任务,并下发所述扫描任务;扫描管理模块,用于执行所述扫描任务,发现所述扫描任务对应的目标工控网络,对所述目标工控网络中的设备发送预设tcp协议数据包,以对所述目标工控网络中的设备进行漏洞扫描,得到扫描结果,其中,所述预设tcp协议数据包包括包头部分和预设数据部分,所述包头部分包括目的端口,并且,所述目的端口为预设工控协议端口,所述预设数据部分满足预设工控协议,并且,所述预设数据部分中包括漏洞扫描行为数据;日志生成模块,基于所述扫描结果生成对应的扫描日志,并对所述扫描日志进行显示。也即,本申请通过对目标工控网络中的设备发送预设tcp协议数据包,来实现所述目标工控网络中的设备进行漏洞扫描,并且,预设tcp协议数据包中的包头部分中的目的端口为预设工控协议端口,预设数据部分满足预设工控协议并包括漏洞扫描行为数据,这样,能够对支持工控协议的目的端口进行连接,使得扫描行为融入到正常业务中,既完成了漏洞扫描功能,又不会触发系统的漏洞,能够降低扫描带来的系统业务负担,提高工业控制系统的稳定性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种基于工业互联网的漏洞扫描平台结构示意图;
图2为本申请公开的一种具体的数基于工业互联网的漏洞扫描平台结构示意图;
图3为本申请公开的一种基于工业互联网的漏洞扫描方法流程图;
图4为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在当前网络安全技术下,对于工业控制系统安全来说,传统的漏洞扫描主要分成两种模式:一种是采用主动方法扫描的基于网络的漏洞扫描技术,一种是采用被动方法扫描的基于主机的漏洞扫描技术,存在漏洞扫描器频繁扫描给系统带来巨大的资源占用,造成业务系统的工作负担,极大的影响生产系统性能,不利于生产安全的问题。为此,本申请提供了一种基于工业互联网的漏洞扫描方案,能够降低扫描带来的系统业务负担,提高工业控制系统的稳定性。
参见图1所示,本申请实施例公开了一种基于工业互联网的漏洞扫描平台,包括:
系统配置模块11,用于配置扫描任务,并下发所述扫描任务。
扫描管理模块12,用于执行所述扫描任务,发现所述扫描任务对应的目标工控网络,对所述目标工控网络中的设备发送预设tcp协议数据包,以对所述目标工控网络中的设备进行漏洞扫描,得到扫描结果,其中,所述预设tcp协议数据包包括包头部分和预设数据部分,所述包头部分包括目的端口,并且,所述目的端口为预设工控协议端口,所述预设数据部分满足预设工控协议,并且,所述预设数据部分中包括漏洞扫描行为数据。
例如,漏洞扫描行为数据可以为记录目标主机的各项参数的行为对应的数据。
日志生成模块13,基于所述扫描结果生成对应的扫描日志,并对所述扫描日志进行显示。
可见,本申请实施例公开的基于工业互联网的漏洞扫描平台,包括:系统配置模块,用于配置扫描任务,并下发所述扫描任务;扫描管理模块,用于执行所述扫描任务,发现所述扫描任务对应的目标工控网络,对所述目标工控网络中的设备发送预设tcp协议数据包,以对所述目标工控网络中的设备进行漏洞扫描,得到扫描结果,其中,所述预设tcp协议数据包包括包头部分和预设数据部分,所述包头部分包括目的端口,并且,所述目的端口为预设工控协议端口,所述预设数据部分满足预设工控协议,并且,所述预设数据部分中包括漏洞扫描行为数据;日志生成模块,基于所述扫描结果生成对应的扫描日志,并对所述扫描日志进行显示。也即,本申请实施例通过对目标工控网络中的设备发送预设tcp协议数据包,来实现所述目标工控网络中的设备进行漏洞扫描,并且,预设tcp协议数据包中的包头部分中的目的端口为预设工控协议端口,预设数据部分满足预设工控协议并包括漏洞扫描行为数据,这样,能够对支持工控协议的目的端口进行连接,使得扫描行为融入到正常业务中,既完成了漏洞扫描功能,又不会触发系统的漏洞,能够降低扫描带来的系统业务负担,提高工业控制系统的稳定性。
其中,所述扫描管理模块12,具体用于:对所述目标工控网络中的设备发送预设tcp协议数据包,获取目标信息,利用所述目标信息与预设漏洞库进行比对,确定所述目标工控网络中的漏洞信息,以得到所述扫描结果。
在具体的实施方式中,所述预设漏洞库可以为cvnd漏洞库,通过获取到的目标信息与漏洞库cvnd里的已知漏洞进行比对确定是否存在漏洞,具体的,进行扫描后,根据被测设备的型号、固件、通信协议等指纹信息进行匹配,从而检测是否存在已知漏洞。
并且,所述扫描管理模块12,具体用于:发现所述扫描任务对应的目标工控网络,生成所述目标工控网络的网络拓扑结构。相应的,所述日志生成模块13,具体用于:基于所述扫描结果生成对应的扫描日志,所述扫描日志中包括所述网络拓扑结构。
在具体的实施方式中,所述扫描管理模块12,具体用于:
基于扫描引擎执行所述扫描任务,发现所述扫描任务对应的目标工控网络,对所述目标工控网络中的设备发送预设tcp协议数据包,以对所述目标工控网络中的设备进行漏洞扫描,得到扫描结果。
进一步的,所述漏洞扫描平台,还包括:
操作系统管理模块,用于维护所述漏洞扫描平台的操作系统。
另外,不同厂家、功能的工控设备在接入网络时使用不同接口及工控协议,本实施例提供的工控漏洞扫描平台支持多种接口及主流工控协议,以减少额外的数据转换工作。
在具体的实施方式中,系统配置模块对扫描的协议、端口号、主机信息等进行设置,并将相应的扫描任务下发给扫描管理模块。也即,可以配置tcp协议数据包中包含的工控协议以及目的端口等。
也即,本申请采用了轻量级漏洞扫描策略,工业互联网网络传输层采用的是tcp协议进行通信,其工控网络tcp数据包可以由包头数据部分和数据部分,包头部分由20b的源端口,目的端口以及序列号等信息组成,数据部分包含要传输的信息。通过发送与业务一致的数据包来实现对系统的扫描任务,扫描时发送的数据包,其包头部分符合tcp协议,数据部分满足工控协议,其中,目的端口通常为工控协议常用端口,漏洞扫描行为包含在数据部分。通过对已支持工控协议的常用端口尝试性链路连接,使得扫描行为融入到正常业务中,既完成了漏洞扫描功能,又不会触发系统的漏洞,从而避免非正常的操作造成对系统的影响。由于其扫描过程相对业务运行来说是静态的,因此不会对数据的保密性、完整性和可用性造成任何形式的损坏。具体的漏洞扫描分为三个阶段:(1)发现目标网络;(2)进一步搜集目标信息,如连接的主机信息、路由设备,并自动生成该网络的拓扑结构;(3)根据搜集到的信息判断目标网络否存在安全漏洞,并给出扫描结果。包括sql注入、xss漏洞及上传漏洞等web漏洞。根据漏洞类型结合主机的拓扑位置给出风险值评估。
进一步的,扫描引擎包含了传统主机完整扫描过程的一系列核心功能,如存活判断、端口扫描、服务识别、os判断、口令猜测等;具备plc设备的识别功能以及dcs、pcs、scada系统识别功能。此外,扫描引擎还负责控制和管理整个轻量级扫描流程:获取扫描任务,启动相应的子功能模块来扫描目标工控设备,建立连接以及之后的发包过程均采用前述的轻量级漏洞扫描策略,将扫描获取的目标信息与漏洞库中做比对并生成扫描报告,最后在hmi中展示扫描结果。
其中,本实施例中的漏洞扫描可以包括已知漏洞扫描和未知漏洞扫描,未知漏洞不存漏洞库中。已知漏洞扫描即对操作系统工控网络中已知漏洞的轻量级检测;未知漏洞扫描即对上位机和plc进行未知漏洞的轻量级检测,需要说明的是,通常针对操作系统的工控网络的漏洞是已知的,而上位机和plc是未知的,这样的话,可以减轻工控系统内存资源的消耗,实现轻量化、快速化的扫描。并且,可以进行扫描管理系统、漏洞库的升级。
例如,参见图2所示,图2为本申请实施例公开的一种具体的一种基于工业互联网的漏洞扫描平台结构示意图,管理系统即前述扫描管理模块,操作管理系统即前述操作系统管理模块,系统配置的扫描任务、升级任务的结果最后记录在日志中。
参见图3所示,本申请实施例公开了一种基于工业互联网的漏洞扫描方法,包括:
步骤s11:通过系统配置模块配置扫描任务,并下发所述扫描任务。
步骤s12:通过扫描管理模块执行所述扫描任务,发现所述扫描任务对应的目标工控网络,对所述目标工控网络中的设备发送预设tcp协议数据包,以对所述目标工控网络中的设备进行漏洞扫描,得到扫描结果,其中,所述预设tcp协议数据包包括包头部分和预设数据部分,所述包头部分包括目的端口,并且,所述目的端口为预设工控协议端口,所述预设数据部分满足预设工控协议,并且,所述预设数据部分中包括漏洞扫描行为数据。
步骤s13:通过日志生成模块基于所述扫描结果生成对应的扫描日志,并对所述扫描日志进行显示。
在具体的实施方式中,所述对所述目标工控网络中的设备发送预设tcp协议数据包,以对所述目标工控网络中的设备进行漏洞扫描,得到扫描结果,包括:
对所述目标工控网络中的设备发送预设tcp协议数据包,获取目标信息,利用所述目标信息与预设漏洞库进行比对,确定所述目标工控网络中的漏洞信息,以得到所述扫描结果。
可见,本申请实施例通过系统配置模块配置扫描任务,并下发所述扫描任务;通过扫描管理模块执行所述扫描任务,发现所述扫描任务对应的目标工控网络,对所述目标工控网络中的设备发送预设tcp协议数据包,以对所述目标工控网络中的设备进行漏洞扫描,得到扫描结果,其中,所述预设tcp协议数据包包括包头部分和预设数据部分,所述包头部分包括目的端口,并且,所述目的端口为预设工控协议端口,所述预设数据部分满足预设工控协议,并且,所述预设数据部分中包括漏洞扫描行为数据;通过日志生成模块基于所述扫描结果生成对应的扫描日志,并对所述扫描日志进行显示。也即,本申请实施例通过对目标工控网络中的设备发送预设tcp协议数据包,来实现所述目标工控网络中的设备进行漏洞扫描,并且,预设tcp协议数据包中的包头部分中的目的端口为预设工控协议端口,预设数据部分满足预设工控协议并包括漏洞扫描行为数据,这样,能够对支持工控协议的目的端口进行连接,使得扫描行为融入到正常业务中,既完成了漏洞扫描功能,又不会触发系统的漏洞,能够降低扫描带来的系统业务负担,提高工业控制系统的稳定性。
参见图4所示,本申请实施例公开了一种电子设备,包括处理器21和存储器22;其中,所述存储器22,用于保存计算机程序;所述处理器21,用于执行所述计算机程序,以实现前述实施例公开的漏洞扫描方法。
关于上述漏洞扫描方法的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
进一步的,本申请实施例还公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的漏洞扫描方法。
关于上述漏洞扫描方法的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的方法而言,由于其与实施例公开的平台相对应,所以描述的比较简单,相关之处参见平台部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种基于工业互联网的漏洞扫描平台、方法、设备及介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
1.一种基于工业互联网的漏洞扫描平台,其特征在于,包括:
系统配置模块,用于配置扫描任务,并下发所述扫描任务;
扫描管理模块,用于执行所述扫描任务,发现所述扫描任务对应的目标工控网络,对所述目标工控网络中的设备发送预设tcp协议数据包,以对所述目标工控网络中的设备进行漏洞扫描,得到扫描结果,其中,所述预设tcp协议数据包包括包头部分和预设数据部分,所述包头部分包括目的端口,并且,所述目的端口为预设工控协议端口,所述预设数据部分满足预设工控协议,并且,所述预设数据部分中包括漏洞扫描行为数据;
日志生成模块,基于所述扫描结果生成对应的扫描日志,并对所述扫描日志进行显示。
2.根据权利要求1所述的基于工业互联网的漏洞扫描平台,其特征在于,所述扫描管理模块,具体用于:
对所述目标工控网络中的设备发送预设tcp协议数据包,获取目标信息,利用所述目标信息与预设漏洞库进行比对,确定所述目标工控网络中的漏洞信息,以得到所述扫描结果。
3.根据权利要求1所述的基于工业互联网的漏洞扫描平台,其特征在于,所述扫描管理模块,具体用于:
发现所述扫描任务对应的目标工控网络,生成所述目标工控网络的网络拓扑结构。
4.根据权利要求3所述的基于工业互联网的漏洞扫描平台,其特征在于,所述日志生成模块,具体用于:
基于所述扫描结果生成对应的扫描日志,所述扫描日志中包括所述网络拓扑结构。
5.根据权利要求1所述的基于工业互联网的漏洞扫描平台,其特征在于,所述扫描管理模块,具体用于:
基于扫描引擎执行所述扫描任务,发现所述扫描任务对应的目标工控网络,对所述目标工控网络中的设备发送预设tcp协议数据包,以对所述目标工控网络中的设备进行漏洞扫描,得到扫描结果。
6.根据权利要求1至5任一项所述的基于工业互联网的漏洞扫描平台,其特征在于,还包括:
操作系统管理模块,用于维护所述漏洞扫描平台的操作系统。
7.一种基于工业互联网的漏洞扫描方法,其特征在于,包括:
通过系统配置模块配置扫描任务,并下发所述扫描任务;
通过扫描管理模块执行所述扫描任务,发现所述扫描任务对应的目标工控网络,对所述目标工控网络中的设备发送预设tcp协议数据包,以对所述目标工控网络中的设备进行漏洞扫描,得到扫描结果,其中,所述预设tcp协议数据包包括包头部分和预设数据部分,所述包头部分包括目的端口,并且,所述目的端口为预设工控协议端口,所述预设数据部分满足预设工控协议,并且,所述预设数据部分中包括漏洞扫描行为数据;
通过日志生成模块基于所述扫描结果生成对应的扫描日志,并对所述扫描日志进行显示。
8.根据权利要求7所述的基于工业互联网的漏洞扫描方法,其特征在于,所述对所述目标工控网络中的设备发送预设tcp协议数据包,以对所述目标工控网络中的设备进行漏洞扫描,得到扫描结果,包括:
对所述目标工控网络中的设备发送预设tcp协议数据包,获取目标信息,利用所述目标信息与预设漏洞库进行比对,确定所述目标工控网络中的漏洞信息,以得到所述扫描结果。
9.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求7至8任一项所述的漏洞扫描方法。
10.一种计算机可读存储介质,其特征在于,用于保存计算机程序,所述计算机程序被处理器执行时实现如权利要求7至8任一项所述的漏洞扫描方法。
技术总结