CN117749648A - 工控流量审计方法及装置 - Google Patents
工控流量审计方法及装置 Download PDFInfo
- Publication number
- CN117749648A CN117749648A CN202410096491.8A CN202410096491A CN117749648A CN 117749648 A CN117749648 A CN 117749648A CN 202410096491 A CN202410096491 A CN 202410096491A CN 117749648 A CN117749648 A CN 117749648A
- Authority
- CN
- China
- Prior art keywords
- industrial control
- target
- data packet
- determining
- control protocol
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 230000005540 biological transmission Effects 0.000 claims abstract description 73
- 238000012550 audit Methods 0.000 claims abstract description 50
- 238000004458 analytical method Methods 0.000 claims abstract description 37
- 230000006870 function Effects 0.000 claims abstract description 34
- 238000012512 characterization method Methods 0.000 claims abstract description 19
- 238000004590 computer program Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000001514 detection method Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000004140 cleaning Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000036316 preload Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及工控技术领域,尤其涉及一种工控流量审计方法及装置,其中方法包括:预加载XML预配置文件,XML预配置文件中配置有多种工控协议类型及与多种工控协议类型一一对应的多种解析函数;利用端口镜像方式获取所述工控系统中的工控流量,并从工控流量中读取数据包;确定数据包所属的目标网络传输通道以及确定所述数据包所使用的目标工控协议类型;根据所述目标网络传输通道和所述目标工控协议类型,对所述数据包进行私有字段解析,以得到私有字段信息及其表征含义;所述表征含义为可读性数据;利用所述表征含义匹配相应的流量审计规则,并利用匹配到的流量审计规则对所述数据包进行审计。本方案,能够更准确的实现对工控流量的审计。
Description
技术领域
本发明实施例涉及工控技术领域,特别涉及一种工控流量审计方法及装置。
背景技术
随着工业自动化和智能化的发展,工控系统在网络通信中占据了越来越重要的地位。工控流量具有复杂的协议和数据格式,同时数据传输速度较快,对解析效率要求较高。
目前,对工控流量的审计只能审计到功能码等公有字段信息,而在复杂的工控系统中,存在相同功能码对应不同含义的情况,在利用功能码匹配流量审计规则时,容易出现匹配错误。因此,需要提供一种更准确的工控流量审计方法。
发明内容
本发明实施例提供了一种工控流量审计方法及装置,能够更准确的实现对工控流量的审计。
第一方面,本发明实施例提供了一种工控流量审计方法,用于对工控系统中的工控流量进行审计,所述工控系统包括多个工控设备,所述方法包括:
预加载XML预配置文件,所述XML预配置文件中配置有多种工控协议类型及与多种工控协议类型一一对应的多种解析函数;
利用端口镜像方式获取所述工控系统中的工控流量,并从工控流量中读取数据包;
确定所述数据包所属的目标网络传输通道以及确定所述数据包所使用的目标工控协议类型;
根据所述目标网络传输通道和所述目标工控协议类型,对所述数据包进行私有字段解析,以得到私有字段信息及其表征含义;所述表征含义为可读性数据;
利用所述表征含义匹配相应的流量审计规则,并利用匹配到的流量审计规则对所述数据包进行审计。
第二方面,本发明实施例还提供了一种工控流量审计装置,用于对工控系统中的工控流量进行审计,所述工控系统包括多个工控设备,所述装置包括:
加载单元,用于预加载XML预配置文件,所述XML预配置文件中配置有多种工控协议类型及与多种工控协议类型一一对应的多种解析函数;
流量获取单元,用于利用端口镜像方式获取所述工控系统中的工控流量,并从工控流量中读取数据包;
确定单元,用于确定所述数据包所属的目标网络传输通道以及确定所述数据包所使用的目标工控协议类型;
解析单元,用于根据所述目标网络传输通道和所述目标工控协议类型,对所述数据包进行私有字段解析,以得到私有字段信息及其表征含义;所述表征含义为可读性数据;
匹配审计单元,用于利用所述表征含义匹配相应的流量审计规则,并利用匹配到的流量审计规则对所述数据包进行审计。
第三方面,本发明实施例还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本说明书任一实施例所述的方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行本说明书任一实施例所述的方法。
本发明实施例提供了一种工控流量审计方法及装置,通过在XML预配置文件中配置多种工控协议类型以及与多种工控协议类型一一对应的多种解析函数,使得在确定数据包所属的目标网络传输通道和数据包所使用的工控协议类型后,能够确定该工控协议类型的目标解析函数,进而实现对数据包私有字段的解析以得到数据包中私有字段信息及其表征含义,在匹配流量审计规则时,无论其私有字段信息是怎样的,由于表征含义已经确定且是唯一的,那么利用表征含义匹配到的流量审计规则就是准确的,进而利用匹配到的流量审计规则能够针对工控流量实现准确的审计。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种工控流量审计方法流程图;
图2是本发明一实施例提供的一种电子设备的硬件架构图;
图3是本发明一实施例提供的一种工控流量审计装置结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,本发明实施例提供了一种工控流量审计方法,用于对工控系统中的工控流量进行审计,所述工控系统包括多个工控设备,该方法包括:
步骤100,预加载XML预配置文件,所述XML预配置文件中配置有多种工控协议类型及与多种工控协议类型一一对应的多种解析函数;
步骤102,利用端口镜像方式获取所述工控系统中的工控流量,并从工控流量中读取数据包;
步骤104,确定所述数据包所属的目标网络传输通道以及确定所述数据包所使用的目标工控协议类型;
步骤106,根据所述目标网络传输通道和所述目标工控协议类型,对所述数据包进行私有字段解析,以得到私有字段信息及其表征含义;所述表征含义为可读性数据;
步骤108,利用所述表征含义匹配相应的流量审计规则,并利用匹配到的流量审计规则对所述数据包进行审计。
本发明实施例中,通过在XML预配置文件中配置多种工控协议类型以及与多种工控协议类型一一对应的多种解析函数,使得在确定数据包所属的目标网络传输通道和数据包所使用的工控协议类型后,能够确定该工控协议类型的目标解析函数,进而实现对数据包私有字段的解析以得到数据包中私有字段信息及其表征含义,在匹配流量审计规则时,无论其私有字段信息是怎样的,由于表征含义已经确定且是唯一的,那么利用表征含义匹配到的流量审计规则就是准确的,进而利用匹配到的流量审计规则能够针对工控流量实现准确的审计。
下面描述图1所示的各个步骤的执行方式。
首先,针对步骤100,预加载XML预配置文件,所述XML预配置文件中配置有多种工控协议类型及与多种工控协议类型一一对应的多种解析函数。
本发明实施例中,工控系统中所使用的工控协议类型一部分为非自定义的公开协议,另一部分为自定义协议。若数据包使用的工控协议类型为非自定义的公开协议,那么能够实现对工控流量中数据包私有字段的解析;若数据包使用的工控协议类型为自定义协议,为了能够实现对自定义协议的数据包进行私有字段的解析,需要将自定义协议及其解析函数进行配置,以存储至XML预配置文件中。其中,自定义协议的配置内容可以包括:协议名称、协议字段、协议类型等。
进一步地,若自定义协议使用特定的端口号进行通信,则还需要将自定义协议与特定端口号建立关联,以形成自定义协议及其特定端口号的关联列表。
其中,工控协议类型可以包括:Modbus、IEC60870-5-104、TRDP等。
本发明实施例中,解析函数用于对相应工控协议类型的数据包进行私有字段的解析。该私有字段信息至少包括点位字段信息。其中,点位字段信息用于指示与设备相关的位置和配置信息。
然后,针对步骤102,利用端口镜像方式获取所述工控系统中的工控流量,并从工控流量中读取数据包。
本发明实施例中,工控系统中任意两个工控设备之间进行工控流量的交互时,均是通过交换机来实现的。因此,可以利用交换机的镜像端口采用旁路流量采集的方式获取工控流量。
工控流量中可以读取出多个数据包,针对每一个数据包均需要执行步骤104~108。
接下来,针对步骤104,确定所述数据包所属的目标网络传输通道以及确定所述数据包所使用的目标工控协议类型。
由于工控系统中包括多个工控设备,任意两个工控设备之间均有可能传输数据包,而不同工控设备之间传输数据包的网络传输通道是不同的,工控设备在面对不同网络传输通道时,为另一端工控设备提供的私有字段信息的表征含义是不同的,则在对由不同网络传输通道中传输的数据包进行私有字段解析时,解析依据是不同的,因此,需要确定数据包所属的目标网络传输通道。
本发明一个实施例中,可以通过哈希表的方式确定数据包所属的目标网络传输通道,具体地,所述XML预配置文件中包括哈希表,所述哈希表中包括多条网络会话以及每一条网络会话的哈希值,每一条网络会话具有对应的网络传输通道;
相应地,所述确定所述数据包所属的目标网络传输通道,包括:
对所述数据包进行哈希计算,得到所述数据包的目标哈希值;
确定所述哈希表与所述目标哈希值相对应的网络会话,将确定的该网络会话所对应的网络传输通道,确定为所述数据包所属的目标网络传输通道。
举例来说,哈希表中包括20条网络会话以及每一条网络会话的哈希值,每一条网络会话对应一个网络传输通道,比如网络会话1~20一一对应网络传输通道1~20。若目标哈希值与网络会话5的哈希值相等,则确定数据包所属的网络会话为网络会话5,所属的目标网络传输通道为网络传输通道5。
由于哈希值是唯一的,因此通过对数据包进行哈希计算,可以快速确定数据包所属的目标网络传输通道。
需要说明的是,除上述确定目标网络传输通道以外,还可以使用其他方式,比如直接利用数据包的五元组信息中的源IP地址、目的IP地址、源端口号、目的端口号来确定目标网络传输通道。
进一步地,对于工控系统中产生的工控流量,并不是所有工控流量均需要进行审计。可以依据审计规则、审计条件和/或审计目的等,只对审计关注的网络传输通道中的数据包进行审计。因此,还可以利用哈希表对审计关注的网络传输通道传输的数据包进行快速筛选。具体地:所述哈希表包括若干条审计关注的网络会话;
相应地,在确定所述哈希表与所述目标哈希值相对应的网络会话之前,还可以包括:在所述哈希表包括的若干条审计关注的网络会话中,是否存在所述目标哈希值,若不存在,则舍弃所述数据包,若存在,则针对所述数据包执行所述确定所述哈希表与所述目标哈希值相对应的网络会话。
需要说明的是,一个实现方式中,哈希表中包括的网络会话可以全部是审计关注的网络会话;另一个实现方式中,可以一部分是审计关注的网络会话,另一部分不是审计关注的网络会话,其中,是审计关注的网络会话存在标识符,利用该标识符可以确定哪一部分是审计关注的网络会话,进而利用确定的审计关注的网络会话对数据包进行筛选。
为了能够对数据包进行私有字段的解析,需要确定所述数据包所使用的目标工控协议类型,在本发明实施例中,至少可以通过如下两种方式确定数据包所使用的目标工控协议类型:
方式一、利用所述数据包的协议特征字段确定所述数据包所使用的工控协议类型;
在该方式一中,可以预先确定每一种工控协议类型的数据包所具有的协议特征字段,该协议特征字段可以位于数据包的协议头信息中,通过分析数据包的协议头信息中是否包括协议特征字段来确定其工控协议类型。
方式二、利用自定义协议逐个进行解析,以根据解析结果来确定数据包所使用的工控协议类型。
具体地,该方式二中,在确定所述数据包所使用的目标工控协议类型时,可以包括如下步骤A1~:
A1:针对每一种自定义协议的工控协议类型,均执行:利用该工控协议类型所对应的解析函数,对所述数据包进行私有字段解析,确定是否可解析出私有字段信息;若可解析出私有字段信息,则进一步确定所述目标点表中是否存在解析出的该私有字段信息;若存在,则将该工控协议类型确定为潜在工控协议类型;
A2:确定潜在工控协议类型的数量;若数量为一个,则执行步骤A3;若数量为至少两个,则执行步骤A4;
A3:直接将该潜在工控协议类型确定为目标工控协议类型;
A4:确定每一个潜在工控协议类型所解析出的私有字段信息是否相同;若相同,则将任意一个潜在工控协议类型确定为目标工控协议类型;若不相同,则丢弃所述数据包。
在步骤A1中,只有正确的工控协议类型所对应的解析函数,才能够准确将私有字段信息从数据包中解析出来,若存在意外情况,错误的工控协议类型能够从数据包中解析出私有字段信息,则需要验证解析出的私有字段信息是否正确,可以利用目标点表中是否存在该私有字段信息来验证。
在步骤A2中,若潜在工控协议类型的数量为一个,则该潜在工控协议类型就是目标工控协议类型;若潜在工控协议类型的数量为至少两个,那么其中一个潜在工控协议类型是目标工控协议类型,而每一个潜在工控协议类型解析出的私有字段信息均在目标点表中存在,若每一个潜在工控协议类型所解析出的私有字段信息相同,则无论采用哪一个潜在工控协议类型对数据包进行私有字段解析,均能够解析出正确的私有字段信息来,因此,可以将任意一个潜在工控协议类型确定为目标工控协议类型;若潜在工控协议类型所解析出的私有字段信息不相同,则需要人工校验方式来确定目标工控协议类型,或者,直接丢弃该数据包。
需要说明的是,若潜在工控协议类型的数量为0,则需要人工校验方式来确定目标工控协议类型,或者,直接丢弃该数据包。
对于未确定出目标工控协议类型的数据包,还可以基于自定义协议的更新,来进一步识别其工控协议类型。
进一步针对步骤106,根据所述目标网络传输通道和所述目标工控协议类型,对所述数据包进行私有字段解析,以得到私有字段信息及其表征含义;所述表征含义为可读性数据。
在确定了目标网络传输通道和目标工控协议类型之后,则能够实现对数据包的私有字段解析,具体的:所述XML预配置文件中还包括与多个网络传输通道一一对应的多个点表;所述点表中包括对应网络传输通道两端的工控设备,一个工控设备为另一个工控设备提供的私有字段信息及其所对应的表征含义;工控设备在面对不同网络传输通道时,为另一个工控设备提供的相同私有字段信息所对应的表征含义不完全相同;其中,表征含义为可读性数据。
举例来说,对于工控设备1、工控设备2和工控设备3,两两之间可以组成:网络传输通道1:工控设备1-工控设备2;网络传输通道2:工控设备1-工控设备3;网络传输通道3:工控设备3-工控设备2。针对工控设备1在面对网络传输通道1和网络传输通道2时,工控设备1为工控设备2提供的私有字段信息与工控设备1为工控设备3提供的私有字段信息中,相同私有字段信息所对应的表征含义不同。假设工控设备1为工控设备2提供的私有字段信息包括:101、102和103,表征含义分别为设备开关门开、设备开关门合、PLC停止;工控设备1为工控设备3提供的私有字段信息包括:100、101和104,表征含义分别为设备开关门开、设备开关门合、PLC启动;可见,工控设备1为工控设备2和工控设备3均提供有相同私有字段信息101,而该相同私有字段信息101的表征含义是不同的。因此每一个网络传输通道均对应一个点表。
相应地,在根据所述目标网络传输通道和所述目标工控协议类型,对所述数据包进行私有字段解析,以得到私有字段信息及其表征含义时,具体可以包括如下步骤B1~B4:
B1:根据所述XML预配置文件,确定与所述目标网络传输通道对应的目标点表;
B2:根据所述XML预配置文件,确定与所述目标工控协议类型对应的目标解析函数;
B3:利用所述目标解析函数从所述数据包中解析出私有字段信息;
B4:根据所述目标点表确定解析出的私有字段信息的表征含义。
在步骤B4中,由于网络传输通道的两个工控设备之间互相为对方提供有私有字段信息及其表征含义,基于此,在根据所述目标点表确定解析出的私有字段信息的表征含义时,具体可以包括:
确定所述目标点表中是否包括所述目标网络传输通道两端的两个工控设备分别提供的子表;若是,则确定从所述数据包中解析出的私有字段信息的提供方,并利用提供方提供的子表确定私有字段信息的表征含义;若否,则直接利用所述目标点表确定私有字段信息的表征含义。
若目标点表中包括所述目标网络传输通道两端的两个工控设备分别提供的子表,则表明两个工控设备分别为对端工控设备提供的相同私有字段信息对应不同表征含义,比如,工控设备1为工控设备2提供的私有字段信息101表征含义为设备开关门开,工控设备2为工控设备1提供的私有字段信息101表征含义为设备开关门合,因此,在进行匹配时,不能直接利用整个目标点表进行私有字段信息的匹配。
本发明实施例中,在确定从所述数据包中解析出的私有字段信息的提供方时,可以根据数据包的功能进行确定,若数据包的功能是发送端工控设备要求接收端工控设备针对接收端工控设备的点位进行指示,则私有字段信息的提供方为接收端工控设备,若数据包的功能是发送端工控设备为接收端工控设备针对发送端工控设备的点位进行响应,则私有字段信息的提供方为发送端工控设备。
可以理解,若目标点表中不包括所述目标网络传输通道两端的两个工控设备分别提供的子表,而是一个点表,则表明两个工控设备分别为对端工控设备提供的相同私有字段信息对应相同表征含义,或者,表明两个工控设备分别为对端工控设备提供的私有字段信息均不相同,如此可以直接进行私有字段信息的匹配即可。
最后,针对步骤108,利用所述表征含义匹配相应的流量审计规则,并利用匹配到的流量审计规则对所述数据包进行审计。
本发明实施例中,不同表征含义的数据包其流量审计规则是不同的,如果未能解析出私有字段信息的表征含义,而是针对私有字段信息进行流量审计规则的匹配,一个方面,在不同网络传输通道中相同私有字段信息的表征含义不同时,那么匹配到的流量审计规则也可能是不准确的;另一个方面,如果针对私有字段信息进行流量审计规则的配置,那么需要要求规则配置人员熟知每一个私有字段信息的表征含义,对规则配置人员要求较高,且配置的流量审计规则中都是私有字段信息,可读性较差。
基于此,本发明实施例中,所述流量审计规则是基于可读性数据配置的规则,且所述流量审计规则中包括可读性数据;
相应地,所述利用所述表征含义匹配相应的流量审计规则,包括:针对已有的多个流量审计规则,将包括的可读性数据为所述表征含义的流量审计规则确定为匹配到的流量审计规则。
由于流量审计规则是基于可读性数据配置的,因此,规则配置人员无需了解私有字段信息的表征含义,直接针对所需配置的可读性数据进行流量审计规则的配置即可;另外,流量审计规则中包括可读性数据,对于审计人员而言,流量审计规则更具有可读性,能够对匹配到的流量审计规则进行人工校验,以进一步确保流量审计规则匹配的准确性。
本发明一个实施例中,对于解析出私有字段信息的表征含义后的数据报进行审计之前,还可以进行工控流量中读取的多个数据包进行清洗和聚合,清洗的目的是去除无效或错误的数据,例如,去除重复数据或过滤掉为非法的设备信息。聚合则是将多个数据项合并为一个有意义的数据集合,例如,将多个设备的位置信息合并为全局的设备位置表。然后将清洗和聚合后的数据报存储至消息队列中,以供后续进行流量审计规则的匹配和审计。
在对数据包审计结束后,可以将数据包审计入库,从而可以将经过安全性和合法性验证的数据存储到数据库或日志系统中,供后续分析和查询使用。
进一步地,对于存储至消息队列中的数据包,还可以进行告警检测,比如DPI检测和/或DFI检测,并对告警检测后的数据进行告警信息的清洗和聚合,然后存储至告警消息队列中,以便进行溯源分析和入库存储。
如图2、图3所示,本发明实施例提供了一种工控流量审计装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图2所示,为本发明实施例提供的一种工控流量审计装置所在电子设备的一种硬件架构图,除了图2所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的电子设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图3所示,作为一个逻辑意义上的装置,是通过其所在电子设备的CPU将非易失性存储器中对应的计算机程序读取到内存中运行形成的。本实施例提供的一种工控流量审计装置,用于对工控系统中的工控流量进行审计,所述工控系统包括多个工控设备,所述装置包括:
加载单元301,用于预加载XML预配置文件,所述XML预配置文件中配置有多种工控协议类型及与多种工控协议类型一一对应的多种解析函数;
流量获取单元302,用于利用端口镜像方式获取所述工控系统中的工控流量,并从工控流量中读取数据包;
确定单元303,用于确定所述数据包所属的目标网络传输通道以及确定所述数据包所使用的目标工控协议类型;
解析单元304,用于根据所述目标网络传输通道和所述目标工控协议类型,对所述数据包进行私有字段解析,以得到私有字段信息及其表征含义;所述表征含义为可读性数据;
匹配审计单元305,用于利用所述表征含义匹配相应的流量审计规则,并利用匹配到的流量审计规则对所述数据包进行审计。
在本发明一个实施例中,所述XML预配置文件中包括哈希表,所述哈希表中包括多条网络会话以及每一条网络会话的哈希值,每一条网络会话具有对应的网络传输通道;
所述确定单元在确定所述数据包所属的目标网络传输通道时,具体包括:对所述数据包进行哈希计算,得到所述数据包的目标哈希值;确定所述哈希表与所述目标哈希值相对应的网络会话,将确定的该网络会话所对应的网络传输通道,确定为所述数据包所属的目标网络传输通道。
在本发明一个实施例中,所述哈希表包括若干条审计关注的网络会话;
所述确定单元还用于:在所述哈希表包括的若干条审计关注的网络会话中,确定是否存在所述目标哈希值,若不存在,则舍弃所述数据包,若存在,则针对所述数据包执行所述确定所述哈希表与所述目标哈希值相对应的网络会话。
在本发明一个实施例中,所述XML预配置文件中还包括与多个网络传输通道一一对应的多个点表;所述点表中包括对应网络传输通道两端的工控设备,一个工控设备为另一个工控设备提供的私有字段信息及其所对应的表征含义;工控设备在面对不同网络传输通道时,为另一个工控设备提供的相同私有字段信息所对应的表征含义不完全相同;
所述解析单元具体用于:根据所述XML预配置文件,确定与所述目标网络传输通道对应的目标点表;根据所述XML预配置文件,确定与所述目标工控协议类型对应的目标解析函数;利用所述目标解析函数从所述数据包中解析出私有字段信息;根据所述目标点表确定解析出的私有字段信息的表征含义。
在本发明一个实施例中,所述解析单元在根据所述目标点表确定解析出的私有字段信息的表征含义时,具体包括:确定所述目标点表中是否包括所述目标网络传输通道两端的两个工控设备分别提供的子表;若是,则确定从所述数据包中解析出的私有字段信息的提供方,并利用提供方提供的子表确定私有字段信息的表征含义;若否,则直接利用所述目标点表确定私有字段信息的表征含义。
在本发明一个实施例中,所述确定单元在确定所述数据包所使用的目标工控协议类型时,具体包括:
针对每一种自定义协议的工控协议类型,均执行:利用该工控协议类型所对应的解析函数,对所述数据包进行私有字段解析,确定是否可解析出私有字段信息;若可解析出私有字段信息,则进一步确定所述目标点表中是否存在解析出的该私有字段信息;若存在,则将该工控协议类型确定为潜在工控协议类型;
确定潜在工控协议类型的数量;若数量为一个,则直接将该潜在工控协议类型确定为目标工控协议类型;若数量为至少两个,则确定每一个潜在工控协议类型所解析出的私有字段信息是否相同;若相同,则将任意一个潜在工控协议类型确定为目标工控协议类型;若不相同,则丢弃所述数据包。
在本发明一个实施例中,所述流量审计规则是基于可读性数据配置的规则,且所述流量审计规则中包括可读性数据;
所述匹配解析单元在利用所述表征含义匹配相应的流量审计规则时,具体包括:针对已有的多个流量审计规则,将包括的可读性数据为所述表征含义的流量审计规则确定为匹配到的流量审计规则。
可以理解的是,本发明实施例示意的结构并不构成对一种工控流量审计装置的具体限定。在本发明的另一些实施例中,一种工控流量审计装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。
上述装置内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明实施例还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本发明任一实施例中的一种工控流量审计方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序在被处理器执行时,使所述处理器执行本发明任一实施例中的一种工控流量审计方法。
具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展模块中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展模块上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种工控流量审计方法,其特征在于,用于对工控系统中的工控流量进行审计,所述工控系统包括多个工控设备,所述方法包括:
预加载XML预配置文件,所述XML预配置文件中配置有多种工控协议类型及与多种工控协议类型一一对应的多种解析函数;
利用端口镜像方式获取所述工控系统中的工控流量,并从工控流量中读取数据包;
确定所述数据包所属的目标网络传输通道以及确定所述数据包所使用的目标工控协议类型;
根据所述目标网络传输通道和所述目标工控协议类型,对所述数据包进行私有字段解析,以得到私有字段信息及其表征含义;所述表征含义为可读性数据;
利用所述表征含义匹配相应的流量审计规则,并利用匹配到的流量审计规则对所述数据包进行审计。
2.根据权利要求1所述的方法,其特征在于,所述XML预配置文件中包括哈希表,所述哈希表中包括多条网络会话以及每一条网络会话的哈希值,每一条网络会话具有对应的网络传输通道;
所述确定所述数据包所属的目标网络传输通道,包括:
对所述数据包进行哈希计算,得到所述数据包的目标哈希值;
确定所述哈希表与所述目标哈希值相对应的网络会话,将确定的该网络会话所对应的网络传输通道,确定为所述数据包所属的目标网络传输通道。
3.根据权利要求2所述的方法,其特征在于,所述哈希表包括若干条审计关注的网络会话;
在确定所述哈希表与所述目标哈希值相对应的网络会话之前,还包括:
在所述哈希表包括的若干条审计关注的网络会话中,确定是否存在所述目标哈希值,若不存在,则舍弃所述数据包,若存在,则针对所述数据包执行所述确定所述哈希表与所述目标哈希值相对应的网络会话。
4.根据权利要求2所述的方法,其特征在于,所述XML预配置文件中还包括与多个网络传输通道一一对应的多个点表;所述点表中包括对应网络传输通道两端的工控设备,一个工控设备为另一个工控设备提供的私有字段信息及其所对应的表征含义;工控设备在面对不同网络传输通道时,为另一个工控设备提供的相同私有字段信息所对应的表征含义不完全相同;
所述根据所述目标网络传输通道和所述目标工控协议类型,对所述数据包进行私有字段解析,以得到私有字段信息及其表征含义,包括:
根据所述XML预配置文件,确定与所述目标网络传输通道对应的目标点表;
根据所述XML预配置文件,确定与所述目标工控协议类型对应的目标解析函数;
利用所述目标解析函数从所述数据包中解析出私有字段信息;
根据所述目标点表确定解析出的私有字段信息的表征含义。
5.根据权利要求4所述的方法,其特征在于,所述根据所述目标点表确定解析出的私有字段信息的表征含义,包括:
确定所述目标点表中是否包括所述目标网络传输通道两端的两个工控设备分别提供的子表;
若是,则确定从所述数据包中解析出的私有字段信息的提供方,并利用提供方提供的子表确定私有字段信息的表征含义;
若否,则直接利用所述目标点表确定私有字段信息的表征含义。
6.根据权利要求4所述的方法,其特征在于,所述确定所述数据包所使用的目标工控协议类型,包括:
针对每一种自定义协议的工控协议类型,均执行:利用该工控协议类型所对应的解析函数,对所述数据包进行私有字段解析,确定是否可解析出私有字段信息;若可解析出私有字段信息,则进一步确定所述目标点表中是否存在解析出的该私有字段信息;若存在,则将该工控协议类型确定为潜在工控协议类型;
确定潜在工控协议类型的数量;
若数量为一个,则直接将该潜在工控协议类型确定为目标工控协议类型;
若数量为至少两个,则确定每一个潜在工控协议类型所解析出的私有字段信息是否相同;若相同,则将任意一个潜在工控协议类型确定为目标工控协议类型;若不相同,则丢弃所述数据包。
7.根据权利要求1-6中任一所述的方法,其特征在于,所述流量审计规则是基于可读性数据配置的规则,且所述流量审计规则中包括可读性数据;
所述利用所述表征含义匹配相应的流量审计规则,包括:针对已有的多个流量审计规则,将包括的可读性数据为所述表征含义的流量审计规则确定为匹配到的流量审计规则。
8.一种工控流量审计装置,其特征在于,用于对工控系统中的工控流量进行审计,所述工控系统包括多个工控设备,所述装置包括:
加载单元,用于预加载XML预配置文件,所述XML预配置文件中配置有多种工控协议类型及与多种工控协议类型一一对应的多种解析函数;
流量获取单元,用于利用端口镜像方式获取所述工控系统中的工控流量,并从工控流量中读取数据包;
确定单元,用于确定所述数据包所属的目标网络传输通道以及确定所述数据包所使用的目标工控协议类型;
解析单元,用于根据所述目标网络传输通道和所述目标工控协议类型,对所述数据包进行私有字段解析,以得到私有字段信息及其表征含义;所述表征含义为可读性数据;
匹配审计单元,用于利用所述表征含义匹配相应的流量审计规则,并利用匹配到的流量审计规则对所述数据包进行审计。
9.一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410096491.8A CN117749648B (zh) | 2024-01-23 | 2024-01-23 | 工控流量审计方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410096491.8A CN117749648B (zh) | 2024-01-23 | 2024-01-23 | 工控流量审计方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117749648A true CN117749648A (zh) | 2024-03-22 |
CN117749648B CN117749648B (zh) | 2024-06-04 |
Family
ID=90251038
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410096491.8A Active CN117749648B (zh) | 2024-01-23 | 2024-01-23 | 工控流量审计方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117749648B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110752951A (zh) * | 2019-10-24 | 2020-02-04 | 杭州安恒信息技术股份有限公司 | 工业网络流量监测审计方法、装置及系统 |
US20200274787A1 (en) * | 2019-02-22 | 2020-08-27 | Extreme Networks, Inc. | Multi-Access Edge Computing Based Visibility Network |
CN112422557A (zh) * | 2020-11-17 | 2021-02-26 | 中国信息安全测评中心 | 一种工控网络的攻击测试方法及装置 |
CN115988107A (zh) * | 2022-12-23 | 2023-04-18 | 北京天融信网络安全技术有限公司 | 基于xml配置文件的自定义协议解析方法、系统 |
-
2024
- 2024-01-23 CN CN202410096491.8A patent/CN117749648B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200274787A1 (en) * | 2019-02-22 | 2020-08-27 | Extreme Networks, Inc. | Multi-Access Edge Computing Based Visibility Network |
CN110752951A (zh) * | 2019-10-24 | 2020-02-04 | 杭州安恒信息技术股份有限公司 | 工业网络流量监测审计方法、装置及系统 |
CN112422557A (zh) * | 2020-11-17 | 2021-02-26 | 中国信息安全测评中心 | 一种工控网络的攻击测试方法及装置 |
CN115988107A (zh) * | 2022-12-23 | 2023-04-18 | 北京天融信网络安全技术有限公司 | 基于xml配置文件的自定义协议解析方法、系统 |
Also Published As
Publication number | Publication date |
---|---|
CN117749648B (zh) | 2024-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10791131B2 (en) | Processing network data using a graph data structure | |
CN113949748B (zh) | 一种网络资产识别方法、装置、存储介质及电子设备 | |
KR101239401B1 (ko) | 보안 시스템의 로그 분석 시스템 및 방법 | |
US7903555B2 (en) | Packet tracing | |
JP4620103B2 (ja) | ネットワーク・トラフィックの自動特性記述 | |
EP1480379B1 (en) | Automated characterization of network traffic | |
CN112468520B (zh) | 一种数据检测方法、装置、设备及可读存储介质 | |
CN111130883B (zh) | 工控设备拓扑图的确定方法、装置及电子设备 | |
US20060083180A1 (en) | Packet analysis system | |
US20100333172A1 (en) | Method, apparatus and system for monitoring database security | |
US11093376B2 (en) | Methods, systems, and computer readable media for configuring a test system using source code of a device being tested | |
US20100262684A1 (en) | Method and device for packet classification | |
EP3364601A1 (en) | Testing method, device and system | |
JP2009017298A (ja) | データ分析装置 | |
CN115865525B (zh) | 日志数据处理方法、装置、电子设备和存储介质 | |
CN110768875A (zh) | 一种基于dns学习的应用识别方法及系统 | |
CN114666101B (zh) | 一种攻击溯源检测系统及方法 | |
US7451145B1 (en) | Method and apparatus for recursively analyzing log file data in a network | |
CN117749648B (zh) | 工控流量审计方法及装置 | |
KR100969455B1 (ko) | 네트워크 이용경향 관리를 위한 홈게이트웨이 장치 및 그동작 방법과, 그를 이용한 네트워크 이용경향 관리 방법 | |
CN114285769B (zh) | 共享上网检测方法、装置、设备及存储介质 | |
Antunes et al. | Automatically complementing protocol specifications from network traces | |
CN114006838B (zh) | 流控设备的测试方法及系统 | |
JP4531486B2 (ja) | ネットワーク・トラフィックの自動特性記述 | |
CN114553512B (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 |