一种工控网络安全检测装置和未知漏洞检测方法与流程

文档序号:11878825阅读:473来源:国知局
一种工控网络安全检测装置和未知漏洞检测方法与流程

本发明实施例涉及网络安全技术领域,具体涉及一种工控网络安全检测装置和未知漏洞检测方法。



背景技术:

工业控制网络(以下简称“工控网络”)安全漏洞是在其生命周期的各个阶段(设计、实现、运维等过程)中引入的某类问题。比如设计阶段引入的非常容易被破解的加密算法,实现阶段引入的一个代码缓冲区溢出问题,运维阶段的一个错误的安全配置。这些都有可能最终成为工控网络安全漏洞,这些漏洞会对工控网络的安全(可用性、完整性、机密性)产生严重影响。

近年来,工控系统强调开放性,在网络中大量引入通用的IT产品,如Windows操作系统、关系数据库等,并广泛使用以太网和TCP/IP协议,在降低成本和简化集成的同时将大量IT漏洞引入了工控网络。同时,大部分的工控网络应用层协议和现场总线协议,广泛使用MODBUS/TCP、CAN等明码传输协议,存在没有严格的身份识别,报文很容易被伪造等无法避免的脆弱性。因此,由相对封闭的专用计算机和网络体系发展而来的工控网络系统,安全的薄弱的环节几乎来自于各方各面,特别对于大型SCADA系统,设备分散安装,部分采用公网和无线网络,更容易受到利用漏洞的攻击,严重的攻击后果可以使系统网络完全瘫痪,造成工业过程失控或装置停机。

工控网络具有非常鲜明的特点,当前工控网络安全漏洞进行检测的手段是比较局限的,具体体现在:现有检测手段仅针对工控网络内的外围服务器和通用IT设备,无法触及亟待保护的核心工控设备;现有的端口服务扫描、漏洞特征扫描等技术对漏洞库的依赖较大,但公开的工控网络安全漏洞库信息很少,导致无法实现深入、全面的检测;

基于公开漏洞的扫描技术和机制无法有效发现未知漏洞,同时在时间上永远滞后于攻击者利用的未知漏洞。



技术实现要素:

要解决的技术问题,如何检测工控设备的安全性。

针对现有技术中的缺陷,本发明实施例提供一种工控网络安全检测装置,包括壳体,设置在壳体内的电源模块、处理器、安全扫描单元、存储器和通信单元;

所述电源模块分别与所述处理器、存储器和通信单元供电;

所述存储器中存储有网络安全检测漏洞数据库和检测规则数据库;

所述处理器控制所述安全扫描单元调用所述存储器中存储的检测规则通过所述通信单元向与所述通信单元连接的被测终端发送漏洞安全检测数据;

所述通信单元接收被测终端的反馈信息并传送至所述处理器,所述处理器控制所述安全扫描单元根据所述安全检测漏洞库和反馈信息判断被测终端的漏洞信息并将所述漏洞信息存储到所述存储器中。

可选地,还包括:

与所述通信单元连接的客户端装置;

所述客户端用于通过所述通信单元向所述处理器发送漏洞检测控制命令;

还用于通过所述通信单元接收所述处理器处理的漏洞信息并显示。

可选地,所述通信单元包括以太网接口、串口和/或总线接口。

可选地,还所述通信单元还包括存储扩展单元,所述存储扩展单元与所述处理器连接;

所述通信单元接收被测终端的反馈信息并传送至所述处理器,所述处理器控制所述安全扫描单元根据所述安全检测漏洞库和反馈信息判断被测终端的漏洞信息并将所述漏洞信息存储到存储扩展单元。

可选地,所述通过存储扩展单元是SD卡存读取装置。

可选地,所述被测设备包括工控安全设备、工控控制系统和工控设备。

可选地,还包括与所述处理器连接的显示装置,所述显示装置用时显示所述网络安全检测的状态信息。

一种未知漏洞检测方法,用于上述的工控网络安全检测装置包括:

连接被检测设备;

配置未知漏洞检测装置;

对被检测设备和漏洞检测设备的连接性测试;

向被检测设备发送测试数据执行测试,得到测试数据;

分析监测数据并输出检测结果。

可选地,所述配置未知漏洞检测装置包括:

根据被测设备或系统使用的工控协议进行测试用例选取;

选择要进行模糊测试变异的数据内容进行建模。

可选地,所述对被检测设备和漏洞检测设备的连接性测试包括:

漏洞挖掘引擎会根据相关协议进行深度报文解析,解析其中需要变异的字段,并通过测试报文生成模块进行测试相关数据生成,同时根据模块中建模不断对其中需要变化的数据通过测试报文变形模块进行变形,然后输出给被测目标工业控制设备及系统。

可选地,所述向被检测设备发送测试数据执行测试,得到测试数据包括:

根据监视的异常告警情况进行数据解析和异常分析判断是否由于测试报文导致被测目标产生异常从而分析其是否存在未知漏洞;

并通过数据分析引擎模块分析发送的测试数据以及该测试数据造成被测目标异常情况进行分析得出相关未知漏洞及漏洞原因。

可选地,所述分析监测数据并输出检测结果包括:

根据数据分析结果进行结果汇总、展示和报告,通过报告生成引擎自动化形成定制化漏洞挖掘检测报告。

由上述技术方案可知,本发明实施例提供的工控网络安全检测装置通,过对“疑似漏洞”的所有相关信息的细节进行深入分析,重复进行针对性的测试,明确“疑似漏洞”的真实性,最后在出错数据包中精确定位,并可以将发现的“疑似漏洞”保存至漏洞库中进行管理。通过漏洞库中发现的漏洞进行漏洞测试验证漏洞的真实性和可复现性。一方面可以用来检测工控网络的安全性,挖掘未知漏洞;另一方面可以作为模拟的恶意攻击方,检验保护设备能否起到作用。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单的介绍,显而易见地,下面描述中的附图是本发明实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例一个实施例中一种工控网络安全检测装置的结构示意图;

图2为本发明实施例一个实施例中一种工控网络安全检测装置示意图;

图3为本发明实施例一个实施例中一种工控网络安全检测装置示意图;

图4为本发明实施例一个实施例中一种工控网络安全检测装置示意图;

图5为本发明实施例一个实施例中一种未知漏洞检测方法流程示意图;

图6为本发明实施例一个实施例中一种未知漏洞检测方法流程示意图

图7为本发明实施例一个实施例中一种未知漏洞检测方法原理示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供一种工控网络安全检测装置,如图1-图3所示,本工控网络安全检测装置包括壳体,设置在壳体内的电源模块、处理器、安全扫描单元、存储器和通信单元;所述电源模块分别与所述处理器、存储器和通信单元供电;所述存储器中存储有网络安全检测漏洞数据库和检测规则数据库;所述处理器控制所述安全扫描单元调用所述存储器中存储的检测规则通过所述通信单元向与所述通信单元连接的被测终端发送漏洞安全检测数据;所述通信单元接收被测终端的反馈信息并传送至所述处理器,所述处理器控制所述安全扫描单元根据所述安全检测漏洞库和反馈信息判断被测终端的漏洞信息并将所述漏洞信息存储到所述存储器中。下面对本发明实施例和提供的工控网络安全检测装置展开详细的说明。

在本发明实施例中,如图2所示,为了进一步方便用户配置本工控网络安全检测装置,使本工控网络安全检测装置的安全检测过程可视化,工控网络安全检测装置,还包括:与所述通信单元连接的客户端装置;所述客户端用于通过所述通信单元向所述处理器发送漏洞检测控制命令;还用于通过所述通信单元接收所述处理器处理的漏洞信息并显示。在本发明实施例中,该客户端装置可以配置工控网络安全检测装置的检测参数。例如,该客户端装置可以通过点对点直连方式,将漏洞挖掘检测平台与被测设备或系统进行连接,可以对配置工控网络安全检测装置、选择用例、运行测试等操作。

如图3所示,本发明实施例提供的工控网络安全检测装置中,所述通信单元包括以太网接口、串口和/或总线接口。为了能保证同一个工控网络安全检测装置同时连接多个被测终端,通信单元的以太网端口为多个。多个以太网端口可以同时连接多台工控安全设备、工控控制系统和工控设备。实现了一台设备可以同时多人处理,检测多台工控安全设备、多个工控控制系统和多个工控设备,节约逐个检测的时间,也可以避免每个工控设备都配置一台工控网络安全检测装置,造成资源浪费的问题。

如图3所示,在本发明实施例中,工控网络安全检测装置中,通信单元还包括存储扩展单元,所述存储扩展单元与所述处理器连接;所述所述通信单元接收被测终端的反馈信息并传送至所述处理器,所述处理器控制所述安全扫描单元根据所述安全检测漏洞库和反馈信息判断被测终端的漏洞信息并将所述漏洞信息存储到存储扩展单元。通过存储扩展单元可以在对被检测设备检测结束后的漏洞信息存储并随时转移。存储扩展单元优选是SD卡存读取装置。

如图4所示,在本发明实施例中,工控网络安全检测装置中,还包括与所述处理器连接的显示装置,所述显示装置用时显示所述网络安全检测的状态信息。显示装置用于通过通信单元连接。

在本发明实施例中工控网络安全检测装置可以参考现有的平台以低成本开发实现,当然也可以为了提高用户体验单独开发。最后需要说明的是,在本发明实施例中如果涉及到计算机程序及相应的方法均是直接应用了现有的比较成熟的方法实现,不涉及计算机程序等方法的改进,例如本发明实施例中涉及到的编码、解码、加密解密、验证等方法均能通过现有的方法实现。

为了进一步体现本发明提供的工控网络安全检测装置的优越性,本发明提供一种未知漏洞检测方法,应用于上述的工控网络安全检测装置,如图5所示,该方法包括:连接被检测设备;配置未知漏洞检测装置;对被检测设备和漏洞检测设备的连接性测试;向被检测设备发送测试数据执行测试,得到测试数据;分析监测数据并输出检测结果。下面对本发明提供的未知漏洞检测方法展开详细的说明。

对工控网络未知安全漏洞进行挖掘需要基于工控协议的模糊测试技术,通过对工控网络中的设备和系统进行智能模糊测试来发现。

运用模糊测试的原理,设计测试用例并构造变异报文,检测工控协议实现的缺陷。

通过点对点直连方式,将漏洞挖掘检测平台与被测设备或系统进行连接,经过配置、选择用例、运行测试、监测异常、结果分析等步骤,在强大自定义测试引擎的基础上,综合运用各种测试方法和脚本,向被测对象提供非预期的随机或用户自定义输入并监控输出中的异常来发现其潜在缺陷和故障。优化后的自动化模糊测试引擎不仅仅只关注协议和软件的边界值,同时还会关心任何能够触发未定义或是不安全行为的输入数据。

如图6、图7所示,测试过程中,基于高效的智能模糊测试和攻击测试等自动化测试方法,自动生成测试用例列表,并在测试列表运行时可以实时监控和进行管理,能够高效的完成复杂测试。丰富的测试监视器,包含底层通信(ICMP、ARP、链路状态),高层通讯(TCP和UDP端口),控制信号(离散、模拟),能够随时监视测试用例执行情况和相关漏洞检测结果。测试完成即可生成“正常”、“疑似漏洞”“、“其他”等测试结果,并可对“疑似漏洞”的测试结果进行漏洞标识,关联所有相关信息,并对漏洞名称、危险等级和描述等信息进行编辑,保存至漏洞库作为漏洞析的依据。

同时,通过对“疑似漏洞”的所有相关信息的细节进行深入分析,重复进行针对性的测试,明确“疑似漏洞”的真实性,最后在出错数据包中精确定位,并可以将发现的“疑似漏洞”保存至漏洞库中进行管理。通过漏洞库中发现的漏洞进行漏洞测试验证漏洞的真实性和可复现性。

根据漏洞分析的结果,利用漏洞挖掘检测平台提供的开发工具可以进行一系列的衍生开发。包括新的测试用例,测试脚本,测试/攻击套件,并且可以对衍生开发的结果进行漏洞测试用例、脚本测试检验。

具体地,所述配置未知漏洞检测装置包括:

根据被测设备或系统使用的工控协议进行测试用例选取;

选择要进行模糊测试变异的数据内容进行建模。

输入数据模块:根据被测设备或系统使用的工控协议进行测试用例选取,数据模块即选择要进行模糊测试变异的数据内容进行建模。状态模型即根据相应的协议中需要采用的状态机进行状态建模。测试参数即测试用例中比如变化次数、端口等参数的设置。

所述对被检测设备和漏洞检测设备的连接性测试包括:

漏洞挖掘引擎会根据相关协议进行深度报文解析,解析其中需要变异的字段,并通过测试报文生成模块进行测试相关数据生成,同时根据模块中建模不断对其中需要变化的数据通过测试报文变形模块进行变形,然后输出给被测目标工业控制设备及系统。

具体地,输入数据输入后,漏洞挖掘引擎会根据相关协议进行深度报文解析,解析其中需要变异的字段,并通过测试报文生成模块进行测试相关数据生成,同时根据模块中建模不断对其中需要变化的数据通过测试报文变形模块进行变形,然后输出给被测目标工业控制设备及系统。

向被检测设备发送测试数据执行测试,得到测试数据包括:

根据监视的异常告警情况进行数据解析和异常分析判断是否由于测试报文导致被测目标产生异常从而分析其是否存在未知漏洞;

并通过数据分析引擎模块分析发送的测试数据以及该测试数据造成被测目标异常情况进行分析得出相关未知漏洞及漏洞原因。

被测目标工业控制设备及系统收到测试报文后会对其进行响应,响应会在监视器中进行显示,监视被测目标的设备是否还存活、端口是否还开放、服务是否还存在以及其逻辑输出是否符合预期等。

根据监视的异常告警情况进行数据解析和异常分析判断是否由于测试报文导致被测目标产生异常从而分析其是否存在未知漏洞。并通过数据分析引擎模块分析发送的测试数据以及该测试数据造成被测目标异常情况进行分析得出相关未知漏洞及漏洞原因。

所述分析监测数据并输出检测结果包括:

根据数据分析结果进行结果汇总、展示和报告,通过报告生成引擎自动化形成定制化漏洞挖掘检测报告。

本工控网络安全检测装置提供了操作、监视、管理整个漏洞挖掘测试过程的功能。测试过程中,基于高效的智能模糊测试和攻击测试等自动化测试方法,自动生成测试用例列表,并在测试列表运行时可以实时监控和进行管理,能够高效的完成复杂测试。丰富的测试监视器,包含底层通信(ICMP、ARP、链路状态),高层通讯(TCP和UDP端口),控制信号(离散、模拟),能够随时监视测试用例执行情况和结果。测试完成即可生成“正常”、“疑似漏洞”、“其他”等测试结果,并可对“疑似漏洞”的测试结果进行漏洞标识,关联所有相关信息,并对漏洞名称、危险等级和描述等信息进行编辑,保存至本机漏洞库作为漏洞析的依据。

未知漏洞挖掘则主要通过各类基于生成的模糊(fuzzing)测试用引擎,具体包括:

(1)基于工控协议的语法模糊测试

语法模糊测试基于工控协议实现(协议规范定义)的报文语法,在给定变量初始化文件的前提下,生成递归定义的测试用例语法描述,根据交互语义生成有序的一系列测试用例,有意将畸形的语法注入到测试报文,或者对合法的报文进行变异,从而试图触发协议实现中有缺陷的代码,导致协议规范中定义的正常操作流程遭到干扰或破坏。

(2)基于工控协议的智能模糊测试

创新的智能模糊测试引擎基于各类工控协议的规约来构建模型,在深入理解各个工控协议规约特征的基础上生成输入数据和测试用例去遍历协议实现的各个方面,包括在数据内容,结构,消息,序列中引入各种异常。同时,引入了大数据分析和人工智能算法,将初始的变形范围主要集中在该厂商设备最容易发生故障的范围内进行密集测试,测试中动态追踪被测设备的异常反应,智能选择更有效的输入属性构造新样本进行测试,在迭代测试中不断更新模型参数和优化样本构造,使得同一类设备将来进行测试时能够自动选择更有效的样本优先进行测试,这样可以大大减少测试数据生成的盲目性和测试用例的无效性,提升关键代码的覆盖率和设备的异常检测能力。

工控网络安全检测装置通过对“疑似漏洞”的所有相关信息的细节进行深入分析,重复进行针对性的测试,明确“疑似漏洞”的真实性,最后在出错数据包中精确定位,并可以将发现的“疑似漏洞”保存至漏洞库中进行管理。通过漏洞库中发现的漏洞进行漏洞测试验证漏洞的真实性和可复现性。

在这类应用场景里,本发明实施例可以起到多角色的作用,一方面可以用来检测工控网络的安全性,挖掘未知漏洞;另一方面可以作为模拟的恶意攻击方,检验保护设备能否起到作用。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。术语“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明实施例和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明实施例的限制。除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明实施例中的具体含义。

本发明实施例的说明书中,说明了大量具体细节。然而能够理解的是,本发明实施例的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本发明实施例公开并帮助理解各个发明方面中的一个或多个,在上面对本发明实施例的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释呈反映如下意图:即所要求保护的本发明实施例要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明实施例的单独实施例。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。本发明实施例并不局限于任何单一的方面,也不局限于任何单一的实施例,也不局限于这些方面和/或实施例的任意组合和/或置换。而且,可以单独使用本发明实施例的每个方面和/或实施例或者与一个或更多其他方面和/或其实施例结合使用。

最后应说明的是:以上各实施例仅用以说明本发明实施例的技术方案,而非对其限制;尽管参照前述各实施例对本发明实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例各实施例技术方案的范围,其均应涵盖在本发明实施例的权利要求和说明书的范围当中。

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