CN103716203B - 基于本体模型的网络化控制系统入侵检测方法及系统 - Google Patents
基于本体模型的网络化控制系统入侵检测方法及系统 Download PDFInfo
- Publication number
- CN103716203B CN103716203B CN201310712572.8A CN201310712572A CN103716203B CN 103716203 B CN103716203 B CN 103716203B CN 201310712572 A CN201310712572 A CN 201310712572A CN 103716203 B CN103716203 B CN 103716203B
- Authority
- CN
- China
- Prior art keywords
- node
- network
- message
- detection
- control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于本体模型的网络化控制系统入侵检测方法及系统。该方法构建网络化控制系统本体模型,基于该模型进行入侵检测,并权衡决策后得到最终检测结果。系统包括主节点,多个从节点,和负责消息传递的工业通信网络;主节点负责完成自身的主机活动审计数据的收集、所有网络报文的收集、主节点对应的控制闭环流的检测、控制对象检测、整个系统所有节点主机活动审计数据的检测、网络活动检测以及检测结果的协调;各从节点负责完成该节点对应控制闭环流的检测并将检测结果上传给主节点,收集该节点自身的主机活动审计数据并上传给主节点;本发明能够在资源受限的环境中实时、高效、全面地进行入侵检测,降低工业网络控制系统安全改造成本。
Description
技术领域
本发明涉及工业控制系统信息安全防御领域,更具体地,涉及一种针对工业控制系统网络化控制的入侵检测方法及系统。
背景技术
随着计算机技术、网络通信技术以及自动控制技术的迅速发展,网络化控制系统(Networked Control System,NCS)实现了宽广地域的管理、监视与控制,打破了传统自动化系统信息孤岛的僵局,是企业管控一体化的核心和关键,已被广泛应用于国家关键基础设施建设和工业控制领域。但是NCS网络开放的特性同时也使得其面临各种信息安全问题,例如2010年“超级工厂病毒”袭击了伊朗布什尔核电站,严重威胁到核反应堆的安全运营。
NCS系统具有以下特点:(1)一般运行在嵌入式环境中,资源受限;(2)其控制应用对实时性要求苛刻、需要长时间(5-10年)不间断连续工作(7天×24小时);(3)属于信息物理融合的系统,包括信息部分和物理控制对象两部分;(4)对于安全防护,NCS系统更强调可用性(IT系统则强调保密性);(5)NCS面向于工业应用,其整体实现需要考虑成本约束。此外,相较于IT系统,NCS系统所面临的入侵攻击也与IT系统不尽相同。
现有的入侵检测系统可以分为三类:(1)基于攻击特征的入侵检测(例如发明专利200910085069.8,201010265793.1),利用丰富的入侵攻击相关知识进行入侵检测;(2)基于模型的入侵检测(例如发明专利201010525511.7),绝大多数都是基于(流量/行为)统计模型,这是由于IT系统结构功能相对灵活多变、系统行为具有突发性随机性,因此不可能建立更细粒度的模型;(3)基于规范的入侵检测(例如发明专利200910001196.5)是针对IT系统中某类应用而设计的(例如基于IP网络的应用,基于Web-based的应用等)。但是,对于NCS系统而言,现有的基于攻击特征的检测所需要的丰富的攻击相关知识并不具备;基于规范的入侵检测大都是针对IT系统的应用而设计的,并不适合于NCS系统;并且NCS具有相对固定的结构和功能、相对有规律的系统行为,现有的基于(流量/行为)统计模型入侵检测不能很好的满足入侵检测需求。
期刊《微计算机信息》第21卷第7-3期的论文《分布式入侵检测技术在网络控制系统中的应用》提出了一种将分布式入侵检测技术运用到网络控制系统的具体方案。发明专利申请(201210008504.9)公开了“一种工业控制网络安全防护方法及系统”采用三主机结构和三层防护策略进行攻击检测及响应。发明专利申请(201010569843.5)公开了“一种用于保护过程控制系统中网络业务的统一威胁管理系统”采用基于规则的方法保护过程控制系统中的网络业务。上述文献及专利申请有的未能全面考虑NCS的运行约束(实时性、资源、可用性等),有的对系统检测数据源考虑不够全面,还有的未能考虑NCS系统主从式单网段的运行结构特点。此外,而且NCS入侵检测应该包括信息部分的检测和物理控制对象部分的检测,应尽量减少对NCS系统原本功能的影响。本体论是指领域内抽象的一组概念及概念间的关系,利用本体论构建NCS系统模型能够全面的综合考虑工业控制领域的各方面特点。
综上所述,传统的入侵检测方法因其技术原理和适用协议的差异,使得在NCS系统中并不能取得很好的检测效果,目前国内外尚未有一套完整地适合NCS的入侵检测方法及系统,发明者提出的基于本体论的网络化控制系统入侵检测方法及系统具有一定的创新性及较大的社会经济价值。
发明内容
本发明的目的是为了解决现有网络入侵检测方法用于主从式单网段网络化控制系统时的上述问题,提供一种基于本体模型的网络化控制系统入侵检测方法及系统,目的在于能够在资源受限的环境中实时、高效、全面地进行网络化控制系统入侵检测。
本发明提供了一种基于本体模型的网络化控制系统入侵检测方法,该网络化控制系统包括一个主节点、K个从节点以及一个工业通信网络,K为正整数,其特征在于,该方法包括初始配置过程以及在线检测过程;
所述初始配置过程包括:
步骤(a1)建立包括控制系统和控制对象的网络化控制系统本体模型,其中,控制系统包括控制网络和节点;控制网络包括网络结构、网络行为、网络调度和网络协议四个方面,节点包括任务和资源两个方面,任务包括任务行为及任务调度两种属性,资源包括存储空间占用、CPU占用和节点流量三种属性;控制对象包括物理被控系统中的功能、行为和结构变量,即FBS变量,以及在整个NCS控制环路中的控制闭环流两方面;
步骤(a2)依据具体的网络化控制系统规范,设计对象功能白名单和各节点的用户白名单;
步骤(a3)依据所述网络化控制系统本体模型,部署所有节点中用于监测主机活动的资源使用探测器和任务活动探测器,并将主节点网络接口设置为混杂模式以接收所有的网络报文;其中,各节点的资源使用探测器负责探测该节点的CPU使用率、存储空间使用率以及节点的流量;各节点的任务活动探测器负责收集该节点所有任务的异常情况以及任务间的切换;
所述在线检测过程为:
步骤(b1)各从节点通过网络接口接收报文,进行用户白名单过滤,然后进行基于控制应用的检测,将检测结果上报给主节点;同时收集该节点的审计数据,并上报给主节点;
步骤(b2)主节点通过网络接口收集网络中的所有报文,将接收的报文通过用户白名单进行过滤,阻止非法用户的数据进一步访问;
步骤(b3)主节点利用过滤后的数据报文,结合网络使用的工业通信协议规范进行基于网络结构、网络通信行为、网络协议特征和网络报文调度检测,如果检测出异常,则通过编码标识异常内容,保存检测结果;
步骤(b4)主节点对经过网络活动检测的报文进行分类,具体分为从节点上报的检测结果、从节点上报的节点审计数据、应用及网络管理数据;
步骤(b5)主节点通过其资源使用探测器和任务活动探测器实时收集主节点活动的审计数据,并结合资源使用模型和任务活动模型,对主节点审计数据以及所有从节点审计数据进行检测,如果检测出有异常,则通过编码标识异常内容,保存检测结果;
步骤(b6)主节点进行对象功能白名单检测,如果是非法数据,阻止进一步访问,并转入步骤(b1),否则为合法访问,转入步骤(b7);
步骤(b7)主节点进行基于控制应用的检测,检测闭环控制流和物理控制对象是否异常,如果检测出有异常,则通过编码标识异常内容,保存检测结果;
步骤(b8)主节点收集四种检测结果,包括各从节点、网络活动检测结果、主机活动检测结果和控制应用检测结果。若网络活动检测为正常,则认为系统没有受到入侵攻击,转为步骤(b1);若网络活动检测到异常,则将主节点中的主机活动检测结果、控制应用检测结果和各从节点中的检测结果进行统一编码、然后报警,再转到步骤(b1)。
本发明提供的一种网络化控制系统的入侵检测系统,其特征在于,该系统包括一个主节点,K个从节点以及连接主节点和所有从节点的一个工业通信网络,其中K为正整数;
主节点负责完成自身的主机活动审计数据的收集、所有网络报文的收集、主节点对应的控制闭环流的检测、控制对象检测、整个系统所有节点主机活动审计数据的检测、整个系统中的网络活动检测以及检测结果的协调;
各从节点负责完成该节点对应控制闭环流的检测并将检测结果上传给主节点,负责收集该节点自身的主机活动审计数据并上传给主节点;
工业通信网络负责各节点之间的消息传递。
作为上述技术方案的改进,所述主节点包括网络接口、主节点用户白名单、网络检测引擎、报文分类器、审计数据采集单元、主机检测引擎、对象功能白名单、控制应用检测引擎、协调控制单元;
网络接口负责收发报文,设置为混杂模式,即接收工业通信网络中的所有报文,接收到的报文传递给主节点用户白名单模块;
主节点用户白名单负责检查所接收报文的源IP或者源节点号,将不在主节点用户白名单中的节点所发送的报文丢弃,将其他正常的报文传递给网络检测引擎;
网络检测引擎负责依据工业网络通信规范对所接收的报文进行网络结构检测、网络通信行为检测、网络协议特征检测以及网络报文调度检测,将检测结果传递给协调控制单元,并将报文传递个报文分类器;
报文分类器负责将所接收的报文按照其负载数据类型进行分类,具体的,将从节点上报的审计数据传递给主机检测引擎,将从节点的检测结果传递给协调控制单元,将应用及网络管理数据传递给对象功能白名单;
审计数据采集单元负责收集主节点的审计数据,并传递给主机检测引擎;
主机检测引擎负责收集主节点审计数据,并与所有从节点审计数据一同依据系统资源使用模型和控制任务模型进行检测,将检测结果传递给协调控制单元,并将获取系统运行阶段,传递给对象功能白名单;
对象功能白名单负责进行对接收的应用及网络管理数据进行<系统运行阶段、角色、对象、功能>四元组的权限检查,将不符合权限的报文丢弃,将其他正常报文传递给控制应用检测引擎;
控制应用检测引擎负责依据闭环控制流模型和控制对象模型检测控制对象FBS数据以及主节点对应的控制闭环流数据上下限以及截止期,将检测结果传递给协调控制单元;
协调控制单元负责综合决策所有检测结果,若有攻击则生成检测报告。
所述各从节点中均包括网络接口,用户白名单,控制应用检测引擎,审计数据采集单元,上报单元;
网络接口负责对应从节点报文收发,接收到的报文传递给用户白名单模块;
从节点用户白名单负责检查所接收报文的源IP或者源节点号,将不在用户白名单中的节点所发送的报文丢弃,将其他正常的报文传递给控制应用检测引擎;
控制应用检测引擎首先从报文中提取应用数据并记录时间戳,然后依据闭环控制流模型对相应从节点对应的控制闭环流数据上下限以及截止期进行检测,检测结果传递给上报单元;
审计数据采集单元负责收集相应从节点的审计数据,并传递给上报单元;
上报单元负责将该节点的控制应用检测结果以及该节点的审计数据通过网络上报给主节点。
本发明克服了现有入侵检测技术直接用于网络化控制系统时存在的问题,能够在资源受限的环境中实时、高效、全面地进行网络化控制系统入侵检测,具体说明如下:
一、该网络化控制系统入侵检测方法结合系统本体论的思想,利用网络化控制系统本体模型,通过多视角(网络数据、主机数据以及应用数据)的检测数据源,综合考虑网络化控制系统的各个方面进行检测,并权衡决策各方面检测结果得到最终检测输出结果,使得该入侵检测方法能够对网络化控制系统入侵攻击进行全面系统的检测。
二、该网络化控制系统入侵检测方法考虑到网络化控制系统功能有限、网络结构相对固定、通信行为较为简单等特点,采用基于模型的入侵检测机制,能够在保持极低误报率的同时提高检测能力;无论是对已知攻击还是未知攻击,该方法都能够进行很好的检测;能够有效避免传统入侵检测系统由于攻击特征库升级所造成的网络化控制系统宕机。
三、该网络化控制系统入侵检测方法考虑了网络化控制系统的信息世界与物理世界两个方面。针对物理控制对象,在检测中考虑了控制对象的相关模型(包括闭环控制流模型和功能行为结构模型),综合采用了N-Gram方法、统计学方法以及特征匹配多种检测机制,相较于传统的入侵检测方法,该方法能够有针对性的对网络化控制系统入侵攻击高效地进行检测。
四、该网络化控制系统入侵检测方法设计了双重白名单过滤机制,可以有效的抵御非法访问,提高检测效率和系统实时性能,减小检测过程中资源消耗。用户白名单能够有效过滤掉网络接口接收到的非法用户的报文;对象功能白名单通过检查系统运行阶段、角色、操作对象、操作功能来进行报文内容的权限检测,可以有效的去除正常用户进行非授权操作。
五、该网络化控制系统入侵检测系统通过软件的方法实现,并结合NCS自身的主从分布式结构进行部署,从节点资源严重受限,只负责进行实时数据收据和该节点的控制应用检测;主节点资源相对(从节点)丰富,负责收集网络数据,进行整个系统的网络活动检测、主机审计数据检测以及自身控制应用检测。对所有的节点,实现中可将入侵检测任务与NCS任务一并考虑、统一部署,保障网络化控制系统的实时性。因此该方法及相应的系统能够很好的适应NCS资源受限的运行环境,其实现成本亦大大降低,具有较强的工业实用性。
附图说明
图1是网络化控制系统入侵检测方法示意图;
图2是网络化控制系统本体模型图;
图3是对象功能白名单结构示意图;
图4是网络化控制系统入侵检测系统主节点结构图;
图5是网络化控制系统入侵检测系统整体结构图。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步说明。在此需要说明的是,对于这些实施方式的说明用于帮助理解本发明,但并不构成对本发明的限定。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
如图1所示,在需要检测入侵的网络化控制系统中建立一种网络化控制系统的入侵检测方法。该网络化控制系统包括一个主节点、K个从节点(K为正整数)以及一个工业通信网络,其通信宏周期为T毫秒。入侵检测方法采用分布式结构,在网络化控制系统的主节点上部署检测主节点,其他网络化控制系统从节点为检测从节点。具体步骤如下:
步骤(1):依据本体论思想,针对网络化控制系统特点,结合具体的网络化控制系统情形,建立系统本体模型。NCS系统本体模型包括控制系统和控制对象两部分。控制系统包括控制网络和节点;控制网络考虑四种属性:网络结构、网络行为、网络调度、网络协议,节点包括任务和资源两个方面,任务考虑任务行为及任务调度两种属性,资源考虑存储空间占用,CPU占用和节点流量三种属性。控制对象考虑物理被控系统中的功能、行为以及结构(Function,Behavior,Structure,FBS)变量和在整个NCS控制环路中的控制闭环流两部分。
如图2所示,网络化控制系统本体模型由多个子模型构成,具体过程为:
(1.1)工业通信网络方面,建立网络结构模型、网络通信行为模型、网络报文调度模型以及网络协议特征。
网络结构模型表征网络化控制系统中各节点与网络的连接关系,通过(K+1)维网络结构向量表示(例如像向量中的元素为1表示相应节点与网络联通,0表示不连通)。
网络通信行为模型用来描述通信过程中节点通信状态的迁移,根据具体的工业通信协议规范,对通信协议栈的状态采用N-Gram方法进行网络通信行为建模。具体的根据通信协议不同,列举出正常通信情况下所有的状态组合,状态组合为N个连续的状态(N一般取2、3或4)组成,所有正常的状态组合组成网络通信行为模型。
网络报文调度模型即网络中通信报文所需遵循的顺序,工业通信网络中的报文按照通信宏周期T循环往复。对于具体的应用,是由具体通信协议和具体应用确定的,因此宏周期内报文类型的流转顺序依据工业通信协议规范和应用规范确定,将这种顺序通过上述N-Gram方法进行建模得到网络报文调度模型。
网络协议特征包括源地址、目的地址、源节点号、目的节点号、协议类型、报文类型以及负载数据长度。
(1.2)节点方面,建立任务活动模型和资源使用模型。
节点包括主节点和所有从节点。
资源使用模型通过系统应用规范估算出各节点中CPU使用率、内存使用率以及节点的流量(其中以一个宏周期为计算单元,取平均值)。
任务活动模型包括单个任务的行为和任务间的调度。单个任务的行为包括任务状态(正常/异常)和任务输入输出行为,其中任务的输入输出通过输入输出数据值及对应时刻表征。由于控制系统的任务数量有限且任务间的切换有规律,同样通过N-Gram方法建立任务间的调度模型。
(1.3)控制对象方面,建立闭环控制流模型和控制对象模型。
闭环控制流模型依据控制应用规范,确定控制闭环流中应用数据的限值(即上限、下限值)以及时序(即数据的截止期)。控制对象模型可以通过将表征物理系统控制对象的变量划分为功能(F)变量、行为(B)变量以及结构(S)变量,这三种变量组合成FBS向量得到。通过聚类分析方法,首先对预先获取的FBS向量数据集进行离线训练,得到正常类库用于后续检测。
步骤(2):依据具体的网络化控制系统规范,设计访问控制白名单,即对象功能白名单和各节点的用户白名单。
节点的用户白名单来规定能够给该节点发送报文的节点对应的节点号。对象功能白名单通过系统运行阶段、角色、操作对象以及操作功能来保证用户对系统中的对象进行的操作是适时、适当的,其中角色为特定的用户群(比如传感器、执行器、控制器)、操作对象一般为控制应用数据(例如给定值、被控量的监测值、控制指令等)、操作功能(包括创建、读、修改、删除等)。
依据网络化控制系统通信及操作需求,创建访问控制白名单的具体过程为:
(2.1)首先,创建各节点所需的用户白名单。对于主节点:将所有需要向网络中发送报文的节点的节点号创建为一个用户列表得到主节点用户白名单。对于从节点:将需要向该从节点发送报文的所有节点的节点号创建为一个用户列表得到该从节点的用户白名单。
(2.2)然后,创建对象功能白名单。对象功能白名单如图3所示,依据网络化控制系统应用需求规定在系统各运行阶段、各种角色能够对操作对象所进行操作功能。
步骤(3):依据系统本体论模型,部署所有节点中用于监测主机活动的资源使用探测器和任务活动探测器,并将主节点网络接口设置为混杂模式以接收所有的网络报文。
各节点的资源使用探测器负责探测该节点的CPU使用率、存储空间使用率以及节点的流量(以一个宏周期T为计算单元,取平均值)。各节点的任务活动探测器负责收集该节点所有任务的异常情况(包括输入输出以及运行状态)以及任务间的切换。
步骤(4):各从节点通过网络接口接收报文,进行用户白名单过滤,然后进行基于控制应用的检测,将检测结果上报给主节点;同时收集节点的审计数据,并上报给主节点。
步骤(4)的具体过程为:
(4.1)各从节点利用该节点的用户白名单对从网络接口接收到的报文进行过滤,阻止非法用户的数据。
(4.2)从过滤后的网络数据报文中提取该节点与控制闭环流模型对应的控制应用数据及其时间戳,并与闭环控制流模型进行比较,检测出是否有异常,得到检测结果,上报给主节点。
(4.3)利用该节点的资源使用探测器和任务活动探测器收集该节点的审计数据(包括CPU使用率、内存使用率以及流量,各任务状态、输入输出行为以及任务间的切换)并上报给主节点。
步骤(5):主节点通过网络接口收集网络中的所有报文,将接收的报文通过用户白名单进行过滤,阻止非法用户的数据进一步访问。
步骤(6):主节点网络活动检测。利用过滤后的数据报文,结合网络使用的工业通信协议规范进行基于网络结构、网络通信行为、网络协议特征和网络报文调度检测,如果检测出异常,则通过编码标识异常内容,保存检测结果。
检查网络结构:使用心跳报文探测网络结构,组成网络结构向量,并于应用规范规定的正常网络结构向量进行比较,检查是否相等。
检查网络通信行为:监测协议栈通信状态,并于与历史状态组合成一个状态组合,然后结合网络通信行为模型检查该状态组合是否正常(起始的N-1个状态只存储,不参与检测)。
检查网络协议特征:根据具体工业通信协议规范,提取网络报文头部中的特定字段,特定字段一般包括:源地址、目的地址、源节点号、目的节点号、协议类型、报文类型以及负载数据长度。将实时提取的报文字段与对应工业通信协议规范规定的特征进行比较检查是否正常。
检查网络报文调度:对网络中的每个报文提取其报文类型值,结合前面的报文类型,检测其是否符合网络报文调度模型。
步骤(7)主节点对经过网络活动检测的报文进行分类,具体分为:从节点上报的检测结果、从节点上报的节点审计数据、应用及网络管理数据。
步骤(8):主节点主机活动检测。通过主节点资源使用探测器和任务活动探测器实时收集主节点活动的审计数据,并结合资源使用模型和任务活动模型,对主节点审计数据以及所有从节点审计数据进行检测,如果检测出有异常,则通过编码标识异常内容,保存检测结果。
检查节点资源使用:通过资源使用探测器,实时计算CPU使用率、存储空间使用率以及节点的流量在一个宏周期内的平均值,并与资源使用模型进行比较,设定比较阈值(一般取±5%~±15%)。差值在阈值内为正常,否则为资源使用异常。
检查节点任务活动:任务活动探测器探测单个任务状态和输入输出行为以及任务间的切换顺序,结合节点任务活动模型,检查任务活动探测器探测的实时数据是否正常。
步骤(9):主节点进行对象功能白名单检测。具体为:从应用及网络管理数据报文头部中提取报文对应的用户,根据用户确定角色,从负载数据中提取操作的对象以及操作的功能,从主机活动数据中提取系统运行阶段,由此得到报文对应的四元组<系统运行阶段,角色,操作对象,操作功能>,依据对象功能白名单,检查此四元组是否属于对象功能白名单,若不属于,则为非法数据,阻止进一步访问,并转入步骤(4),否则为合法访问,转入步骤(10)。
步骤(10):主节点进行基于控制应用的检测,检测闭环控制流和物理控制对象是否异常,如果检测出有异常,则通过编码标识异常内容,保存检测结果。
检测主节点对应的闭环控制流的过程与(4.2)一样。
进行物理控制对象检测是从应用数据报文的负载数据中提取控制对象的实时FBS数据,组成FBS检测向量,采用聚类方法,利用(1.3)得到的正常类库进行分析,检查控制对象是否正常。
步骤(11):协调处理检测结果。收集四种检测结果:各从节点、网络活动检测结果、主机活动检测结果、控制应用检测结果。首先若网络活动检测为正常,则认为系统没有受到入侵攻击,转为步骤(4);若网络活动检测到异常,则将主节点中的主机活动检测结果、控制应用检测结果和各从节点中的检测结果进行统一编码、然后报警,再转到步骤(4)。
上述步骤(1)-步骤(3)通过离线手动配置实现,步骤(4)在所有从节点上在线运行,步骤(5)-步骤(11)在主节点上在线运行。
如图4所示,本发明基于本体论的网络化控制系统入侵检测系统,该系统用于实现上述入侵检测方法,图5更为具体的给出了主节点完成该过程的结构图。
本发明基于本体论的网络化控制系统入侵检测系统包括主节点1,从节点2.1、2.2、...、2.K以及连接主节点和所有从节点的一个工业通信网络,其中K为正整数(K由被检测的控制系统从节点个数确定)表示检测系统从节点个数。
主节点1负责完成自身的主机活动审计数据的收集、所有网络报文的收集、主节点对应的控制闭环流的检测、控制对象检测、整个系统所有节点主机活动审计数据的检测、整个系统中的网络活动检测以及检测结果的协调。
从节点2.1、2.2、...、2.K负责完成该节点对应控制闭环流的检测并将检测结果上传给主节点,负责收集该节点自身的主机活动审计数据并上传给主节点。
工业通信网络负责各节点之间的消息传递。
主节点1包括网络接口1.1、主节点用户白名单1.2、网络检测引擎1.3、报文分类器1.4、审计数据采集单元1.5、主机检测引擎1.6、对象功能白名单1.7、控制应用检测引擎1.8、协调控制单元1.9。
网络接口1.1负责收发报文,设置为混杂模式,即接收工业通信网络中的所有报文,接收到的报文传递给主节点用户白名单1.2。
主节点用户白名单1.2负责检查所接收报文的源IP(或者源节点号),将不在用户白名单中的节点所发送的报文丢弃,将其他正常的报文传递给网络检测引擎1.3。
网络检测引擎1.3负责依据工业网络通信规范对所接收的报文进行网络结构检测、网络通信行为检测、网络协议特征检测以及网络报文调度检测,将检测结果传递给协调控制单元1.9,并将报文传递个报文分类器1.4。
报文分类器1.4负责将所接收的报文按照其负载数据类型进行分类,具体的,将从节点上报的审计数据传递给主机检测引擎1.5,将从节点的检测结果传递给协调控制单元1.9,将应用及网络管理数据传递给对象功能白名单1.7。
审计数据采集单元1.5负责收集主节点的审计数据,并传递给主机检测引擎1.6。
主机检测引擎1.6负责收集主节点审计数据,并与所有从节点审计数据一同依据系统资源使用模型和控制任务模型进行检测,将检测结果传递给协调控制单元1.9,并将获取系统运行阶段,传递给对象功能白名单1.7。
对象功能白名单1.7负责进行对接收的应用及网络管理数据进行<系统运行阶段、角色、对象、功能>四元组的权限检查,将不符合权限的报文丢弃,将其他正常报文传递给控制应用检测引擎1.8。
控制应用检测引擎1.8负责依据闭环控制流模型和控制对象模型检测控制对象FBS数据以及主节点对应的控制闭环流数据上下限以及截止期,将检测结果传递给协调控制单元1.9。
协调控制单元1.9负责综合决策所有检测结果,若有攻击则生成检测报告。
从节点2.1、2.2、...、2.K中均包括网络接口3,从节点用户白名单4,控制应用检测引擎5,审计数据采集单元6,上报单元7。
网络接口3负责对应从节点报文收发,接收到的报文传递个用户白名单模块4。
从节点用户白名单4负责检查所接收报文的源IP(或者源节点号),将不在用户白名单中的节点所发送的报文丢弃,将其他正常的报文传递给控制应用检测引擎5。
控制应用检测引擎5首先从报文中提取应用数据并记录时间戳。然后依据闭环控制流模型对相应从节点对应的控制闭环流数据上下限以及截止期进行检测,检测结果传递给上报单元7。
审计数据采集单元6负责收集相应从节点的审计数据,并传递给上报单元7。
上报单元7负责将该节点的控制应用检测结果以及该节点的审计数据通过网络上报给主节点。
在上述详细的具体实施方式中,尽管以具有一定程度特性的优选形式对本发明进行了描述,但是,在不背离其宗旨和范围的前提下实施本发明的各种明显不同实施例,应理解为,在不偏离权利要求的范围的情况下,发明不限于具体实施例。
Claims (6)
1.一种网络化控制系统的入侵检测方法,该网络化控制系统包括一个主节点、K个从节点以及一个工业通信网络,K为正整数,其特征在于,该方法包括初始配置过程以及在线检测过程;
所述初始配置过程包括:
步骤(a1)建立包括控制系统和控制对象的网络化控制系统本体模型,其中,控制系统包括控制网络和节点;控制网络包括网络结构、网络行为、网络调度和网络协议四个方面,节点包括任务和资源两个方面,任务包括任务行为及任务调度两种属性,资源包括存储空间占用、CPU占用和节点流量三种属性;控制对象包括物理被控系统中的功能、行为和结构变量,即FBS变量,以及在整个NCS控制环路中的控制闭环流两方面;
步骤(a2)依据具体的网络化控制系统规范,设计对象功能白名单和各节点的用户白名单;
步骤(a3)依据所述网络化控制系统本体模型,部署所有节点中用于监测主机活动的资源使用探测器和任务活动探测器,并将主节点网络接口设置为混杂模式以接收所有的网络报文;其中,各节点的资源使用探测器负责探测该节点的CPU使用率、存储空间使用率以及节点的流量;各节点的任务活动探测器负责收集该节点所有任务的异常情况以及任务间的切换;
所述在线检测过程为:
步骤(b1)各从节点通过网络接口接收报文,进行用户白名单过滤,然后进行基于控制应用的检测,将检测结果上报给主节点;同时收集节点的审计数据,并上报给主节点;
步骤(b2)主节点通过网络接口收集网络中的所有报文,将接收的报文通过用户白名单进行过滤,阻止非法用户的数据进一步访问;
步骤(b3)主节点利用过滤后的数据报文,结合网络使用的工业通信协议规范进行基于网络结构、网络通信行为、网络协议特征和网络报文调度检测,如果检测出异常,则通过编码标识异常内容,保存检测结果;
步骤(b4)主节点对经过网络活动检测的报文进行分类,具体分为从节点上报的检测结果、从节点上报的节点审计数据、应用及网络管理数据;
步骤(b5)主节点通过其资源使用探测器和任务活动探测器实时收集主节点活动的审计数据,并结合资源使用模型和任务活动模型,对主节点审计数据以及所有从节点审计数据进行检测,如果检测出有异常,则通过编码标识异常内容,保存检测结果;
步骤(b6)主节点进行对象功能白名单检测,如果是非法数据,阻止进一步访问,并转入步骤(b1);否则为合法访问,转入步骤(b7);
步骤(b7)主节点进行基于控制应用的检测,检测闭环控制流和物理控制对象是否异常,如果检测出有异常,则通过编码标识异常内容,保存检测结果;
步骤(b8)主节点收集四种检测结果,包括各从节点、网络活动检测结果、主机活动检测结果和控制应用检测结果,首先若网络活动检测为正常,则认为系统没有受到入侵攻击,转为步骤(b1);若网络活动检测到异常,则将主节点中的主机活动检测结果、控制应用检测结果和各从节点中的检测结果进行统一编码、然后报警,再转到步骤(b1)。
2.根据权利要求1所述的网络化控制系统的入侵检测方法,其特征在于,步骤(a1)具体实现过程为:
(1.1)工业通信网络方面,建立网络结构模型、网络通信行为模型、网络报文调度模型以及网络协议特征;
网络结构模型表征网络化控制系统中各节点与网络的连接关系,通过(K+1)维网络结构向量表示;
网络通信行为模型用来描述通信过程中节点通信状态的迁移,根据具体的工业通信协议规范,对通信协议栈的状态采用N-Gram方法进行网络通信行为建模;
网络报文调度模型即网络中通信报文所需遵循的顺序,工业通信网络中的报文按照通信宏周期T循环往复;
网络协议特征包括源地址、目的地址、源节点号、目的节点号、协议类型、报文类型以及负载数据长度;
(1.2)节点方面,建立任务活动模型和资源使用模型;
节点包括主节点和所有从节点;资源使用模型通过系统应用规范估算出各节点中CPU使用率、内存使用率以及节点的流量;
任务活动模型包括单个任务的行为和任务间的调度,单个任务的行为包括任务状态和任务输入输出行为,其中任务的输入输出通过输入输出数据值及对应时刻表征;
(1.3)控制对象方面,建立闭环控制流模型和控制对象模型;
闭环控制流模型依据控制应用规范,确定控制闭环流中应用数据的限值即上限、下限值以及时序即数据的截止期;控制对象模型通过将表征物理系统控制对象的变量划分为功能F变量、行为B变量以及结构S变量,这三种变量组合成FBS向量得到。
3.根据权利要求1所述的网络化控制系统的入侵检测方法,其特征在于,步骤(a2)中,首先,创建各节点所需的用户白名单:对于主节点:将所有需要向网络中发送报文的节点的节点号创建为一个用户列表得到主节点用户白名单;对于从节点:将需要向该从节点发送报文的所有节点的节点号创建为一个用户列表得到该从节点的用户白名单;然后,创建对象功能白名单:依据网络化控制系统应用需求规定在系统各运行阶段、各种角色能够对操作对象所进行操作功能。
4.根据权利要求1所述的网络化控制系统的入侵检测方法,其特征在于,步骤(b3)中,所述基于网络结构、网络通信行为、网络协议特征和网络报文调度检测具体为:
网络结构检测:使用心跳报文探测网络结构,组成网络结构向量,并与应用规范规定的正常网络结构向量进行比较,检查是否相等;
网络通信行为检测:监测协议栈通信状态,并与历史状态组合成一个状态组合,然后结合网络通信行为模型检查该状态组合是否正常,起始的N-1个状态只存储,不检测;
网络协议特征检测:根据具体工业通信协议规范,提取网络报文头部中的特定字段,特定字段一般包括:源地址、目的地址、源节点号、目的节点号、协议类型、报文类型以及负载数据长度;将实时提取的报文字段与对应工业通信协议规范规定的特征进行比较检查是否正常;
网络报文调度检测:对网络中的每个报文提取其报文类型值,结合前面的报文类型,检测其是否符合网络报文调度模型。
5.根据权利要求1所述的网络化控制系统的入侵检测方法,其特征在于,步骤(b1)的具体过程为:
(4.1)各从节点利用该节点的用户白名单对从网络接口接收到的报文进行过滤,阻止非法用户的数据;
(4.2)从过滤后的网络数据报文中提取该节点与控制闭环流模型对应的控制应用数据及其时间戳,并与闭环控制流模型进行比较,检测出是否有异常,得到检测结果,上报给主节点;
(4.3)利用该节点的资源使用探测器和任务活动探测器收集该节点的审计数据,包括CPU使用率、内存使用率以及流量,各任务状态、输入输出行为以及任务间的切换,并上报给主节点。
6.一种网络化控制系统的入侵检测系统,其特征在于,该系统包括一个主节点,K个从节点以及连接主节点和所有从节点的一个工业通信网络,其中K为正整数;
主节点负责完成自身的主机活动审计数据的收集、所有网络报文的收集、主节点对应的控制闭环流的检测、控制对象检测、整个系统所有节点主机活动审计数据的检测、整个系统中的网络活动检测以及检测结果的协调;
各从节点负责完成该节点对应控制闭环流的检测并将检测结果上传给主节点,负责收集该节点自身的主机活动审计数据并上传给主节点;
工业通信网络负责各节点之间的消息传递;
所述主节点包括网络接口、主节点用户白名单、网络检测引擎、报文分类器、审计数据采集单元、主机检测引擎、对象功能白名单、控制应用检测引擎、协调控制单元;
网络接口负责收发报文,设置为混杂模式,即接收工业通信网络中的所有报文,接收到的报文传递给主节点用户白名单模块;
主节点用户白名单负责检查所接收报文的源IP或者源节点号,将不在主节点用户白名单中的节点所发送的报文丢弃,将其他正常的报文传递给网络检测引擎;
网络检测引擎负责依据工业网络通信规范对所接收的报文进行网络结构检测、网络通信行为检测、网络协议特征检测以及网络报文调度检测,将检测结果传递给协调控制单元,并将报文传递给报文分类器;
报文分类器负责将所接收的报文按照其负载数据类型进行分类,具体的,将从节点上报的审计数据传递给主机检测引擎,将从节点的检测结果传递给协调控制单元,将应用及网络管理数据传递给对象功能白名单;
审计数据采集单元负责收集主节点的审计数据,并传递给主机检测引擎;
主机检测引擎负责收集主节点审计数据,并与所有从节点审计数据一同依据系统资源使用模型和控制任务模型进行检测,将检测结果传递给协调控制单元,并将获取系统运行阶段,传递给对象功能白名单;
对象功能白名单负责进行对接收的应用及网络管理数据进行<系统运行阶段、角色、对象、功能>四元组的权限检查,将不符合权限的报文丢弃,将其他正常报文传递给控制应用检测引擎;
控制应用检测引擎负责依据闭环控制流模型和控制对象模型检测控制对象FBS数据以及主节点对应的控制闭环流数据上下限以及截止期,将检测结果传递给协调控制单元;
协调控制单元负责综合决策所有检测结果,若有攻击则生成检测报告;
所述各从节点中均包括网络接口,用户白名单,控制应用检测引擎,审计数据采集单元,上报单元;
网络接口负责对应从节点报文收发,接收到的报文传递给用户白名单模块;
从节点用户白名单负责检查所接收报文的源IP或者源节点号,将不在用户白名单中的节点所发送的报文丢弃,将其他正常的报文传递给控制应用检测引擎;
控制应用检测引擎首先从报文中提取应用数据并记录时间戳,然后依据闭环控制流模型对相应从节点对应的控制闭环流数据上下限以及截止期进行检测,检测结果传递给上报单元;
审计数据采集单元负责收集相应从节点的审计数据,并传递给上报单元;
上报单元负责将该节点的控制应用检测结果以及该节点的审计数据通过网络上报给主节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310712572.8A CN103716203B (zh) | 2013-12-21 | 2013-12-21 | 基于本体模型的网络化控制系统入侵检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310712572.8A CN103716203B (zh) | 2013-12-21 | 2013-12-21 | 基于本体模型的网络化控制系统入侵检测方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103716203A CN103716203A (zh) | 2014-04-09 |
CN103716203B true CN103716203B (zh) | 2017-02-08 |
Family
ID=50408808
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310712572.8A Active CN103716203B (zh) | 2013-12-21 | 2013-12-21 | 基于本体模型的网络化控制系统入侵检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103716203B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6418217B2 (ja) * | 2015-12-18 | 2018-11-07 | トヨタ自動車株式会社 | 通信システムで実行される情報集約方法 |
CN105721498A (zh) * | 2016-04-07 | 2016-06-29 | 周文奇 | 一种工控网络安全预警系统 |
WO2017221373A1 (ja) * | 2016-06-23 | 2017-12-28 | 三菱電機株式会社 | 侵入検知装置および侵入検知プログラム |
CN107037802B (zh) * | 2016-10-28 | 2018-01-26 | 华中科技大学 | 一种过程控制系统信息安全防护的异常检测方法 |
CN108156043A (zh) * | 2018-02-24 | 2018-06-12 | 浙江远望通信技术有限公司 | 一种基于白名单和约束集流控的视频监控安全接入方法 |
CN109766906B (zh) * | 2018-11-16 | 2021-02-23 | 中国人民解放军海军大连舰艇学院 | 基于事件图的海战场情况数据融合方法与系统 |
CN109918900B (zh) * | 2019-01-28 | 2022-08-16 | 锦图计算技术(深圳)有限公司 | 传感器攻击检测方法、装置、设备及计算机可读存储介质 |
CN114615051A (zh) * | 2022-03-09 | 2022-06-10 | 黄河水利职业技术学院 | 一种网络安全检测方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102438026A (zh) * | 2012-01-12 | 2012-05-02 | 冶金自动化研究设计院 | 工业控制网络安全防护方法及系统 |
CN102546638A (zh) * | 2012-01-12 | 2012-07-04 | 冶金自动化研究设计院 | 一种基于场景的混合入侵检测方法及系统 |
EP2525548A1 (en) * | 2011-05-16 | 2012-11-21 | General Electric Company | Systems, methods, and apparatus for network intrusion detection based on monitoring network traffic |
-
2013
- 2013-12-21 CN CN201310712572.8A patent/CN103716203B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2525548A1 (en) * | 2011-05-16 | 2012-11-21 | General Electric Company | Systems, methods, and apparatus for network intrusion detection based on monitoring network traffic |
CN102438026A (zh) * | 2012-01-12 | 2012-05-02 | 冶金自动化研究设计院 | 工业控制网络安全防护方法及系统 |
CN102546638A (zh) * | 2012-01-12 | 2012-07-04 | 冶金自动化研究设计院 | 一种基于场景的混合入侵检测方法及系统 |
Non-Patent Citations (1)
Title |
---|
面向工业人机界面的信息安全策略设计及实现;李科 等;《计算机工程与设计》;20130816(第8期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN103716203A (zh) | 2014-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103716203B (zh) | 基于本体模型的网络化控制系统入侵检测方法及系统 | |
Liu et al. | Review on cyber-physical systems | |
US20220269258A1 (en) | Method for anomaly classification of industrial control system communication network | |
CN103580960B (zh) | 一种基于机器学习的在线管网异常侦测系统 | |
CN104616205B (zh) | 一种基于分布式日志分析的电力系统运行状态监视方法 | |
CN107035602A (zh) | 一种水轮机状态监测及故障诊断系统 | |
CN104580222A (zh) | 基于信息熵的DDoS攻击分布式检测与响应系统及方法 | |
Zhu et al. | A knowledge graph based construction method for Digital Twin Network | |
CN106850558A (zh) | 基于季节模型时间序列的智能电表状态异常检测方法 | |
CN105512730A (zh) | 基于bim模型的数据中心运维系统 | |
Hu et al. | Complex event processing in RFID middleware: A three layer perspective | |
Samdarshi et al. | A triple layer intrusion detection system for SCADA security of electric utility | |
Manickam et al. | A novel self-evolving intelligent multiagent framework for power system control and protection | |
CN107733738A (zh) | 一种计算机网络云管理系统 | |
CN112288566B (zh) | 基于深度神经网络的跨链交易异常检测和预警方法及系统 | |
Rieke et al. | Monitoring security compliance of critical processes | |
Wang et al. | Stealthy attack detection method based on Multi-feature long short-term memory prediction model | |
CN102045186B (zh) | 一种事件分析方法及系统 | |
Lin et al. | Ontologies and decision support for failure mitigation in intelligent water distribution networks | |
Zhao et al. | On-board artificial intelligence based on edge computing in optical transport networks | |
CN103226755A (zh) | 能源管理装置及其系统 | |
CN109634808A (zh) | 一种基于关联分析的链式监控事件根因分析方法 | |
Qin et al. | Research on the analytic factor neuron model based on cloud generator and its application in oil&gas SCADA security defense | |
Wan et al. | Towards a unified framework for cyber-physical systems (cps) | |
CN104009861A (zh) | 基于监控信息的运维服务管理系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |