工程文件全生命周期安全保护方法与流程

文档序号:11590270阅读:556来源:国知局
工程文件全生命周期安全保护方法与流程

本发明涉及一种自动化控制信息安全保护技术领域,特别是涉及一种工程文件全生命周期安全保护方法。



背景技术:

工业控制系统广泛应用到工业自动化控制领域,比如电力、石油、国防科技等国家基础设施,以及食品、医药、交通等民生领域。但是工业控制系统在建设之初更多考虑物理安全、功能安全,系统架构设计只为实现自动化、信息化的控制功能,方便生产和管理,缺乏信息安全考虑和建设。随着工业和信息化的深度融合、工业4.0的提出,以及后来的“互联网+”,这些在将封闭的工业控制网络连接互联网络的同时,工业控制系统信息安全问题也随之暴露出来,例如,采用通用软硬件带来的漏洞后门问题,新技术带来的新挑战,以及面对stuxnet、flame病毒等背后所折射出的“国家队”威胁。

传统的工业控制系统中为了保证某一固件故障发生时系统能够正常运行而一直采用同构冗余备份,但这种方式可以应对机器故障问题而不能解决人为攻击带来的共因失效的信息安全问题。而对于公知的工控系统信息安全解决方案主要集中在下面几个方面:一、按照不同的安全级别需求划分隔离区域解决安全问题--譬如边界防护、防火墙、白名单都属于这类方案;二、管控操作人员、增加监控系统;三、基于特征代码识别的检测技术。在这三类方案中,都只能片面的解决整个工控系统中某一种入侵方式带来的安全问题,而对于未知的漏洞,未知的后门等未知的威胁就显得无力许多。



技术实现要素:

针对现有技术中存在的不足,本发明提供一种工程文件全生命周期安全保护方法,该安全保护方法以异构冗余、多余度表决技术为核心,分别与工程文件全生命周期的编译环节、传输环节、存储环节、运行环节的具体流程、技术相结合,最终达到对流程中工程文件保护的目的,增加逻辑组态工程文件的机密性、完整性、可用性,能够在有效阻止已知攻击的基础上应对未知漏洞未知后门的威胁。

为了实现上述目的,本发明采用以下的技术方案:

本发明提供一种工程文件全生命周期安全保护方法,从工程文件的开始生成到工程文件最后的运行都制定了相应的安全保护方法,涵盖了工程文件的编译、传输、存储及运行的整个生命周期;采用异构冗余和多余度表决机制来应对未知漏洞和后门的威胁,包括以下步骤:

步骤1,在逻辑组态工程文件的编译过程中以多个目标运行平台分别生成多个高度混淆、功能等价的逻辑组态工程文件;

步骤2,在工程文件传输环节采用工控协议与常规协议重构的多协议同步运行机制,基于动态密钥构建通讯信道,将工程文件数据包以多分片方式在随机路径中进行数据传输,完成工控系统端到端加密安全传输;

步骤3,在工程文件存储环节利用区块链技术搭建区块链服务器以共识方式防止工程文件被篡改;

步骤4,在组态工程文件运行环节使用异构冗余、多余度表决机制使得工程文件的执行结果由多个异构变体共同表决确定。

进一步地,所述步骤1的具体实现过程为:基于异构多模下位机软硬件运行基础环境生成跨平台环境的中间代码,根据编译过程中全局符号、关键数据结构、程序布局的多样性,自动生成具有随机性、多样性特征的异构变体,并且在异构变体生成的过程中增加函数级、模块级的动态重构技术,使得多个异构变体之间不存在一致性的可利用的攻击路径。

进一步地,所述步骤3的具体实现过程为:基于区块链的工程文件存储原理是在将工程文件存放到下位机的同时计算出该工程文件的哈希值并将该值存放到区块链服务器,在存储到下位机的工程文件被执行前计算此时工程文件的哈希值并与服务器端的哈希值进行对比来确认工程文件是否被篡改,一旦发现被篡改将停止工程文件的执行。

进一步地,所述步骤4中,在组态工程文件运行环节使用异构冗余、多余度表决隐匿被攻破的工业控制器的执行结果,保证工业控制系统以正常工业控制器的执行结果进行输出,使得异构多变体被攻破的概率随变体的数量呈指数上升。

与现有技术相比,本发明具有以下优点:

1、本发明安全保护方法以异构冗余、多余度表决技术为核心,分别与工程文件全生命周期的编译环节、传输环节、存储环节、运行环节的具体流程、技术相结合,使得工程文件在编译环节生成的异构多变体不存在一致性的可利用攻击路径,在传输环节无法被中间人攻击,在存储环节无法被篡改,在运行环节遭受到的攻击不能生效,能够在有效阻止已知攻击的基础上应对未知漏洞未知后门的威胁。

2、在工程文件的整个生命周期都制定了相应的安全保护方法,带来了工控系统自身安全的全面提升。

3、工程文件编译及运行环节采用异构冗余、多余度表决技术,有效解决了人为攻击带来的共因失效问题。

4、本发明采用多协议同步运行机制、传输通讯协议的重写和加密动态隧道技术,增加数据传输中的私密性。

5、区块链技术应用到工业控制系统中使得工程文件在存储环节无法被更改、替换。

附图说明

图1是本发明工程文件全生命周期安全保护方法的流程图;

图2是工程文件编译及运行环节多态验证及保护原理图;

图3是函数级动态重构技术原理图;

图4是模块级动态重构技术原理图;

