本发明涉及工业控制系统安全,尤其涉及基于自编码器和规则引擎的网络流量过滤方法与管理装置。
背景技术:
1、自编码器(autoencoder)作为一种无监督学习的深度学习技术,已经在异常检测领域取得了显著成果。自编码器的核心原理是通过神经网络对输入数据进行编码,将其压缩到一个低维表示(编码),然后再通过解码器将其还原到原始维度(解码)。这种编码-解码的过程能够学习到数据的内在特征和模式,特别是那些能够有效重构输入数据的特征。在实际应用中,自编码器通过训练能够捕捉正常数据的分布和特性,使得在重构过程中,正常数据的重构误差较小。而当输入数据中包含异常数据时,由于异常数据不符合训练时学习到的正常模式,其重构误差会显著增大。基于这一特性,自编码器可以通过检测重构误差来识别异常数据。具体而言,当重构误差超过预定阈值时,可以判断该数据为异常,从而实现对异常数据的有效检测。
2、工业控制系统(ics)是现代工业生产和社会基础设施的关键,关乎生产效率和公共安全。然而,由于多种因素,ics可能出现异常,若不及时处理,将威胁设备、生产和人员安全。因此,异常检测对ics至关重要。通过实时监测和分析数据,异常检测技术能预警潜在风险,提高系统可靠性和运行效率。在ics的异常检测中,传统的方法主要依赖于预定义的规则和统计分析。
3、然而,这些方法存在一定的局限性。首先,规则的制定依赖于专家知识以及历史数据,难以覆盖所有可能的异常情况。其次,随着工业控制系统规模的扩大和复杂性的增加,单纯依靠规则和统计分析难以有效应对复杂多变的异常模式。
4、因此,需要设计一种基于自编码器和规则引擎的网络流量过滤方法与管理装置以解决上述问题。
技术实现思路
1、本发明所要解决的技术问题在于解决现有技术中存在的不足,设计一种基于自编码器和规则引擎的网络流量过滤方法与管理装置,本发明的目的在于提供一种基于自编码器和规则引擎的工业控制系统网络流量过滤与管理装置,结合了自编码器的异常检测能力和规则引擎的灵活管理,通过设定和验证流量过滤规则,确保系统的安全性和适用性。通过增加规则的需求匹配功能,可以进一步提高规则的有效性,确保其能应对当前的网络安全需求。解决了传统方法在异常检测中的局限性,提高了检测的准确性和可靠性,为工业控制系统的安全运行提供了有力保障。
2、本发明解决其技术问题所采用的方案为:
3、一种基于自编码器和规则引擎的网络流量过滤方法,应用于工业控制系统,包括如下步骤:
4、步骤s1:采集工业控制系统中的网络流量,得到工控协议的网络数据包,初步解析数据包后抓捕数据帧,对捕获的数据帧进行解码处理,提取在特定时间点t时各个传感器与执行器在工业控制系统中的实时状态值其中,j代表当前工业控制系统中的第j个设备;
5、步骤s2:根据设备的功能和监控的物理量对传感器数据和执行器数据进行分类整理,基于设备的分类,构建特征向量来表示同类设备的数据;
6、步骤s3:将各个特征向量按照从部分到整体的逻辑顺序组合成一个集成数据矩阵,记为单位编码矩阵z;
7、步骤s4:将单位编码矩阵z中的单位编码向量记为v1、v2、…、vi,使用哈希算法,对每个单位编码向量vi计算哈希值,得到h(vi);
8、步骤s5:使用哈希算法,将所有单位编码向量vi按照其哈希值h(vi)进行排序,排序后的结果即为打乱后的单位编码矩阵;
9、步骤s6:重复步骤s4和步骤s5多次,每次打乱后形成新的随机单位编码矩阵;
10、步骤s7:将得到的随机单位编码矩阵进行通道拼接,形成一个三维矩阵e;
11、步骤s8:根据每个时刻t采集的传感器和执行器数据,使用步骤s1至步骤s7描述的数据采集和处理步骤,得到相应时刻的综合矩阵et;
12、步骤s9:为每个综合矩阵et关联一个样本标签yt,表示t时刻工业控制系统的运行状态,运行正常时yt=1,否则yt=0;
13、步骤s10:重复上述步骤,采集并处理多个时刻的数据,得到一系列综合矩阵和对应的样本标签,构建训练数据集d;
14、步骤s11:选择和构建一个自编码器模型,迭代训练自编码器模型;
15、步骤s12:设置规则管理装置;
16、步骤s13:将综合矩阵et输入到训练好的自编码器模型,如果模型输出为1,表示系统运行正常,否则为异常。
17、步骤s14:使用规则引擎对网络流量进一步过滤,应用用户设定的规则,确保流量符合工业控制系统的安全策略。
18、作为本发明的一种优选实施方式,所述步骤s11中自编码器模型由编码器和解码器两部分组成,所述编码器将输入数据映射到低维表示,所述解码器从低维表示重构输入数据。
19、作为本发明的一种优选实施方式,所述输入数据为训练数据集d中的综合矩阵et。
20、作为本发明的一种优选实施方式,所述步骤s11中生成的自编码器模型迭代训练过程中使用均方误差(mse)作为损失函数:
21、
22、其中,et为原始输入综合矩阵,为自编码器重构的综合矩阵。
23、作为本发明的一种优选实施方式,所述步骤s11中生成的自编码器模型迭代训练过程中使用反向传播算法计算损失函数的梯度,并调整模型参数以最小化损失:
24、
25、其中,θ为模型参数,η为学习率。
26、作为本发明的一种优选实施方式,所述步骤s2中监控的物理量包含监控设备的电压、电流或电量。
27、作为本发明的一种优选实施方式,所述步骤s4中哈希计算时使用标准的哈希函数sha-256来生成哈希值。
28、作为本发明的一种优选实施方式,所述步骤s12中的规则管理装置包含:
29、规则设定模块,通过使用正则表达式设定和修改流量过滤规则;
30、规则验证模块,对设定的规则进行语法检查,确保规则的正确性;
31、需求匹配模块,利用机器学习模型对规则进行分析,确保规则满足当前网络安全需求,通过历史数据和攻击模式分析,判断规则是否能够有效检测和阻止已知的攻击。
32、有益效果:本发明提供了一种基于自编码器和规则引擎的工业控制系统网络流量过滤与管理装置,通过自动学习数据特征和灵活管理流量过滤规则,显著提高了系统的异常检测准确性和可靠性,适应多种工控协议,具有较高的实时监测和预警能力,增强了系统的稳定性和安全性,同时保持了低模型复杂度和高效性。
1.一种基于自编码器和规则引擎的网络流量过滤方法,其特征在于,应用于工业控制系统,包括如下步骤:
2.如权利要求1所述的一种基于自编码器和规则引擎的网络流量过滤方法,其特征在于,所述步骤s11中自编码器模型由编码器和解码器两部分组成,所述编码器将输入数据映射到低维表示,所述解码器从低维表示重构输入数据。
3.如权利要求2所述的一种基于自编码器和规则引擎的网络流量过滤方法,其特征在于,所述输入数据为训练数据集d中的综合矩阵et。
4.如权利要求3所述的一种基于自编码器和规则引擎的网络流量过滤方法,其特征在于,所述步骤s11中生成的自编码器模型迭代训练过程中使用均方误差(mse)作为损失函数:
5.如权利要求4所述的一种基于自编码器和规则引擎的网络流量过滤方法,其特征在于,所述步骤s11中生成的自编码器模型迭代训练过程中使用反向传播算法计算损失函数的梯度,并调整模型参数以最小化损失:
6.如权利要求1所述的一种基于自编码器和规则引擎的网络流量过滤方法,其特征在于,所述步骤s2中监控的物理量包含监控设备的电压、电流或电量。
7.如权利要求1所述的一种基于自编码器和规则引擎的网络流量过滤方法,其特征在于,所述步骤s4中哈希计算时使用标准的哈希函数sha-256来生成哈希值。
8.如权利要求1所述的一种基于自编码器和规则引擎的网络流量过滤方法,其特征在于,所述步骤s12中的规则管理装置包含: