一种多融合联动响应的动态安全方法与系统转让专利

申请号 : CN201710382960.2

文献号 : CN108965215B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 尚文利赵剑明万明刘贤达尹隆曾鹏于海斌

申请人 : 中国科学院沈阳自动化研究所

摘要 :

本发明涉及一种基于多融合联动响应的动态安全方法与系统,方法为现场控制设备通过身份认证、密钥管理进行主动响应与被动响应,对异常行为进行报警。系统包括接入认证主动响应模块,访问控制主动响应模块,访问控制被动响应模块,异常冒充被动响应模块,密钥弱点被动响应模块和异常状态被动响应机制模块。本发明在保证终端设备安全的正确性及可行性的基础上,能够构建安全可信的工控系统运行环境。

权利要求 :

1.一种多融合联动响应的动态安全方法,其特征在于,现场控制设备通过身份认证、密钥管理进行主动响应与被动响应,对异常行为进行报警,包括以下步骤:接入认证主动响应,对于认证数据流,使现场控制设备通过自己的数字证书B与其他通信节点进行身份合法性认证;通过认证后允许通信;

访问控制主动响应,对于非认证数据流,检测到非法访问时,立即阻断数据通信并进行报警;

访问控制被动响应,当访问控制主动响应步骤检测到异常行为时被触发,由管理员确认该异常行为是否合法;

异常冒充被动响应,对于非认证数据流,检测到异常冒充行为,由管理员确认是否需要对证书进行处理;

密钥弱点被动响应,对于非认证数据流,检测到密钥脆弱性或过期的事件,由管理员确认是否需要对密钥进行处理;若是,则进行会话密钥的协商;

异常状态被动响应,对于非认证的数据流,检测到其他异常行为,通过通信模型的建立对所有违反通信模型的行为进行报警;

所述进行会话密钥的协商包括以下步骤:

a)发起方发送数字证书B和签名数据;

b)接收方验证发起方的签名数据,认证通过,则继续进行通信;接收方发送自己的数字证书B和签名数据;

c)发起方验证接收方的签名数据,认证通过,则继续进行通信;发起方发送基于接收方公钥进行加密的对称密钥对信息n,并附带随机数;

d)接收方发送基于发起方公钥进行加密的对称密钥对信息m,并附带随机数;

e)发起方和接收方对n、m信息进行处理,生成对称密钥对;发起方用对称密钥对加密一个随机数+时间标签,进行应答;

f)接收方解密发起方发送的数据,并对随机数+1;接收方用对称密钥对加密随机数+1的信息以及时间标签。

2.根据权利要求1所述的一种多融合联动响应的动态安全方法,其特征在于所述现场控制设备通过身份认证、密钥管理进行主动响应与被动响应之前:预先配置代表身份的数字证书A,然后现场控制设备在实际环境中对数字证书A进行现场更新,并获取数字证书B。

3.根据权利要求1所述的一种多融合联动响应的动态安全方法,其特征在于所述访问控制主动响应,对于非认证的数据流,检测包括以下步骤:a)首先,通过网卡的混杂模式对数据流进行捕获;

b)对捕获的数据进行协议分析;

c)对协议的应用层协议进行解析;

d)匹配数据流中的协议解析内容与设定的匹配规则内容是否相符;若相符,则进行日志设置或直接放行数据流;否则对数据流进行阻拦并报警;默认情况下阻止一切数据流的通过。

4.根据权利要求1所述的一种多融合联动响应的动态安全方法,其特征在于所述访问控制被动响应,由管理员确认该异常行为是合法时,将该行为加入到匹配规则中。

5.一种多融合联动响应的动态安全系统,其特征在于,包括:接入认证主动响应模块,用于对于认证数据流,使现场控制设备通过自己的数字证书B与其他通信节点进行身份合法性认证;通过认证后允许通信;

访问控制主动响应模块,用于对于非认证数据流,检测到非法访问时,立即阻断数据通信并进行报警;

访问控制被动响应模块,用于当访问控制主动响应模块检测到异常行为时被触发,由管理员确认该异常行为是否合法;

异常冒充被动响应模块,用于对于非认证数据流,检测到异常冒充行为,由管理员确认是否需要对证书进行处理;

密钥弱点被动响应模块,用于对于非认证数据流,检测到密钥脆弱性或过期的事件,由管理员确认是否需要对密钥进行处理;若是,则进行会话密钥的协商;

异常状态被动响应机制模块,用于对于非认证的数据流,检测到其他异常行为,通过通信模型的建立对所有违反通信模型的行为进行报警;

所述进行会话密钥的协商包括:

a)发起方发送数字证书B和签名数据;

b)接收方验证发起方的签名数据,认证通过,则继续进行通信;接收方发送自己的数字证书B和签名数据;

c)发起方验证接收方的签名数据,认证通过,则继续进行通信;发起方发送基于接收方公钥进行加密的对称密钥对信息n,并附带随机数;

d)接收方发送基于发起方公钥进行加密的对称密钥对信息m,并附带随机数;

e)发起方和接收方对n、m信息进行处理,生成对称密钥对;发起方用对称密钥对加密一个随机数+时间标签,进行应答;

f)接收方解密发起方发送的数据,并对随机数+1;接收方用对称密钥对加密随机数+1的信息以及时间标签。

说明书 :

一种多融合联动响应的动态安全方法与系统

技术领域

[0001] 本发明涉及一种基于多融合联动响应的动态安全方法与系统,其能够使工业测控网络控制设备安全构造一个动态、安全和可信的环境,属于工业控制网络安全领域。

背景技术

[0002] 卡巴斯基工控系统病毒研究室指出构造安全可靠的终端设备,是构造一个安全可靠的整体系统的基础。在国际上,可信计算技术的理论体系基本建立,当前研究重点主要集中在虚拟技术、安全启动、远程证明、可信计算应用和测评等领域。可信芯片和可信操作系统等关键技术已实现产品化,并在重要保护领域有所应用。AB、Tofino等公司加入TCG(可信计算组织)。国际知名工业控制系统设备公司开始在PLC等产品设计时考虑加强可靠性和安全性。工业控制系统安全领域知名公司也着手在采用可信计算技术来加强终端的安全防护能力。
[0003] 现有工控系统中无法将数字证书、访问控制、异常检测进行有效融合,不能实现动态调整,对网络攻击往往处理比较被动,本发明提供一种有效的动态处理机制,使工控系统具有主动安全状态调整能力。

发明内容

[0004] 针对上述技术不足,本发明的目的提供一种基于多融合联动响应的可信PLC动态安全方法与系统。
[0005] 本发明解决其技术问题所采用的技术方案是:基于一种多融合联动响应的动态安全方法,现场控制设备通过身份认证、密钥管理进行主动响应与被动响应,对异常行为进行报警,包括以下步骤:
[0006] 接入认证主动响应模块,对于认证数据流,现场控制设备通过自己的数字证书B与其他通信节点进行身份合法性认证;通过认证后允许通信;
[0007] 访问控制主动响应模块,对于非认证数据流,检测到非法访问时,立即阻断数据通信并进行报警;
[0008] 访问控制被动响应模块,当访问控制主动响应模块检测到异常行为时被触发,由管理员确认该异常行为是否合法;
[0009] 异常冒充被动响应模块,对于非认证数据流,检测到异常冒充行为,由管理员确认是否需要对证书进行处理;
[0010] 密钥弱点被动响应模块,对于非认证数据流,检测到密钥脆弱性或过期的事件,由管理员确认是否需要对密钥进行处理;若是,则进行会话秘钥的协商;
[0011] 异常状态被动响应机制模块,对于非认证的数据流,检测到其他异常行为,通过通信模型的建立对所有违反通信模型的行为进行报警。
[0012] 所述现场控制设备通过身份认证、密钥管理进行主动响应与被动响应之前:预先配置代表身份的数字证书A,然后现场控制设备在实际环境中对数字证书A进行现场更新,并获取数字证书B。
[0013] 所述现场控制设备通过自己的数字证书B与其他通信节点进行身份合法性认证包括以下步骤:
[0014] i)发起方发起身份认证请求,建立TCP握手链接;
[0015] j)发起方发送身份认证请求;
[0016] k)接收方确认身份请求;
[0017] l)发起方发送签名证书A;
[0018] m)发起方发送加密证书B;
[0019] n)接收方确认发起方发送的签名证书A和加密证书B,进行签名验签;
[0020] o)接收方发送签名证书C;
[0021] p)接收方发送加密证书D;
[0022] i)发送方确认接收方发送的签名证书和加密证书,进行签名验签,完成认证。
[0023] 所述访问控制主动响应模块,对于非认证的数据流,检测包括以下步骤:
[0024] e)首先,通过网卡的混杂模式对数据流进行捕获;
[0025] f)对捕获的数据进行协议分析;
[0026] g)对协议的应用层协议进行解析;
[0027] h)匹配数据流中的协议解析内容与设定的匹配规则内容是否相符;若相符,则进行日志设置或直接放行数据流;否则对数据流进行阻拦并报警;默认情况下阻止一切数据流的通过。
[0028] 所述访问控制被动响应模块,由管理员确认该异常行为是合法时,将该行为加入到匹配规则中。
[0029] 所述进行会话秘钥的协商包括以下步骤:
[0030] f)发起方发送数字证书B和签名数据;
[0031] g)接收方验证发起方的签名数据,认证通过,则继续进行通信;接收方发送自己的数字证书B和签名数据;
[0032] h)发起方验证接收方的签名数据,认证通过,则继续进行通信;发起方发送基于接收方公钥进行加密的对称秘钥对信息n,并附带随机数;
[0033] i)接收方发送基于发起方公钥进行加密的对称秘钥对信息m,并附带随机数;
[0034] j)发起方和接收方对n、m信息进行处理,生成对称密钥对;发起方用对称密钥对加密一个随机数+时间标签,进行应答;
[0035] f)接收方解密发起方发送的数据,并对随机数+1;接收方用对称密钥对加密随机数+1的信息以及时间标签。
[0036] 基于一种多融合联动响应的动态安全系统,包括:
[0037] 接入认证主动响应模块,用于对于认证数据流,现场控制设备通过自己的数字证书B与其他通信节点进行身份合法性认证;通过认证后允许通信;
[0038] 访问控制主动响应模块,用于对于非认证数据流,检测到非法访问时,立即阻断数据通信并进行报警;
[0039] 访问控制被动响应模块,用于当访问控制主动响应模块检测到异常行为时被触发,由管理员确认该异常行为是否合法;
[0040] 异常冒充被动响应模块,用于对于非认证数据流,检测到异常冒充行为,由管理员确认是否需要对证书进行处理;
[0041] 密钥弱点被动响应模块,用于对于非认证数据流,检测到密钥脆弱性或过期的事件,由管理员确认是否需要对密钥进行处理;若是,则进行会话秘钥的协商;
[0042] 异常状态被动响应机制模块,用于对于非认证的数据流,检测到其他异常行为,通过通信模型的建立对所有违反通信模型的行为进行报警。
[0043] 本发明具有以下有益效果及优点:
[0044] 1.本发明在保证终端设备安全的正确性及可行性的基础上,能够构建安全可信的工控系统运行环境。
[0045] 2.本发明将数字证书、访问控制、异常检测进行有效融合。
[0046] 3.本发明提供了一种工控系统动态处理安全威胁的能力。

附图说明

[0047] 图1是可信PLC环境架构示意图;
[0048] 图2是多融合联动响应响应机制处理流程图;
[0049] 图3是本方法实现时可信PLC的功能架构图。
[0050] 图4是管控平台与NGU的身份认证过程流程图;
[0051] 图5是秘钥协商流程图;
[0052] 图6是访问控制流程图。

具体实施方式

[0053] 下面结合实施例对本发明做进一步的详细说明。
[0054] 如图2所示,一种基于多融合联动响应的动态安全方法,基于策略、防御、检测与响应(P2DR—Policy、Protection、Detection、Response)的多融合联动响应模型以工业测控系统可用性优先为原则,并考虑工业应用的实时性,对工业测控系统的可信计算环境以访问控制技术为核心,身份认证、密钥管理为手段,进行主动响应与被动响应,最终实现工业测控系统可信计算环境的安全动态调整,该方法主要包括以下几个部分:
[0055] 本发明适用于工业测控系统中具有可信功能的现场控制设备,本文的实施例是以PLC(可编程逻辑控制器)为特定说明对象,如图3为本实施例的可信PLC功能架构图,但不限于应用于PLC上。
[0056] 以下方法过程参考了基于可信PLC的一种环境架构(其中双网口NGU+传统控制器构成可信PLC),如图1所示。
[0057] (1)现场控制设备(如可信PLC)数字证书更新:为了现场维护方便考虑,通过调试串口预先配置一个由数字化证书系统签发的代表身份的数字证书A(出厂证书),之后,在实际部署环境中,现场配置人员对证书进行现场更新,可信PLC基于数字证书A更新获取自身在此环境中应用的数字证书B(运行证书),数字证书B符合现场网络拓扑结构的证书格式。
[0058] (2)接入认证主动响应机制:通过身份认证确定合法的终端接入,自动生成相应的访问控制规则策略,并实现实时配置与生效。可信PLC通过自己的数字证书B来与其他通信端点进行身份合法性认证,认证过程可以参考如图4管控平台与NGU(网络安全单元)的身份认证过程。一旦通过认证,则可信PLC的NGU模块添加接入认证许可规则,即允许终端与管控平台间通信,格式如下:
[0059] 源IP地址源MAC地址目的IP地址目的MAC地址方向ACCEPT
[0060] 身份认证过程详解,其中图4以NGU(定义为接收方)和安全管理平台(定义为发起方)为例,但此过程适应于整个本申请的方法的其他节点间身份认证过程:
[0061] a)首选由一方发起身份认证请求的第一步,建立TCP握手链接;
[0062] b)之后由发起方发送身份认证请求,包括IP地址、MAC、节点名、签名内容;
[0063] c)接收方确认身份请求,并发送自己的IP地址、MAC、节点名、签名内容;
[0064] d)发起方发送签名证书:包括对签名内容进行签名的信息、时间标签;
[0065] e)发起方发送加密证书:包括用接收方公钥加密的秘钥信息、时间标签、及签名信息;
[0066] f)接收方确认发起方发送的签名证书和加密证书,通过签名验签的手段,包括签名内容、对签名内容进行签名的信息、时间标签、接收方公钥加密的秘钥信息、时间标签、及签名信息。
[0067] g)接收方发送签名证书:参考d;
[0068] h)接收方发送加密证书:参考e;
[0069] i)发送方确认接收方发送的签名证书和加密证书,通过签名验签的手段,内容包括参考f)步骤内容。
[0070] (3)访问控制主动响应机制:访问控制方法基于“白名单”方式进行设计,默认规则阻止一切数据流量,基于访问控制方法检测到非法用户权限的访问时,立即阻断数据通信并进行报警,其中访问控制流程参考图6。访问控制规则的生成主要包括:管控平台下发规则,之后对规则进行双方验证;经过(2)步骤验证的合法接入的规则。
[0071] 对于不是认证的数据流,将进入主动响应访问控制机制:
[0072] a)首先,通过网卡的混杂模式对数据流进行捕获;
[0073] b)对捕获的数据进行协议分析,分析协议内容属性,主要包括源IP地址、目的IP地址、原端口号、目的端口号、协议类型这5个属性。
[0074] c)应用层协议解析,对于特定协议的应用层协议进行解析,如Modbus协议的功能码、起始地址、地址数、读写等属性,Powerlink协议的应用消息类型、节点ID号、标识号、时间戳等属性,等等。
[0075] d)访问控制匹配引擎通过匹配规则策略的知识,进行主动响应,此策略的来源主要包括两个部分:手动添加、身份认证添加。通过字符串匹配算法进行函数封装,匹配数据流中的协议解析内容与匹配规则策略内容是否相符。
[0076] 对于访问控制匹配的结果又三种结果:默认情况下阻止一切数据流的通过;如果匹配了允许通过的规则策略,则可进行通用日志设置或直接放行数据流;如果匹配了禁止通过的规则策略,则需要对数据流进行阻拦并进行报警。
[0077] (4)访问控制被动响应机制:参考(3)中所述的访问控制方法,在检测到非法用户异常行为这种情况下,触发访问控制被动响应机制,触发的内容为“由管理员确认是否需要从新协商密钥”。其中这种方法主要检测由(2)合法接入情况下,用户操作或行为存在异常的行为,如流量数据超过阈值、操作行为不符合预期(此方法将通过支持向量机等算法进行训练及判断)等,这些异常行为将进行异常报警,需要管理员进行确认这些行为的合法性,如果管理员确认这种行为合法(需要与用户商讨在多长时间内处理,因为这种异常行为在前期是被允许通过的),则访问控制机制会将合法的规则增加到主动响应机制中。
[0078] (5)异常冒充被动响应机制:此模块检测到可能的异常冒充行为,如中间人攻击检测(检测路由跳数、时间戳长短、解析内容不符合自身身份等)、正常用户多次进行身份认证而被其他用户拒绝等,针对这些异常冒充行为,由管理员确认是否需要对证书进行相关处理,其中处理方式主要为用户证书更新,并更新其他与其通信的节点的通信秘钥。
[0079] (6)密钥弱点被动响应机制:系统检测到密钥脆弱性或过期的事件,由管理员确认是否需要对密钥进行相关处理。这种方法主要是检测协商的通信秘钥是否过期,基于产生的秘钥都会有时间标签来检测,以及秘钥是否具有脆弱性,如协商的秘钥位数过短(位数小于限值)、秘钥以明文方式发送、秘钥存储位置访问权限过低(权限低于限值)等,如果管理员确认需要更新,则重新进行会话秘钥的协商,其中各个节点会话秘钥协商采取的机制是相同的,如图5所示,以工程师站与可信PLC控制器的会话秘钥协商流程图为例,主要分为6个步骤。
[0080] 秘钥协商过程详解,其中图5以NGU安全通信模块(定义为接收方)和工程师站(定义为发起方)为例,但此过程适应于整个本申请的方法的其他节点间的密钥协商过程:
[0081] a)发起方发送数字证书和签名数据,签名数据包括:签名内容(包括:节点名信息、IP地址、时间戳、随机数)、工程师站签名证书签名的信息(签名对象为签名内容)。
[0082] b)接收方验证a)的签名数据,认证通过,则继续进行通信,接收方发送数字证书和签名数据,签名数据内容参考a)的内容。
[0083] c)发起方验证接收方的b)步骤的签名数据,认证通过,则继续进行通信,发起方发送基于接收方公钥进行加密的对称秘钥对信息n,并附带随机数保证唯一性。
[0084] d)接收方发送基于发起方公钥进行加密的对称秘钥对信息m,并附带随机数保证唯一性。
[0085] e)发起方和接收方对n、m信息进行处理(方法如求和、异或等),生成对称密钥对,发起方用对称密钥对加密一个“随机数+时间标签”,进行应答。
[0086] f)接收方解密发起方发送的数据,并对随机数+1,接收方用对称密钥对加密“随机数+1”的信息以及时间标签。
[0087] (7)异常状态被动响应机制:系统检测到可能的其他异常行为,此种方式发现的异常行为是,通过自学习方式建立正常(无异常)通信模型,本方法通过单类支持向量机(one-class SVM)方法进行实现,在支持向量机中提取特定关键属性(按需求通过特征提取方法提取,如IP、端口、协议、工业应用层协议特征等)进行模型建立,对所有违反正常通信模型的行为进行报警。管理员对报警内容进行确认,并提供管理员重新进行身份认证、重新协商通信秘钥、访问控制规则更新三种操作。