图5是多协议同步运行及多分片随机传输原理图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述:

实施例一,如图1所示,本发明工程文件全生命周期安全保护方法中,包含工程文件编译环节、工程文件传输环节、工程文件存储环节及工程文件运行环节四个阶段,在每个环节中基于异构冗余、多余度表决机制,结合具体流程增加相应的安全保护技术,形成信息安全保护方案,具体包括以下步骤:

步骤1,如图2所示,基于异构多模下位机软硬件运行基础环境生成跨平台环境的中间代码;在逻辑组态工程文件的编译过程中以多个目标运行平台分别生成多个高度混淆、功能等价的逻辑组态工程文件;

中间代码生成,从工业控制器的编程语言入手,对工业控制器编程语言进行词法分析、语法分析、语义分析,基于异构多模下位机软硬件运行基础环境(包括cpu架构、操作系统等)生成跨平台环境的中间代码。

静态多变体自动生成,在逻辑组态工程文件的编译过程中通过采用全局符号、关键数据结构、程序布局的多样性随机编译技术,生成具有随机性、多样性的异构变体,并且在异构变体生成的过程中增加函数级、模块级的动态重构技术,使得多个异构变体之间不存在一致性的可利用的攻击路径,工程文件的合法行为由多个异构变体共同表决确定,这样就将单一空间下的未知安全问题转化为多维空间下极小概率问题。

如图3所示,多变体叠加函数级的层次化多变体动态重构技术,对关键函数通过各自的拟态编译器自动生成多个实现体,在运行时通过智能随机选择器根据历史情况随机的选择若干个多变体完成函数功能,并对选中的多变体的返回值进行多模判决。

如图4所示,多变体叠加模块级的层次化多变体动态重构技术,对关键模块通过拟态编译器等技术自动生成多个实现体,在系统执行阶段控制流通过自动分发器分发到各个异构模块中,并收集各个异构模块的输出结果,最后对多个异构模块的输出结果进行多模判决确定系统的输出结果。

步骤2,在工程文件传输环节采用工控协议与常规协议重构的多协议同步运行机制,基于动态加密隧道,将工程文件数据包以多分片方式在随机路径中进行数据传输,完成工控系统端到端加密安全传输,增加数据传输中的私密性,有效阻止逻辑组态工程文件在传输环节的中间人攻击;

其中动态加密隧道技术,动态加密隧道通讯技术基于pki非对称密钥加密机制,该技术通过信息加密公私钥,通信隧道公私钥进行加解密操作,可应用在工控网络监控中心和plc节点之间建立直连动态隧道进行加密通信。如图5所示,以从监控中心向plc发送数据为例,监控中心将信息用plc公钥加密,再通过通信隧道私钥签名后发送给对方,对方采用通信隧道公钥验证后再用plc私钥解密消息。通过系统定期更换用于加解密的通信隧道公私钥对,即可更换channel扩展协议的channelid,可以为api接口提供动态通信信道(channel)的调用,使得加密传输隧道得以动态变化。

其中多分片随机传输技术,首先监控中心将信息加密后分成若干片段,各分片信息从监控中心经过随机路径发向终点。随机路径中的中间节点将自己负责的分片信息向目标方向下一节点发送,发送到下一个节点的同时删除本节点数据,直到所有分片信息发送到目标节点,目标节点合并所有分片信息后解密得到原始信息。如图5所示,以监控中心向plc2发送消息a为例,具体步骤如下:

步骤201,在监控中心将消息a进行加密;

步骤202,将消息a分为3片,分别为分片1、分片2和分片3;

步骤203,分片1通过plc1到达plc2,分片2直接到达plc2,分片3通过plc3到达plc2;

步骤204,plc2收集完整的3片信息后对消息合成得到加密的消息a;

步骤205,最后解密获得消息a。

每次监控中心发送其他消息,都重复上述步骤,分片的数目可能会随系统设置变化,消息发送路径也会随机发生变化,以此构建动态的消息传输方式。

步骤3,在工程文件存储环节利用区块链技术搭建区块链服务器以共识方式防止工程文件被篡改;

逻辑组态工程文件区块链发布技术,基于区块链的去中心化特性搭建区块链服务器,保证存储在区块链服务器数据的安全性。工控网络区块链文件发布系统用于存储逻辑组态工程文件,该系统包括2层结构,上层是面向用户的工控网络区块链平台,底层由区块链数据库构建;平台的操作步骤如下:

步骤301,用户向区块链平台管理员申请发布逻辑组态工程文件;

步骤302,管理员审批通过后可将逻辑组态工程文件编译后的文件的相关信息形成发布摘要信息存储到区块链上,发布摘要信息可以根据发布单号进行查询。发布摘要信息包括存储发布方a(监控中心)和接收方b(plc)的地址,发布文件的哈希值等,并由区块链各节点共同盖上时间戳;

步骤303,plc下载逻辑组态工程文件后,根据发布单号将编译后的文件哈希值和区块链上的数据进行比较,如果不一致,说明文件遭到篡改并向监控中心报警。

步骤4,在组态工程文件运行环节使用异构冗余、多余度表决机制使得工程文件的执行结果由多个异构变体共同表决确定,在组态工程文件运行环节使用异构冗余、多余度表决隐匿被攻破的工业控制器的执行结果,保证工业控制系统以正常工业控制器的执行结果进行输出,使得异构多变体被攻破的概率随变体的数量呈指数上升,即针对异构多变体工业控制系统的攻击呈现小概率时间。

以上所示仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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