基于特征行为分析的被动式工控设备指纹识别方法及装置制造方法及图纸

技术编号:21777538 阅读:21 留言:0更新日期:2019-08-03 23:18
本发明专利技术公开了一种基于特征行为分析的被动式工控设备指纹识别方法和装置。利用采集的特征指纹样本训练分类器模型,确定分类器的关键参数,为指纹识别提供分类器模型;利用训练好的分类器模型,对工控设备进行指纹识别,具体为对待测设备指纹是否属于原已知设备进行双分类,若结果为待测指纹属于原设备,则判断设备身份正常;若结果为待测指纹不属于原设备,则判断设备身份异常;基于这两种参数生成的特征指纹可有效地判断终端设备是否异常,系统是否遭受入侵,以及有效地检测虚假的响应消息或控制指令。该方法解决了现有的被动式入侵检测方法获取信息量少、不能有效检测入侵行为的技术问题,并且提出了工控系统终端设备指纹生成和识别方案。

Fingerprint Recognition Method and Device for Passive Industrial Control Equipment Based on Characteristic Behavior Analysis

【技术实现步骤摘要】
基于特征行为分析的被动式工控设备指纹识别方法及装置
本专利技术涉及工业控制系统设备指纹识别
,尤其涉及基于特征行为分析的被动式工控设备指纹识别方法及装置。
技术介绍
工业控制系统广泛应用于工业生产、电力、能源、水利以及交通运输等行业,其系统构成主要包括数据采集与监测系统(SCADA)、分布式控制系统(DCS)、可编程逻辑控制器(PLC)、远程终端(RTU)等,是实施实时数据采集、状态监测与过程控制的自动化系统。随着通讯技术与网络技术的发展,以及工业生产中对数据与指令的高速传输、高速处理等要求,工业控制系统中的通讯网络不再局限于现场总线网络,而是将以太网以及Wi-Fi、蓝牙等无线网络融入其中,构成了复杂的多标准、多协议的工业控制系统通讯网络,同时工业控制系统网络所面临的安全挑战也更为严峻。在工业控制系统中,数据、命令以数据包的形式在通讯网络中交换、传输,很容易遭受来自互联网的恶意攻击,例如数据恶意篡改、虚假数据注入等,一旦遭受这些恶意攻击,工业控制系统中的PLC、RTU等设备极大可能无法正常工作甚至导致整个系统崩溃;另一方面,这些设备也可能被恶意地替换为承载恶性木马或者病毒的设备,以便从工业控制系统中盗取信息甚至进行非法操作。通过指纹识别方法进行设备身份识别可以发现工控系统的脆弱性,可以将设备指纹识别技术与漏洞入侵检测技术结合起来以检测工控系统的网络是否异常及其所遭受的攻击类型。在设备指纹识别领域,由于工业控制网络设备在资源配置、传输网络和时间响应上与传统互联网存在很大差别,传统互联网上的大多数设备指纹识别方法,在工控网络中已不再适用。工控网络要求网络实时响应和持续运行,而且工控网络中的设备往往都是资源受限的,设备运行需要特定的软件配置和无干扰的运行环境,这使得大多数主动式的指纹识别可能干扰工控网络设备的正常运行,使系统不再满足这一要求而变得不稳定,而已有的被动式指纹识别技术所提供的信息却十分有限,很难达到精确识别设备的要求;往往被动式指纹识别还需要设备进行特殊的配置,例如启用TCP选项。因此,在工控网络中,现有的可能对系统产生干扰的主动式指纹识别技术,以及传统适用于互联网络中提供信息十分有限的被动式指纹识别技术,均很难满足准确识别工控系统设备以及保障系统安全的要求。
技术实现思路
本专利技术提供一种基于特征行为分析的被动式工控设备指纹识别方法及装置,用于解决传统的适用于互联网中主动式的和被动式的设备指纹识别技术不能有效地适用于工控网络设备的指纹识别以及有效地检测系统异常和网络入侵行为的技术问题,并且提出了工控网络设备指纹生成和识别方案,为工控网络的异常检测和攻击行为分析提供一种新的识别机制。为了实现上述任务,本专利技术采取如下的技术解决方案:基于特征行为分析的被动式工控设备指纹识别方法,包括以下步骤:S5:利用采集的指纹样本训练分类器模型,确定分类器的关键参数,为S6的指纹识别提供设备身份模型。这里分类器可采用朴素贝叶斯、K近邻、前馈神经网络、支持向量机、随机森林等,支持但不限于这几种分类器,其他能实现对设备进行指纹识别的分类器模型均在此范围之内;S6:利用S5训练好的设备身份模型,对工控系统中生成的设备指纹进行识别,具体为对待测设备指纹是否属于原已知设备进行双分类,若结果为待测指纹属于原设备,则判断设备身份正常;若结果为待测指纹不属于原设备,则判断设备身份异常。其中,设备指纹包含基于跨层响应时间或者物理操作时间两种特征参数生成的特征指纹,两者产生的方式和识别的原理不同,但都具体表现为一种时间域参数的概率密度函数,均可达到设备识别的效果。跨层响应时间具体指终端设备的网络传输层收到指令的确认消息与应用层回复指令的响应消息之间的时间间隔。该时间间隔的概率分布对于特定的设备类型和软件配置是唯一的,与指令的网络传输路径无关,因此可以作为特征进行工控网络设备指纹识别。物理操作时间具体指终端设备的网络传输层收到控制指令的确认消息与设备完成动作(如继电器闭合)这一事件的时间间隔。该时间间隔与设备的物理特性密切相关,因此也可以作为特征进行工控网络设备指纹识别。优选地,所述步骤S5之前还包括:S1:配置终端设备的事件上报或事件时间记录模块;其中,该配置为获取设备物理指纹提供必要的前提条件。对于不同的工控网络协议可以有不同的配置方式,但目的均在于获取终端的物理操作时间。对于Modbus协议可配置终端的事件时间戳记录模块,对于DNP3协议可配置终端的事件主动上报模块。S2:获取IP、SlaveID与终端设备的对应关系,以及控制寄存器地址与终端执行机构的对应关系。其中,IP、SlaveID作为通信过程中终端设备最基本的标识,也是设备指纹的训练标签。识别某个事件的设备身份是否正常,本质上即是识别某一事件是否来自具有特定IP以及特定SlaveID的响应设备。同一个设备可能控制着不同的执行机构(继电器、电磁阀等),而控制寄存器的地址与这些执行机构一一对应。所以,控制寄存器可进一步作为某一终端设备的某一执行机构的标识。优选地,所述步骤S5之前还包括:S3:监听工控系统网络的通讯信息;S4:对监听的信息进行内容解析,特征提取,设备指纹生成等操作。优选地,所述步骤S4具体包括:S401:对监听的信息进行内容解析;S402:对监听内容解析后的信息进行特征提取;S403:基于提取的特征生成设备指纹。优选地,所述步骤S401具体包括:基于工业控制系统网络通讯的特点,从通讯信息内容解析出源IP地址、目的IP地址、数据包的协议类型、包到达时刻的时间戳等信息,如果是工控网络协议包(ModbusTCP、DNP3),还需解析出协议内容。例如对于Modbus,还需要解析功能号、寄存器地址、响应状态等信息。优选地,所述步骤S402具体包括:从内容解析后的监听信息提取特征,即是提取跨层响应时间和物理操作时间两种特征。对于跨层响应时间,提取终端设备的网络传输层收到指令的确认消息的时间戳与应用层回复指令的响应消息的时间戳,计算两者的时间间隔。对于物理操作时间,提取控制中心发出的Modbus控制指令消息的时间戳与设备完成动作(如继电器闭合)这一事件消息的时间戳,计算两者的时间间隔。优选地,所述步骤S403具体包括:对步骤S402所提取的n个时间间隔序列生成概率密度分布直方图,该概率密度分布直方图含有k个区间,区间长度为l,每个区间的概率密度为mi,(i=1,2,……k),则生成的指纹为[m1,m2,…,mk]。其中,n为进行一次有效识别需要采集的样本数;n、k、l为系统固定的参数。优选地,所述步骤S5具体为:利用采集的指纹样本训练分类器模型,确定分类器的关键参数,为S6的指纹识别提供分类器模型。这里分类器可采用朴素贝叶斯、K近邻、前馈神经网络、支持向量机、随机森林等,支持但不限于这几种分类器,其他能实现对特征指纹识别的分类器模型均在此范围之内;优选地,所述步骤S6具体为:利用S5训练好的分类器,对工控系统中生成的设备指纹进行训练测试,具体为对待测设备指纹是否属于原已知设备进行双分类分析,若结果为待测指纹属于原设备,则判断设备身份正常;若结果为待测指纹不属于原设备,则判断设备身份异常。其中,设备指纹包含基于跨层响应时间或者物理操作时间两种特征参数生成的特征指纹,本文档来自技高网
...

【技术保护点】
1.基于特征行为分析的被动式工控设备指纹识别方法,其特征在于,包括以下步骤:S5:利用采集的特征指纹样本训练分类器模型,确定分类器的关键参数,为指纹识别提供设备身份模型;S6:利用S5训练好的设备身份模型,对工控设备进行指纹识别,具体为对待测设备指纹是否属于原已知设备进行双分类,若结果为待测指纹属于原设备,则判断设备身份正常;若结果为待测指纹不属于原设备,则判断设备身份异常;其中,设备指纹包含基于跨层响应时间或者物理操作时间两种特征参数生成的特征指纹:跨层响应时间具体指终端设备的网络传输层收到指令的确认消息与应用层回复指令的响应消息之间的时间间隔;物理操作时间具体指终端设备的网络传输层收到控制指令的确认消息与设备完成指令控制动作这一事件的时间间隔。

【技术特征摘要】
1.基于特征行为分析的被动式工控设备指纹识别方法,其特征在于,包括以下步骤:S5:利用采集的特征指纹样本训练分类器模型,确定分类器的关键参数,为指纹识别提供设备身份模型;S6:利用S5训练好的设备身份模型,对工控设备进行指纹识别,具体为对待测设备指纹是否属于原已知设备进行双分类,若结果为待测指纹属于原设备,则判断设备身份正常;若结果为待测指纹不属于原设备,则判断设备身份异常;其中,设备指纹包含基于跨层响应时间或者物理操作时间两种特征参数生成的特征指纹:跨层响应时间具体指终端设备的网络传输层收到指令的确认消息与应用层回复指令的响应消息之间的时间间隔;物理操作时间具体指终端设备的网络传输层收到控制指令的确认消息与设备完成指令控制动作这一事件的时间间隔。2.根据权利要求1所述的基于特征行为分析的被动式工控设备指纹识别方法,其特征在于,所述步骤S5之前还包括:S1:配置终端设备的事件上报或事件时间记录模块;S2:获取IP、SlaveID与终端设备的对应关系,以及控制寄存器地址与终端执行机构的对应关系。3.根据权利要求1所述的基于特征行为分析的被动式工控设备指纹识别方法,其特征在于,所述步骤S5之前还包括:S3:监听工控系统网络的通讯信息;S4:对监听的信息进行内容解析、特征提取、设备指纹生成。4.根据权利要求3所述的基于特征行为分析的被动式工控设备指纹识别方法,其特征在于,所述步骤S4具体包括:S401:对监听的信息进行内容解析;基于工业控制系统网络通讯的特点,从通讯信息内容解析出源IP地址、目的IP地址、数据包的协议类型、数据包到达时刻的时间戳,如果是工控网络协议包,还需解析出协议内容;S402:对监听内容解析后的信息进行特征提取;从监听内容解析后的信息中提取特征,即是提取跨层响应时间和物理操作时间两种特征;对于跨层响应时间,提取终端设备的网络传输层收到指令的确认消息的时间戳与应用层回复指令的响应消息的时间戳,计算两者的时间间隔;对于物理操作时间,提取控制中心发出的Modbus控制指令消息的时间戳与设备完成指令控制动作这一事件消息的时间戳,计算两者的时间间隔;S403:基于提取的特征生成设备指纹;对步骤S402所提取的n个时间间隔序列生成概率密度直方图,该概率密度直方图含有k个区间,区间长度为l,每个区间的概率密度为mi,i=1,2,……k,则生成的指纹为[m1,m2,…,mk],其中,n为进行一次有效识别需要采集的样本数;n、k、l为系统固定的参数。5.根据权利要求1所述的基于特征行为分析的被动式工控设备指纹识别方法,其特征在于,所述步骤S6之后还包括:S7:将设备指纹识别结果,即设备身份为正常或者异常的判断结果发送到控制中心,以便控制中心进一步作出决策。6.基于特征行为分析的被动式工控设备指纹识别装置,其特征在于,包括:分类器训练模块:利用采集...

【专利技术属性】
技术研发人员:沈超贾战培刘畅陈宇飞张萌刘烃管晓宏
申请(专利权)人:西安交通大学
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1