CN115834738B - 一种工控业务行为识别方法、装置、电子设备及可读介质 - Google Patents
一种工控业务行为识别方法、装置、电子设备及可读介质 Download PDFInfo
- Publication number
- CN115834738B CN115834738B CN202310024303.6A CN202310024303A CN115834738B CN 115834738 B CN115834738 B CN 115834738B CN 202310024303 A CN202310024303 A CN 202310024303A CN 115834738 B CN115834738 B CN 115834738B
- Authority
- CN
- China
- Prior art keywords
- load
- data packet
- industrial control
- target
- packet set
- 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
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种工控业务行为识别方法、装置、电子设备及可读介质,包括:获取流量数据,从流量数据中提取第一数据包集合;分析其负载字节数,并确定多个目标负载字节数及其对应的第二数据包集合;依次遍历多个目标负载字节数,针对每个目标负载字节数,确定个数大于阈值的第二数据包集合的通信IP对类型,根据通信IP对类型从当前第二数据包集合中提取负载内容集合,对提取到的负载内容集合进行相似性校验,若校验为相似,则将目标负载字节数对应的负载内容标记为工控业务行为。本方法通过负载字节数特征对不同的业务行为进行区分,解决了现有技术中需要先识别解码所有协议才能进行业务操作分析所存在的难度大、效率低下的缺陷。
Description
技术领域
本发明涉及工控业务行为识别技术领域,具体涉及一种工控业务行为识别方法、装置、电子设备及可读介质。
背景技术
在现有工控业务系统中对不同业务操作的获取方式是通过获取不同设备的系统日志、采集工控设备网络流量,从而基于获取到的日志或流量数据对工控协议进行识别解析;确定协议,进而根据识别得到的协议将收到的数据转换为业务操作日志,进而能够对日志中的内容进行审计。具体的,工控系统需要接入发送操作命令的设备,才能获取设备的系统日志,同时需要对流量中的常见工控协议(如Modbus/Tcp、S7、IEC-104、DNP3、Ethernet/IP等)进行识别,然后将识别出的不同协议分别解码,通过协议规范文档或对协议的人工分析梳理理解协议的结构、各字段含义、传输内容等信息,将各字段内容组合并将网络数据转换为不同的业务行为,再将同种业务行为归纳合并,才能最终梳理区分出流量中不同的业务行为。
但是现有工控系统中,通常需要接入各种不同类别的设备,其中设备的类型、协议均不可知;因此,如果采用现有的业务审计识别方法,识别系统日志需要接入发送操作命令的设备获取系统日志或对通信协议进行识别解码并且理解协议结构和字段含义,需要有知识积累或花费大量时间去学习协议知识后将识别结果转化,存在效率低下不满足工控系统管理效率需求的问题。并且在实际的工控环境流量中存在大量设备厂商自主定义的私有协议,难以获取协议规范文档,想要实现识别协议解码字段并理解协议结构内容需要人工学习,耗时很长难度极大,相比对公开协议的学习理解效率更加低下甚至无法实现。
发明内容
本发明的目的在于克服现有需要先解析协议再进行业务识别的工控业务审计识别方法所存在的协议解析难度大、效率低、进而导致工控系统识别管理效率低下的问题,提供一种工控业务行为识别方法、装置、电子设备及可读存储介质,本方法无需解析协议,即可根据负载字节特征进行工控业务的识别。
为了实现上述发明目的,本发明提供了以下技术方案:
一种工控业务行为识别方法,包括:
获取流量数据,从所述流量数据中提取第一数据包集合;对所述第一数据包集合中每个数据包对应的负载字节数进行统计分析,基于统计分析结果确定多个目标负载字节数,并确定每个目标负载字节数对应的第二数据包集合;
依次遍历多个所述目标负载字节数,针对每个所述目标负载字节数,判断其对应的第二数据包集合的数据包个数是否超过数据包阈值,若否,则进行下一个目标负载字节数的判断;
若是,确定所述第二数据包集合对应的通信IP对类型,根据所述通信IP对类型从当前第二数据包集合中提取负载内容集合,对提取到的负载内容集合进行相似性校验,若校验为相似,则将所述目标负载字节数对应的负载内容标记为一种工控业务行为。
根据一种具体的实施方式,上述工控业务行为识别方法中,所述通信IP对类型包括:固定IP对通信与多IP对通信。
根据一种具体的实施方式,上述工控业务行为识别方法中,当所述第二数据包集合对应的通信IP对类型为固定IP对通信时,所述根据所述通信IP对类型从当前第二数据包集合中提取负载内容集合,包括:
基于预设采样间隔对当前第二数据包集合进行采样,提取采样数据包的负载内容,得到第一负载内容集合;
其中,所述预设采样间隔与所述第二数据包集合的数据包个数相关联:当第二数据包集合的数据包个数越多时,所述预设采样间隔越大。
根据一种具体的实施方式,上述工控业务行为识别方法中,所述对提取到的负载内容集合进行相似性校验,包括:
计算提取到的第一负载内容集合中每个所述负载内容的固定负载字节数,判断计算得到的固定负载字节数是否完全相同,若否,则不相似;若是,则计算所述固定负载字节数相对每个所述负载内容的字节占比,并判断计算得到的字节占比是否均大于第一相似度阈值,若是,则校验为相似;若否,则不相似。
根据一种具体的实施方式,上述工控业务行为识别方法中,所述第一相似度阈值取值范围为[0.9,1)。
根据一种具体的实施方式,上述工控业务行为识别方法中,当所述第二数据包集合对应的通信IP对类型为多IP对通信时,所述根据所述通信IP对类型从当前第二数据包集合中提取负载内容集合,包括:
从多IP对选取预设个数的目标IP对;基于n个所述目标IP对从当前第二数据包集合中提取n个所述目标IP对对应的第三数据包集合;
基于第一采样规则对所述第三数据包集合进行采样,提取采样数据包的负载内容,得到第二负载内容集合。
根据一种具体的实施方式,上述工控业务行为识别方法中,所述对提取到的负载内容集合进行相似性校验,包括:
计算所述第二负载内容集合中每个所述负载内容是否完全相同,若否,则基于第二采样规则对所述第三数据包集合进行采样,提取采样数据包的负载内容,得到第三负载内容集合;
计算提取到的第三负载内容集合中每个所述负载内容的固定负载字节数,判断计算得到的固定负载字节数是否完全相同,若否,则不相似;若是,则计算所述固定负载字节数相对每个所述负载内容的字节占比,并判断计算得到的字节占比是否均大于第二相似度阈值,若是,则校验为相似;若否,则不相似;
其中,基于第二采样规则提取的采样数据包数量为基于第一采样规则提取的采样数据包数量的预设倍数。
根据一种具体的实施方式,上述工控业务行为识别方法中,所述第二相似度阈值的取值范围为[0.7,0.9)。
根据一种具体的实施方式,上述工控业务行为识别方法中,所述获取流量数据,包括:采用旁路镜像的方式从工控网络中采集所述流量数据。
根据一种具体的实施方式,上述工控业务行为识别方法中,所述第一数据包集合为负载字节数特征大于零的数据包;
所述对所述第一数据包集合中每个数据包对应的负载字节数进行统计分析,包括:
遍历所述第一数据包集合,提取每个数据包对应的负载内容,并计算所述负载内容的负载字节数;统计不同负载字节数在所述第一数据包集合中出现的频次,并计算频次占比;基于计算得到的频次占比提取多个所述目标负载字节数;每个目标负载字节数对应的数据包构成的集合为所述第二数据包集合。
根据一种具体的实施方式,上述工控业务行为识别方法中,所述方法还包括:在标记工控业务行为之后的关联步骤,
所述关联步骤包括:将标记出的工控业务行为与对应的源IP、目标IP、目标端口相关联。
根据一种具体的实施方式,上述工控业务行为识别方法中,所述方法还包括:在所述关联步骤之后的统计分析步骤,
所述统计分析步骤,包括:统计所述源IP、目标IP、目标端口下对应的多个工控业务行为,并进行多个所述工控业务行为的使用率排序。
本发明的另一方面,提供一种工控业务行为识别装置,包括:
获取模块,用于获取流量数据,从所述流量数据中提取第一数据包集合;
第一计算模块,用于对所述第一数据包集合中每个数据包对应的负载字节数进行统计分析,基于统计分析结果确定多个目标负载字节数,并确定每个目标负载字节数对应的第二数据包集合;
第二计算模块,用于依次遍历多个所述目标负载字节数,针对每个所述目标负载字节数,判断其对应的第二数据包集合的数据包个数是否超过数据包阈值,若否,则进行下一个目标负载字节数的判断;若是,确定所述第二数据包集合对应的通信IP对类型,根据所述通信IP对类型从当前第二数据包集合中提取负载内容集合,对提取到的负载内容集合进行相似性校验,若校验为相似,则将所述目标负载字节数对应的负载内容标记为一种工控业务行为。
根据一种具体的实施方式,上述工控业务行为识别装置中,所述工控业务行为识别装置还包括:关联模块,所述关联模块用于根据所述第二计算模块的标记结果,将标记出的工控业务行为与对应的源IP、目标IP、目标端口相关联。
根据一种具体的实施方式,上述工控业务行为识别装置中,所述工控业务行为识别装置还包括:统计分析模块,所述统计分析模块用于根据所述关联模块的关联结果,对所述源IP、目标IP、目标端口下对应的多个工控业务行为进行统计,并进行多个所述工控业务行为的使用率排序。
本发明的另一方面,提供一种电子设备,包括处理器、网络接口和存储器,所述处理器、所述网络接口和所述存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行上述工控业务行为识别方法。
本发明的另一方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有程序指令,所述程序指令被至少一个处理器执行时,用于实现上述工控业务行为识别方法。
与现有技术相比,本发明的有益效果:
本发明实施例所提供的工控业务行为识别方法,针对工控环境中流量较为纯净,传输内容格式固定的特性,通过采集工控环境的生产流量,并从流量中提取数据包集合,通过梳理计算数据包集合,提取目标负载字节特征集合,进而对目标负载字节特征对应的第二数据包集合进行负载内容值的相似性分析,通过判断负载内容值是否具有共通特性以确定该负载字节特征传输的内容代表一种业务行为,据此,识别得到工控业务行为;本发明无需进行协议识别即可根据负载内容进行业务操作分析的缺陷,节省了学习理解未知协议的大量时间,对一些无法通过资料学习后分析的罕见私有协议也可以进行业务的区分。
附图说明
图1为本发明示例性实施例的工控业务行为识别方法流程图;
图2为本发明示例性实施例的工控业务行为识别装置结构示意图;
图3为本发明示例性实施例的电子设备硬件架构示意图。
具体实施方式
下面结合试验例及具体实施方式对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本发明内容所实现的技术均属于本发明的范围。
实施例1
图1示出了本发明示例性实施例的工控业务行为识别方法,包括:
S1、获取流量数据,从所述流量数据中提取第一数据包集合;
S2、对所述第一数据包集合对应的负载字节数进行统计分析,基于统计分析结果确定多个目标负载字节数,并确定每个目标负载字节数对应的第二数据包集合;
S3、依次遍历多个所述目标负载字节数,针对每个所述目标负载字节数,确定其对应的第二数据包集合,判断其对应的第二数据包集合的数据包个数是否超过数据包阈值,若否,则进行下一个目标负载字节数的判断;
若是,确定所述第二数据包集合对应的通信IP对类型,根据所述通信IP对类型从当前第二数据包集合中提取负载内容集合,对提取到的负载内容集合进行相似性校验,若校验为相似,则将所述目标负载字节数对应的负载内容标记为一种工控业务行为。
本发明实施例所提供的工控业务行为识别方法,针对工控环境中流量较为纯净,传输内容格式固定的特性通过负载字节数特征对不同的业务行为进行区分,解决了现有技术中需要事先识别解码所有协议并理解协议结构和字段含义和需要接入操作设备采集设备系统日志后才能进行业务操作分析的缺陷,节省了学习理解未知协议的大量时间,对一些无法通过资料学习后分析的罕见私有协议也可以进行业务的区分,此外对工控流量进行业务操作识别和协议聚类后产生的结果可以辅助识别流量中的未知协议内容,拓宽了产生数据的可用性。
实施例2
在一种可能的实现方式中,上述工控业务行为识别方法中,所述第一数据包集合为负载字节数不为零的数据包,所述S1具体包括:使用网络流量探针旁路镜像采集工控环境交换机上的流量,筛选传输层负载字节数不为零的第一数据包集合作为流量样本基础,从样本数据包中提取源ip、源端口、目标ip、目标端口、负载字节数、负载内容信息作为计算数据基础。
本实施例中,在采集流量数据时,通过旁路镜像的方式采集网络流量,无需接入工控系统网络中,保证了工控网络的稳定性和安全性。
在一种可能的实现方式中,上述工控业务行为识别方法中,所述S2具体包括:遍历所述第一数据包集合,获取每个第一数据包集合对应的多个负载字节序列(即负载内容),确定每个负载字节序列的字数,统计所述第一数据集合中的数据包数总个数,并分别计算不同负载字节数的负载字节序列的出现次数以及该出现次数占数据包总数的占比值;按占比值从大到小顺序排列各负载字节数特征以及对应的占比值,取占比值之和大于等于数据包总数量80%时对应负载字节数作为业务行为观测样本。例如:所述第一数据包集合包括10个数据包,10个数据包对应的10个负载字节特征序列的字节数分别为:340、400、512、512、512、1024、1024、1440、1440、1440;此时,计算不同字节数的占比,其中,340的占比为0.1,400的占比为0.1,512的占比为0.3,1024的占比为0.2,1440的占比为0.3;此时,将512、1024、1440作为目标负载字节数;在S3中基于字节数512、1024、1440提取其对应的第二数据包集合。
在一种可能的实现方式中,上述工控业务行为识别方法中,所述S3中,数据包阈值为3。可以理解的是,在流量数据传输过程中,通常会在相邻的数据包之间呈现较高的相似性或关联性,当第二数据包集合的数据包个数小于3个时,相应的数据包难以形成一定的行为规律,不具备分析价值,因此,本实施例中,通过数据包阈值过滤掉不具备分析价值的第二数据包集合,进一步减少计算量,提高识别分析的效率。
在一种可能的实现方式中,上述工控业务行为识别方法中,所述通信IP对类型包括:固定IP对通信与多IP对通信。所述S3具体包括:首先按一定顺序(可以按频次占比的大小)依次取步骤2中的目标负载字节数进行分析。首先记录被分析负载字节数的通信IP对类型,若该负载字节数的通信是在多个IP对之间进行通信则标记该负载类型为多IP对通信;若该负载只在一个固定IP对之间通信则标记为固定IP对通信。这里是指对一个具体的负载字节长度数据包中两端IP是固定不变还是变化的多组IP进行判断,固定IP对和多IP对的负载内容相似度要求不同所以需要首先判断IP类型是固定还是随机。例一个集合中的数据包负载字节长度都是512字节,而每个数据包都是10.10.10.1与10.10.10.2通信,即固定IP对通信,说明以长度512字节为特征的数据包是独立存在的;若为10.10.10.1与10.10.10.2 -10.10.10.10进行通信,即多IP对通信。可以理解的是,在工控网络环境中,不同IP对通信类型对应的干扰因素不同,因此,本实施例中,首先确定数据包的IP对通信类型,根据类型执行不同的数据包内容分析,进而根据通信类型实现工控业务的准确识别。
在一种可能的实现方式中,上述工控业务行为识别方法中,当所述第二数据包集合对应的通信IP对类型为固定IP对通信时,所述根据所述通信IP对类型从当前第二数据包集合中提取负载内容集合,包括:
基于预设采样间隔对当前第二数据包集合进行采样,提取采样数据包的负载内容,得到第一负载内容集合;
其中,所述预设采样间隔与所述第二数据包集合的数据包个数相关联:当第二数据包集合的数据包个数越多时,所述预设采样间隔越大。
可以理解的是,在流量数据传输过程中,通常会在相邻的数据包之间呈现较高的相似性或关联性,因此,本实施例中,基于第二数据包集合的数据包个数确定预设采样间隔,当第二数据包集合的数据包个数越多时,相应的预设采样间隔则随之增大,据此,通过大间隔采样,确保采样数据包具备典型性,提高采样数据包的分析价值。
具体的,当负载字节数为固定IP对通信时,判断第二数据包集合的总数据包数是否大于等于11个,若是,取每百分之十序号数的数据包的负载内容,即:序号10、序号20…序号100数据包(序号结果四舍五入取整)的负载字节内容;
当数据包数小于11时,取序号为1、序号最大和序号为0.5*最大序号的数据包负载字节内容;当十个数据包负载内容值不固定,分别取每个IP对中序号为1的数据包、序号第百分之二十五分位数据包(序号结果四舍五入取整)、序号第百分之五十分位数据包(序号结果四舍五入取整)、序号第百分之七十五分位数据包(序号结果四舍五入取整)、序号最大数据包的负载内容值进行分析,计算负载内容中同一偏移位置内容值在每个数据包中都固定的字节数(以偏移数N为例,依次计算采样数据包A的第N位与其余数据包第N位的负载字节内容是否相同,计算相同负载字节长度的采样数据包对应的负载内容中有多少个字节是顺序和负载值是一样的。若采样数据包的固定负载内容值是完全相同,且固定负载内容值字节数占负载字节总数的占比大于第一相似度阈值时,则判断该负载字节数特征为一种工控业务行为并进行下一个负载字节数特征的判断,不满足条件则直接进行下一个负载字节数特征判断。
在一种可能的实现方式中,当所述第二数据包集合对应的通信IP对类型为多IP对通信时,所述根据所述通信IP对类型从当前第二数据包集合中提取负载内容集合,包括:
从多IP对选取预设个数的目标IP对;基于n个所述目标IP对从当前第二数据包集合中提取n个所述目标IP对对应的第三数据包集合;
基于第一采样规则对所述第三数据包集合进行采样,提取采样数据包的负载内容,得到第二负载内容集合。
所述对提取到的负载内容集合进行相似性校验,包括:
计算所述第二负载内容集合中每个所述负载内容是否完全相同,若否,则基于第二采样规则对所述第三数据包集合进行采样,提取采样数据包的负载内容,得到第三负载内容集合;
计算提取到的第三负载内容集合中每个所述负载内容的固定负载字节数,判断计算得到的固定负载字节数是否完全相同,若否,则不相似;若是,则计算所述固定负载字节数相对每个所述负载内容的字节占比,并判断计算得到的字节占比是否均大于第二相似度阈值,若是,则校验为相似;若否,则不相似;
其中,基于第二采样规则提取的采样数据包数量为基于第一采样规则提取的采样数据包数量的预设倍数。
具体的,当负载字节数为多IP对通信时,从多IP对中取预设个数(例如:十个)的目标IP对;并基于第一采样规则依次取预设个数个目标IP对第一个数据包内的负载内容值进行分析,比较十个数据包内负载内容值是否相同;当十个采样数据包中的负载内容值都完全固定且负载内容值完全相同时判断该负载字节数特征为一种工控业务行为;不满足时,则以第二采样规则进行采样,其中,基于第二采样规则采样得到的数据包个数是基于第一采样规则采样得到的数据包数量的五倍。例如,提取十个IP对中每个IP对的五个采样数据包;判断每个IP对中的固定负载内容值是否完全相同,且固定负载内容值字节数占负载字节总数百分比大于第二相似度阈值,则判断该负载字节数特征为一种工控业务行为并进行下一个负载字节数特征的判断,不满足条件则直接进行下一个负载字节数特征判断。
在一种可能的实现方式中,上述第一相似度阈值取值范围为[0.9,1);上述第二相似度阈值取值范围为[0.7,0.9)。
具体的,以本方法所面向的工控网络环境为用于管理集团下各类电厂环境的工控网络为试验目标;从风电、水电、火电中任选三个电厂一区30min流量进行混合测试,取9个数据包数量最大的负载字节特征数据包并随机抽取11个包的负载字节内容进行对比分析,发现在相同偏移位置负载内容相同的字节数量与字节总量的关系如下:固定IP对116099个数据包相似度91%;固定IP对24690个数据包相似度97%;固定IP对40112个数据包相似度99%;固定IP对3234个数据包相似度56%;非固定IP对512693个数据包相似度91%;非固定IP对36799个数据包相似度86%;非固定IP对4311个数据包相似度73%;非固定IP对7183个数据包相似度93%;非固定IP对12570个数据包相似度73%。据此,根据随机测试结果,设定与固定IP对通信与多IP对通信相对应的相似度阈值。
可以理解的是,对于固定IP对通信而言,相应的IP对并未与其他IP对的通信共同分析,干扰因素较少,进而在进行识别时,理论上需要较高相似度(应大于多IP对通信对应的相似度阈值),多IP对通信时,其数据包相似度干扰因素较多,所以可以降低负载内容相似度阈值的要求;因此,本实施例中,通过结合理论分析与实际工业环境测试结果,设定与通信类型相匹配的相似度阈值取值范围,从而实现工控业务的准确识别。
在一种可能的实现方式中,上述工控业务识别方法中,还包括:S4、统计分析步骤,具体的,所述S4包括:
S41、将标记出的工控业务行为与对应的源IP、目标IP、目标端口相关联。
S42、统计所述源IP、目标IP、目标端口下对应的多个工控业务行为,并进行多个所述工控业务行为的使用率排序。
具体的,将标记出的工控业务行为关联到对应的源IP-目标IP:目标端口下,计算具体IP对下各负载字节数特征的占比值并按从大到小顺序排列,表示某个源IP-目标IP:目标端口对下的业务行为和使用量排序。
本实施例中,通过将业务行为关联到具体IP对下,并对具体的IP对进行进行统计分析,从而对某两端通信时进行的工控业务操作类型进行准确统计。
实施例3
如图2所示,本发明实施例的另一方面,还提供一种工控业务行为识别装置,包括:
获取模块,用于获取流量数据,从所述流量数据中提取第一数据包集合;
第一计算模块,用于对所述第一数据包集合对应的负载字节数进行统计分析,基于统计分析结果确定多个目标负载字节数;
第二计算模块,用于依次遍历多个所述目标负载字节数,针对每个所述目标负载字节数,判断其对应的第二数据包集合的数据包个数是否超过数据包阈值,若否,则进行下一个目标负载字节数的判断;若是,确定所述第二数据包集合对应的通信IP对类型,根据所述通信IP对类型从当前第二数据包集合中提取负载内容集合,对提取到的负载内容集合进行相似性校验,若校验为相似,则将所述目标负载字节数对应的负载内容标记为一种工控业务行为。
在一种可能的实现方式中,上述工控业务行为识别装置还包括:关联模块,所述关联模块用于根据所述第二计算模块的标记结果,将标记出的工控业务行为与对应的源IP、目标IP、目标端口相关联。
在一种可能的实现方式中,上述工控业务行为识别装置还包括:统计分析模块,所述统计分析模块用于根据所述关联模块的关联结果,对所述源IP、目标IP、目标端口下对应的多个工控业务行为进行统计,并进行多个所述工控业务行为的使用率排序。
在一种可能的实现方式中,上述工控业务行为识别装置中,所述通信IP对类型包括:固定IP对通信与多IP对通信;
当第二计算模块当前判断的第二数据包集合对应的通信IP对类型为固定IP对通信时,所述第二计算模块被配置为:基于预设采样间隔对当前第二数据包集合进行采样,提取采样数据包的负载内容,得到第一负载内容集合;
其中,所述预设采样间隔与所述第二数据包集合的数据包个数相关联:当第二数据包集合的数据包个数越多时,所述预设采样间隔越大;并计算提取到的第一负载内容集合中每个所述负载内容的固定负载字节数,判断计算得到的固定负载字节数是否完全相同,若否,则不相似;若是,则计算所述固定负载字节数相对每个所述负载内容的字节占比,并判断计算得到的字节占比是否均大于第一相似度阈值,若是,则校验为相似;若否,则不相似。
当第二计算模块当前判断的第二数据包集合对应的通信IP对类型为固定IP对通信时,所述第二计算模块被配置为:从多IP对选取预设个数的目标IP对;基于n个所述目标IP对从当前第二数据包集合中提取n个所述目标IP对对应的第三数据包集合;基于第一采样规则对所述第三数据包集合进行采样,提取采样数据包的负载内容,得到第二负载内容集合;进而计算所述第二负载内容集合中每个所述负载内容是否完全相同,若否,则基于第二采样规则对所述第三数据包集合进行采样,提取采样数据包的负载内容,得到第三负载内容集合;计算提取到的第三负载内容集合中每个所述负载内容的固定负载字节数,判断计算得到的固定负载字节数是否完全相同,若否,则不相似;若是,则计算所述固定负载字节数相对每个所述负载内容的字节占比,并判断计算得到的字节占比是否均大于第二相似度阈值,若是,则校验为相似;若否,则不相似;
其中,基于第二采样规则提取的采样数据包数量为基于第一采样规则提取的采样数据包数量的预设倍数(例如:5倍)。
在一种可能的实现方式中,上述工控业务行为识别装置中,所述第一相似度阈值取值范围为[0.9,1);所述第二相似度阈值的取值范围为[0.7,0.9)。
在一种可能的实现方式中,上述工控业务行为识别装置中,所述获取模块被配置为:采用旁路镜像的方式从工控网络中采集所述流量数据。
所述第一数据包集合为负载字节数特征大于零的数据包;
所述第一计算模块被配置为:遍历所述第一数据包集合,提取每个数据包对应的负载内容,并计算所述负载内容的负载字节数;统计不同负载字节数在所述第一数据包集合中出现的频次,并计算频次占比;基于计算得到的频次占比提取多个所述目标负载字节数。
实施例4
本发明的另一方面,如图3所示,还提供一种电子设备,该电子设备包括处理器、网络接口和存储器,所述处理器、所述网络接口和所述存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行上述工控业务行为识别方法。
本发明的另一方面,还提供一种计算机存储介质,所述计算机存储介质中存储有程序指令,所述程序指令被至少一个处理器执行时,用于实现上述工控业务行为识别方法。
在本发明的实施例中,处理器可以是一种集成电路芯片,具有信号的处理能力。处理器可以是通用处理器、数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。处理器读取存储介质中的信息,结合其硬件完成上述方法的步骤。
存储介质可以是存储器,例如可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。
其中,非易失性存储器可以是只读存储器(Read-Only Memory,简称ROM)、可编程只读存储器(Programmable ROM,简称PROM)、可擦除可编程只读存储器(Erasable PROM,简称EPROM)、电可擦除可编程只读存储器(Electrically EPROM,简称EEPROM)或闪存。
易失性存储器可以是随机存取存储器(Random Access Memory,简称RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,简称SRAM)、动态随机存取存储器(Dynamic RAM,简称DRAM)、同步动态随机存取存储器(Synchronous DRAM,简称SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data RateSDRAM,简称DDRSDRAM)、增强型同步动态随机存取存储器(EnhancedSDRAM,简称ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,简称SLDRAM)和直接内存总线随机存取存储器(DirectRambus RAM,简称DRRAM)。
本发明实施例描述的存储介质旨在包括但不限于这些和任意其它适合类型的存储器。
应该理解到,本发明所揭露的系统,可通过其它的方式实现。例如所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,模块之间的通信连接可以是通过一些接口,服务器或单元的间接耦合或通信连接,可以是电性或其它的形式。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种工控业务行为识别方法,其特征在于,包括:
获取流量数据,从所述流量数据中提取第一数据包集合;对所述第一数据包集合中每个数据包对应的负载字节数进行统计分析,基于统计分析结果确定多个目标负载字节数,并确定每个目标负载字节数对应的第二数据包集合;
依次遍历多个所述目标负载字节数,针对每个所述目标负载字节数,判断其对应的第二数据包集合的数据包个数是否超过数据包阈值,若否,则进行下一个目标负载字节数的判断;
若是,确定所述第二数据包集合对应的通信IP对类型,根据所述通信IP对类型从当前第二数据包集合中提取负载内容集合,对提取到的负载内容集合进行相似性校验,若校验为相似,则将所述目标负载字节数对应的负载内容标记为一种工控业务行为;
所述第一数据包集合为负载字节数特征大于零的数据包;
所述对所述第一数据包集合中每个数据包对应的负载字节数进行统计分析,包括:
遍历所述第一数据包集合,提取每个数据包对应的负载内容,并计算所述负载内容的负载字节数;统计不同负载字节数在所述第一数据包集合中出现的频次,并计算频次占比;基于计算得到的频次占比提取多个所述目标负载字节数;每个目标负载字节数对应的数据包构成的集合为所述第二数据包集合。
2.根据权利要求1所述的工控业务行为识别方法,其特征在于,所述通信IP对类型包括:固定IP对通信与多IP对通信。
3.根据权利要求2所述的工控业务行为识别方法,其特征在于,当所述第二数据包集合对应的通信IP对类型为固定IP对通信时,所述根据所述通信IP对类型从当前第二数据包集合中提取负载内容集合,包括:
基于预设采样间隔对当前第二数据包集合进行采样,提取采样数据包的负载内容,得到第一负载内容集合;
其中,所述预设采样间隔与所述第二数据包集合的数据包个数相关联:当第二数据包集合的数据包个数越多时,所述预设采样间隔越大。
4.根据权利要求3所述的工控业务行为识别方法,其特征在于,所述对提取到的负载内容集合进行相似性校验,包括:
计算提取到的第一负载内容集合中每个所述负载内容的固定负载字节数,判断计算得到的固定负载字节数是否完全相同,若否,则不相似;若是,则计算所述固定负载字节数相对每个所述负载内容的字节占比,并判断计算得到的字节占比是否均大于第一相似度阈值,若是,则校验为相似;若否,则不相似。
5.根据权利要求4所述的工控业务行为识别方法,其特征在于,所述第一相似度阈值取值范围为[0.9,1)。
6.根据权利要求2所述的工控业务行为识别方法,其特征在于,当所述第二数据包集合对应的通信IP对类型为多IP对通信时,所述根据所述通信IP对类型从当前第二数据包集合中提取负载内容集合,包括:
从多IP对选取预设个数的目标IP对;基于n个所述目标IP对从当前第二数据包集合中提取n个所述目标IP对对应的第三数据包集合;
基于第一采样规则对所述第三数据包集合进行采样,提取采样数据包的负载内容,得到第二负载内容集合。
7.根据权利要求6所述的工控业务行为识别方法,其特征在于,所述对提取到的负载内容集合进行相似性校验,包括:
计算所述第二负载内容集合中每个所述负载内容是否完全相同,若否,则基于第二采样规则对所述第三数据包集合进行采样,提取采样数据包的负载内容,得到第三负载内容集合;
计算提取到的第三负载内容集合中每个所述负载内容的固定负载字节数,判断计算得到的固定负载字节数是否完全相同,若否,则不相似;若是,则计算所述固定负载字节数相对每个所述负载内容的字节占比,并判断计算得到的字节占比是否均大于第二相似度阈值,若是,则校验为相似;若否,则不相似;
其中,基于第二采样规则提取的采样数据包数量为基于第一采样规则提取的采样数据包数量的预设倍数。
8.根据权利要求7所述的工控业务行为识别方法,其特征在于,所述第二相似度阈值的取值范围为[0.7,0.9)。
9.根据权利要求1所述的工控业务行为识别方法,其特征在于,所述获取流量数据,包括:采用旁路镜像的方式从工控网络中采集所述流量数据。
10.根据权利要求1-9任一所述的工控业务行为识别方法,其特征在于,所述方法还包括:在标记工控业务行为之后的关联步骤,
所述关联步骤包括:将标记出的工控业务行为与对应的源IP、目标IP、目标端口相关联。
11.根据权利要求10所述的工控业务行为识别方法,其特征在于,所述方法还包括:在所述关联步骤之后的统计分析步骤,
所述统计分析步骤,包括:统计所述源IP、目标IP、目标端口下对应的多个工控业务行为,并进行多个所述工控业务行为的使用率排序。
12.一种工控业务行为识别装置,其特征在于,包括:
获取模块,用于获取流量数据,从所述流量数据中提取第一数据包集合;
第一计算模块,用于对所述第一数据包集合中每个数据包对应的负载字节数进行统计分析,基于统计分析结果确定多个目标负载字节数,并确定每个目标负载字节数对应的第二数据包集合;所述第一数据包集合为负载字节数特征大于零的数据包;所述对所述第一数据包集合中每个数据包对应的负载字节数进行统计分析,包括:
遍历所述第一数据包集合,提取每个数据包对应的负载内容,并计算所述负载内容的负载字节数;统计不同负载字节数在所述第一数据包集合中出现的频次,并计算频次占比;基于计算得到的频次占比提取多个所述目标负载字节数;每个目标负载字节数对应的数据包构成的集合为所述第二数据包集合;
第二计算模块,用于依次遍历多个所述目标负载字节数,针对每个所述目标负载字节数,判断其对应的第二数据包集合的数据包个数是否超过数据包阈值,若否,则进行下一个目标负载字节数的判断;若是,确定所述第二数据包集合对应的通信IP对类型,根据所述通信IP对类型从当前第二数据包集合中提取负载内容集合,对提取到的负载内容集合进行相似性校验,若校验为相似,则将所述目标负载字节数对应的负载内容标记为一种工控业务行为。
13.根据权利要求12所述的工控业务行为识别装置,其特征在于,所述工控业务行为识别装置还包括:关联模块,所述关联模块用于根据所述第二计算模块的标记结果,将标记出的工控业务行为与对应的源IP、目标IP、目标端口相关联。
14.根据权利要求13所述的工控业务行为识别装置,其特征在于,所述工控业务行为识别装置还包括:统计分析模块,所述统计分析模块用于根据所述关联模块的关联结果,对所述源IP、目标IP、目标端口下对应的多个工控业务行为进行统计,并进行多个所述工控业务行为的使用率排序。
15.一种电子设备,其特征在于,包括处理器、网络接口和存储器,所述处理器、所述网络接口和所述存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1~11任一项所述的工控业务行为识别方法。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有程序指令,所述程序指令被至少一个处理器执行时,用于实现如权利要求1~11任一项所述的工控业务行为识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310024303.6A CN115834738B (zh) | 2023-01-09 | 2023-01-09 | 一种工控业务行为识别方法、装置、电子设备及可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310024303.6A CN115834738B (zh) | 2023-01-09 | 2023-01-09 | 一种工控业务行为识别方法、装置、电子设备及可读介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115834738A CN115834738A (zh) | 2023-03-21 |
CN115834738B true CN115834738B (zh) | 2023-04-25 |
Family
ID=85520385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310024303.6A Active CN115834738B (zh) | 2023-01-09 | 2023-01-09 | 一种工控业务行为识别方法、装置、电子设备及可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115834738B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103051725A (zh) * | 2012-12-31 | 2013-04-17 | 华为技术有限公司 | 应用识别方法、数据挖掘方法、装置及系统 |
CN110808879A (zh) * | 2019-11-01 | 2020-02-18 | 杭州安恒信息技术股份有限公司 | 一种协议识别方法、装置、设备及可读存储介质 |
CN115277261A (zh) * | 2022-09-28 | 2022-11-01 | 北京安帝科技有限公司 | 基于工控网络病毒的异常机器智能识别方法、装置、设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120198056A1 (en) * | 2011-01-31 | 2012-08-02 | Yaacov Shama | Techniques for Analyzing Website Content |
CN110061931B (zh) * | 2019-04-23 | 2022-08-30 | 广东技术师范大学 | 工控协议的聚类方法、装置、系统及计算机存储介质 |
CN112306019A (zh) * | 2020-10-28 | 2021-02-02 | 北京珞安科技有限责任公司 | 一种基于协议深度分析的工控安全审计系统及其应用 |
CN112367274A (zh) * | 2020-10-30 | 2021-02-12 | 宝牧科技(天津)有限公司 | 一种工控未知协议流量识别方法 |
CN115550470B (zh) * | 2021-06-30 | 2024-08-30 | 奇安信科技集团股份有限公司 | 工控网络数据包解析方法、装置、电子设备与存储介质 |
CN114553749B (zh) * | 2022-02-18 | 2024-08-02 | 科来网络技术股份有限公司 | 私有协议分析方法、装置、计算机设备及可读存储介质 |
CN115168568B (zh) * | 2022-03-16 | 2024-04-05 | 腾讯科技(深圳)有限公司 | 一种数据内容的识别方法、装置以及存储介质 |
-
2023
- 2023-01-09 CN CN202310024303.6A patent/CN115834738B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103051725A (zh) * | 2012-12-31 | 2013-04-17 | 华为技术有限公司 | 应用识别方法、数据挖掘方法、装置及系统 |
CN110808879A (zh) * | 2019-11-01 | 2020-02-18 | 杭州安恒信息技术股份有限公司 | 一种协议识别方法、装置、设备及可读存储介质 |
CN115277261A (zh) * | 2022-09-28 | 2022-11-01 | 北京安帝科技有限公司 | 基于工控网络病毒的异常机器智能识别方法、装置、设备 |
Also Published As
Publication number | Publication date |
---|---|
CN115834738A (zh) | 2023-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112003870B (zh) | 一种基于深度学习的网络加密流量识别方法及装置 | |
US5787253A (en) | Apparatus and method of analyzing internet activity | |
CN110868336A (zh) | 数据管理方法、装置和计算机可读存储介质 | |
US20090281984A1 (en) | Packet Compression for Network Packet Traffic Analysis | |
CN110445860B (zh) | 一种报文发送方法、装置、终端设备及存储介质 | |
CN113254255A (zh) | 一种云平台日志的分析方法、系统、设备及介质 | |
CN110995273B (zh) | 电力数据库的数据压缩方法、装置、设备及介质 | |
CN109698798B (zh) | 一种应用的识别方法、装置、服务器和存储介质 | |
CN116055293A (zh) | 路由器的远程故障监控方法及路由器 | |
CN115865525A (zh) | 日志数据处理方法、装置、电子设备和存储介质 | |
CN115834738B (zh) | 一种工控业务行为识别方法、装置、电子设备及可读介质 | |
CN112612832B (zh) | 节点分析方法、装置、设备及存储介质 | |
JP7239016B2 (ja) | 振り分け装置、振り分け方法、振り分けプログラム | |
CN116033048B (zh) | 物联网的多协议解析方法、电子设备和存储介质 | |
CN116542558B (zh) | 业务指标计算方法、装置、计算机设备和存储介质 | |
CN113938410B (zh) | 一种终端协议的识别方法及装置 | |
CN115987549A (zh) | 移动终端的异常行为检测方法、装置及存储介质 | |
CN114006838A (zh) | 流控设备的测试方法及系统 | |
CN112929364A (zh) | 一种基于icmp隧道分析的数据泄漏检测方法及系统 | |
Li et al. | A hierarchical clustering based feature word extraction method | |
CN111198900A (zh) | 工业控制网络的数据缓存方法、装置、终端设备及介质 | |
CN113098858B (zh) | 一种建链报文的无锁处理系统及方法 | |
CN118069898B (zh) | 一种多日志源的日志泛化方法及装置 | |
CN115333802B (zh) | 一种基于神经网络的恶意程序检测方法和系统 | |
CN114745161B (zh) | 一种异常流量的检测方法、装置、终端设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |