文摘
由于其开放性和简单,Modbus TCP广泛应用促进了实际工业无线领域的管理和控制。然而,它的潜在的安全漏洞也可以创建很多复杂的信息安全挑战,越来越威胁的工业实时交通交付。虽然异常检测已经被认为是一个可行的安全措施来识别攻击,成功提取数据特征的关键步骤是一个极其艰巨的任务。在本文中,我们专注于工业过程的连续控制方式并提出控制跟踪功能算法提取功能驱动跟踪特征从Modbus TCP数据流量。此外,该算法可以灵活地集成关键功能操作的时间因素和充分描述了动态控制工艺流程的改变。密切配合这个算法,介绍了优化的SVM(支持向量机)分类器作为可行的决策引擎。通过设计一个适用的攻击模式,我们决定开发一个深入、细致的分析精度,和所有实验结果清楚地解释,提取的特征能很强烈地反映不断变化的连续模式功能操作,该算法可以有效地配合优化的支持向量机分类器来区分异常Modbus TCP数据流量。
1。介绍
Modbus TCP,这被认为是一个代表工业通信协议,已广泛应用于各种重要的基础设施,包括发电、轧钢、炼油厂、气体净化等。特别是IIoT的快速发展(工业物联网),许多工业无线领域合作Modbus TCP与其他无线通信协议来执行各种控制、管理和监视活动的移动设备或端点(1- - - - - -3]。作为一个典型的案例,一个无线网关可以成功Modbus TCP实现工业实时交通交付申请移动传感器或执行器。一般来说,Modbus TCP是用来完成不同的现场设备之间的信息交互和促进实际的管理和控制在工业过程4,5]。此外,Modbus TCP定义了主/从沟通方式,它利用的请求/响应方式实现主、从站之间的数据交换(6]。例如,当一个主站发送一个读或写请求消息,奴隶站构建一个响应消息执行不同的功能操作。此外,一个从站不能主动发送任何请求一个主站,和所有奴隶站禁止相互通信。根据协议规范,Modbus TCP属于一个实时通信协议在应用程序层实现的,其实质是将Modbus帧嵌入TCP协议的数据字段。更具体地说,函数代码是一个重要的基本的Modbus协议字段框架结构,它不仅可以表示请求消息的主要功能,还可以清楚地指出了特定类型的函数运算控制现场设备(7,8]。换句话说,所有关键功能操作在整个工业过程可以由一系列不同的函数代码,这个设计可以提高工业生产的效率通过简化过程控制和管理。然而,它也可以被恶意利用对手推出有针对性的攻击由于Modbus TCP的潜在安全漏洞。在传统的应用程序中,女性身体(工业控制系统)是孤立的,和所有不必要的外部访问可以被禁用。因此,Modbus TCP的原始设计忽略了隐私和安全问题,只有依赖于基本TCP安全机制。与IT(信息技术)之间的紧密集成和OT(操作技术),Modbus TCP逐渐暴露的潜在安全漏洞由于多个外部威胁。目前,许多科学家对Modbus TCP安全问题进行了大量的研究(4,9- - - - - -11),主要包括未经身份验证的访问函数代码滥用,未加密的数据交付,数据篡改和重放,等等。例如,当一个对手收益基于Modbus TCP访问工业控制系统,它不仅可以拦截所有关键设备状态和生产数据,还可以插入一些异常的函数代码摧毁常规工艺流程。也就是说,任何对手都可以伪造一个正常的Modbus TCP请求一个恶意的函数代码改变基本控制逻辑,对工业现场设备(执行破坏性操作12,13]。在某种程度上,Modbus TCP的潜在安全漏洞已成为突破攻击键控制组件,其故障可能造成严重的生产事故。
在大多数的安全措施,异常检测被广泛承认和由学术界和产业界的研究,因为它可以有效地识别已知和未知攻击而不影响ICS的可用性14]。尤其是基于机器学习算法可以提高异常检测的流行应用人工智能技术在信息安全领域,实现相对良好的效果在安全实践15- - - - - -18]。然而,在应用异常检测,一个关键的前提条件是设计一个优秀的功能生成和提取算法,必须继承原始数据的主要特征(15,19]。实际上,这些算法可以直接影响工作质量的异常检测的性能,和一个优秀的算法在一定程度上可以提高检测效率。不同于在传统IT系统高维复杂数据,工业数据通信提出了相对简单的特点和趋势由于周期性操作过程和稳定的系统结构(20.]。在大多数工业生产活动,过程控制是一个重要的组件,它可以间接反映一些工艺流程通过使用一系列连续的功能操作。相应地,他们是最直接与函数代码的变化规律在Modbus TCP数据流量(21]。从这个角度来看,算法提出了一种跟踪控制功能,通过分析连续跟踪特征提取功能驱动控制方式从Modbus TCP数据流量。此外,该算法不仅考虑了时间因素引起的每两个连续的功能操作之间的时间间隔也将与顺序控制预定义的关键特征的工艺流程。也就是说,该算法可以灵活地集成关键功能操作的时间因素和充分描述工艺过程的动态控制变化。为了密切配合这个算法,一个优化的SVM(支持向量机)介绍了分类器作为可行的决策引擎,这是应用结合三个不同的智能优化算法,包括算法(粒子群优化),GA(遗传算法)和网格。最后,我们设计一个适用的攻击模式评估SVM决策正确性,和我们的主要目的包括以下两个方面:一方面,基于功能驱动跟踪特征表示从连续函数代码,我们强烈证明提取的特征可以反映不断变化的连续模式功能操作;另一方面,与不同的智能优化算法相比,我们证明优化的支持向量机分类器能够有效地配合该功能算法区分异常Modbus TCP数据流量。
总结了本文的主要贡献如下:首先,根据连续控制方式在工业过程中,我们提出一种新颖的控制跟踪特性的算法,该算法可以有效地提取功能驱动跟踪特性,主要包括操作事件的概率特性和时间参数序列。其次,为了密切配合提出特征算法,我们选择支持向量机分类器作为可行的决策引擎并讨论最合适的优化算法,加强支持向量机的决策能力。第三,在实验评价,我们设计一个攻击模式来模拟一个可能的攻击,这充分利用匿名访问的安全漏洞和功能代码滥用。同时,我们给一个整体规模分析提出的临界参数的影响特性的算法。
2。功能驱动跟踪特征的描述和提取
在我们的控制算法跟踪特性,提取功能驱动跟踪特征从Modbus TCP数据流量通过执行以下步骤:首先,我们预处理Modbus TCP数据流量来提取操作事件序列,由一系列连续的函数代码;其次,基于PST(概率后缀树)(22,23),我们进一步进行工业过程的控制跟踪分析,构建一个功能关联树;最后,根据控制追踪和时间参数的概率,得到简化的特征向量样本的计算。
2.1。操作事件序列描述
从Modbus TCP数据流量在一段时间内 ,我们提取相应的函数代码的每个数据包按时间顺序和定义一个操作事件序列 这是由连续函数的代码。在这里,我们作为一个函数的代码操作事件,和代表了( )操作事件操作的事件序列 。此外,所有操作事件序列构造操作事件序列设置 。因为每个( )是由连续函数代码,其相应的时间间隔( )还包括的时间间隔连续函数代码, 。由于不同时间间隔的任何两个连续的函数代码,我们也有 当 。
2.2。功能关联树结构
一般来说,PST可以描述的概率特征序列集和礼物k定期安排必要的树节点。此外,每个叶子节点都可以表示一个跟踪路径从根节点到叶子节点,和 - - - - - -树的深度是节点,存储符号。描述,两个相邻节点的跳之前的条件概率可以表示一些符号。实际上,连续工业过程中的功能操作可以被视为一种跟踪路径从根节点到叶子节点,这跟踪路径定义为功能控制跟踪。在这里,每个叶节点包含一个功能控制跟踪序列,每个叶节点的值对应于一个概率值的操作事件序列。类似地,两个相邻节点的跳可以描述连续两个函数代码的改变在功能操作。图1显示功能关联树的施工过程。在这棵树,树的深度 ,这间接表达功能操作。此外,我们还假定所有控制跟踪序列包括不同的函数代码 。详细的过程描述如下:(1)创建树的根。(2)根据不同的函数代码,创建不同的分支。在每个分支中,有一个叶节点,包括两个变量,如 第一个叶子节点在图中。在这里,代表初始控制跟踪序列,代表相应的这个序列的概率,即跳跃概率从根节点到该叶节点(图中虚线所示)。(3)在每个叶节点,创建不同的分支。在每个分支中,有一个叶节点,包括两个变量,如 的第二个叶子节点在第一个叶子节点 。在这里,代表这个叶子节点的控制跟踪序列,和代表相应的这个序列的概率。此外,跳跃概率从第一个叶子节点这个叶子节点(图中虚线所示)可以表达的条件概率 。(4)在每一秒的叶子节点,创建不同的分支。在每个分支中,有一个叶节点,包括两个变量,如 第三片叶子节点在第二个叶子节点 。同样的,代表的功能控制跟踪序列这叶子节点,和代表相应的这个序列的概率。此外,跳跃概率从第二个叶子节点这个叶子节点(图中虚线所示)可以表达的条件概率 。(5)在类似的方式叶子节点进一步创建。如图,假设叶子节点和它的下一个叶子节点 。所以相应的变量 。在这里, 代表这个叶子节点的控制跟踪序列,和 代表相应的这个序列的概率。此外,跳跃的概率叶子节点这个叶子节点(图中虚线所示)可以表达的条件概率 。(6)毕竟叶节点创建,整个功能关联树构建成功。
根据上面的施工过程中,每个控制跟踪序列的概率可以计算条件概率从根节点到叶子节点。
假设控制跟踪序列 ,然后
在哪里 ( )表示接下来的概率函数的代码当之前函数代码 在操作事件序列。
例如,图中的虚线所示1,如果控制跟踪序列叶子节点 ;这个序列的相应概率可以被计算
3所示。功能因子选择和特征值计算
在功能因子的选择,我们不能只考虑单方面的角色控制跟踪序列的概率。通过我们的仔细观察,任何两个连续的功能操作之间的时间间隔在每个控制跟踪序列是不同的。换句话说,功能操作在工业过程与时间参数密切相关。为了建立一个关系控制跟踪序列的概率和时间参数,我们做以下设置和计算:
根据跟踪路径的功能关联树(假设控制跟踪序列 ),我们构造概率向量函数运算 ,它包含不同的变量。此外,在跟踪路径的 ,它还需要一些时间间隔来实现两个相邻叶节点的跳。在这种情况下,我们可以构造相应的区间向量 。在这里, ( ),和代表了两个连续的功能操作之间的时间间隔 。从上面的分析,我们认为概率向量和区间向量两个特征因素和计算特征值的点积操作这两个特性的因素如下:
总之,如果我们假设操作事件序列涉及到不同的功能操作(即不同的函数代码)和树的深度 ,我们可以计算特征值。也就是说,有特性值在每个特性的示例。
3.1。降维的特征样本
在上述设计,超大尺寸的特性,样本可能成为缺点,和特征样本的维数不断增加呈指数增长的树的深度。例如,如果我们假设一个工业过程包括四个不同的功能操作和树的深度是6,每个特性可以包含示例 特征值。在实践中,超大尺寸的特征样本可能有有害的影响支持向量机的决策能力,因为它可以花费大量的计算和存储资源。然而,由于有限的行为和状态在每一个工业过程,结合数量的功能操作可能需要在一个明显的下降趋势。因此,不同控制跟踪序列的数量在一个操作事件序列设置也有限,远低于 。更具体地说,我们可以减少功能关联树和叶节点的特征样本的维数在以下方面:首先,我们按时间顺序重新排列所有操作事件序列并确定数量所有的控制跟踪序列,在这里 ;其次,为每个操作事件序列 ,我们建立相应的功能通过使用这些协会树控制跟踪序列;最后,我们计算样本的特性 为每个操作事件序列 ,和每个特性样本的维数的变化 。
4所示。优化的SVM决策引擎
在决策引擎的设计中,我们选择经典的支持向量机分类器与上述控制算法跟踪特性。此外,通过使用上述功能样品,这个决策引擎可以训练一个数学模型来识别的统计偏差观察Modbus TCP数据流量。同时,为了加强其决策能力,我们使用三种不同的智能优化算法来优化其关键参数分别和我们的最终目标是获得一个最优决策引擎算法能够有效地配合该特性。
4.1。支持向量机分类器
支持向量机分类器(18,24,25),这是一个具有代表性的基于统计学习理论的机器学习方法,探讨了结构风险最小化,以改善其自适应生成能力。本质上,支持向量机分类器属于二元分类,它的核心思想是寻找一个最优超平面,可以产生很大的努力独立两类样本。对于线性不可分的样本空间,支持向量机分类器可以使用非线性映射算法改变原始数据空间到高维特征空间,进一步进行线性分析样品在这个空间的非线性特征。
特别是,通过引入松弛因子和惩罚因子 ,支持向量机总是旨在解决二次规划问题,可以进一步简化拉格朗日函数为
在哪里 是内核函数,通常包括RBF(径向基函数)内核,内核多项式,线性内核,等等。在我们的决策引擎,我们最后选择RBF核函数作为核函数,因为它有较低的复杂度实现非线性映射通过使用更少的内核参数。RBF核函数可以计算
在哪里是内核参数,它代表了这个函数的径向行动限制。最后,决策函数可以计算
在实际应用中,支持向量机分类器的性能可以在很大程度上受到惩罚因子的影响和核函数的参数,如RBF的内核参数 。此外,惩罚因子会影响利润最大化和样本误分类,和内核参数会影响数据分布和分离超平面的高维特征空间。不同的实验选择和设置,一些智能优化算法已经成功地应用于优化这些参数,实现相对令人满意的效果。
4.2。参数优化选择
全世界都知道智能优化算法已广泛应用于各种信息计算字段,并且他们可以进一步提高学习效率和工作性能通过求解单或许多客观优化问题26,27]。有效地配合该功能算法,支持向量机分类器必须优化最大的性能优势。然而,不同的智能优化算法的适用性可能显示伟大的变化由于他们不同的泛化能力和配合度。在我们的决策引擎,我们选择三个代表智能优化算法来比较不同的优化效果,和这三个算法已被证明对支持向量机的决策能力有积极的影响,许多研究人员。此外,这三种算法PSO (28,29日],GA [30.),和网格(31日),而支持向量机的训练过程基于参数优化的决策引擎呈现在图2。在每一个优化算法,可以获得健身价值通过使用当前支持向量机的决策正确性,和最优参数可以选择从全球最佳迭代。事实上,同样的训练样本,每一个优化算法可以生成一组最优参数,可以进一步获得最优支持向量机决策引擎相比。
5。实验分析和讨论
在我们的实验中,我们使用捕获的Modbus TCP数据流量(32)执行该功能算法和引入决策正确性评价指标比较SVM决策能力在三个优化算法。实际上,我们的主要目的是探索之间的匹配程度控制算法和支持向量机分类器跟踪特性和试图找到一个可行的智能优化算法获得最优支持向量机决策引擎。此外,我们定义一个适用的攻击模式,以便评估过程,这种攻击可以连续发送恶意功能码流干扰正常的功能操作。在实践中,这种攻击模式具有一定程度的实现可能性,因为它充分利用了滥用未经身份验证的访问和功能代码安全漏洞。不失一般性,我们也定义了四个不同的攻击力量通过改变恶意功能代码的数量,比例在每个操作事件序列的2.58%,3.87%,5.16%,6.45%,光功率的攻击,中等功率的攻击,大功率的攻击,分别和生命的袭击。此外,我们讨论支持向量机的决策能力的变化在不同的攻击力量。
5.1。可证明的降维
基于基本的工艺流程,我们定义一个操作事件序列的长度为155,即 连续函数代码在每个操作事件序列。预处理后,我们可以获得287原始操作事件序列和相应的时间间隔。类似地,我们可以进一步得到相同数量的正常特性样本计算的控制算法跟踪特性。然而,一个极其重要的问题是,大尺寸的特征样本可能浪费大量的计算资源和影响决策的能力时,应用支持向量机决策引擎。从理论上讲,每个特性可能由样本特征值在最极端的情况下,和相应的维度可能成为一个非常大的价值。幸运的是,我们的算法可以减少特征样本的维数,确定所有的控制跟踪序列的数量在实际的应用程序。图3给出了特征样本相比维度不同长度的控制跟踪序列。从这个图中,我们可以看到,随着控制跟踪序列的长度增加,之间的差距的实际尺寸和理论维度特征样本的增长越来越大。例如,当控制跟踪序列的长度是3、4和5,对应的差距达到4,57岁和588年,分别。上述定量比较充分说明我们的算法可以在降维产生所需的结果。
5.2。决策结果和分析
正如上面所讨论的,我们进一步控制跟踪序列的长度设置为3(即,树的深度 ),样品和相应的维度的特性是60。基于获得的特征样本,我们用离线的方式训练三个最优支持向量机决策引擎,其主要参数优化算法,遗传算法和网格。此外,表1介绍了在这三种智能优化算法优化的结果。从这个表中,我们可以看到三个优化算法可以实现不同组的惩罚因子和内核参数由于自己的优化机制,和训练支持向量机决策引擎不相同的结果在不同的关键参数。更具体地说,PSO展品的SVM决策引擎优化训练精度最高可达99.10%,高于这个值是4百分点优化的遗传算法和网格。此外,虽然训练时间未能达到期望的实时训练和优化,我们可以忽略其影响通过使用离线训练和在线检测的方法。
基于定义的攻击模式,我们产生600测试功能样品在每个实验中,主要包括200份正常特性样本和400年恶意特征样本。此外,我们记录的数量特征样本正确分类和计算其决策正确性的百分比。对于每个级别的攻击强度,我们进行10个不同实验的恶意样本是由锻造和插入异常功能生成的代码和支持向量机的决策精度的变化。图4比较三个优化的SVM决策引擎的精度决定在四个不同的攻击力量,和表2给出了相应的平均精度决定。从表2,我们可以看到三个优化算法可以满足他们的要求实现三个有前途的SVM决策引擎,平均精度决定每个攻击强度下没有显著差异。作为一个整体,SVM决策引擎优化算法产生能力的最好的决定,因为它决定每个攻击强度下精度最高。更具体地说,其平均精度决定探测光和生命的攻击可以达到87.82%和97.40%,分别是1和0.5高于最低的一个支持向量机决策引擎通过GA优化。此外,随着攻击强度的增加,平均决策精度优化算法变得更大。换句话说,当恶意功能代码的数量在每个操作事件序列的增加,可能成功地检测异常功能操作的优化支持向量机决策引擎也会逐渐增强。决策时间的平均值的SVM决策引擎优化算法可以达到0.01968 s,这是足够短,以满足实时需求的工业生产。从上面的实验结果和分析,我们可以得出结论,一方面,拟议的功能算法可以充分反映连续不断变化的模式功能操作,和一个功能操作的微小变化可能会带来一个很大的不同特性值,可用于提高决策精度;另一方面,支持向量机分类器可以选择作为一个适用的决策引擎配合提出功能算法,和PSO优化算法可以提供最杰出的贡献SVM的决定能力通过比较与其他代表优化算法。
在实践中,决策正确性的波动可以间接反映SVM决策能力的稳定性,因为决策正确性的波动可能会导致在某些情况下精度相对较低的决定。对于每一个攻击强度,更大的决策正确性之间的分歧在每个实验和平均决策正确性,决策正确性的波动越大,稳定性较差的SVM决策能力。在概率统计的相关理论,标准差,描述了个体之间的离散程度,是最常用的测量统计分散。从本质上讲,较大的标准差代表分散就越大。在我们的评估中,我们介绍了标准偏差,进一步分析不同稳定性的三个优化的SVM决策引擎,和图5描述了相应的决策精度标准偏差在四个不同的攻击力量。如数据所示4和5,攻击强度的增加,标准差的决策精度优化支持向量机决策引擎逐渐减少。就是说,决策正确性之间的分歧在每个实验中,平均决策变得越来越小,精度和稳定性的优化支持向量机决策能力变得越来越好。然而,从实验结果表2,虽然SVM决策引擎PSO优化的最杰出的决策能力,其标准差最大光功率下攻击,和相应的稳定是远不能令人满意。不同,其他的SVM决策引擎决定稳定性相对较高,但是他们的决策能力稍逊一筹。在实际应用中,我们应该选择一个适当的智能优化算法来优化支持向量机分类器根据特定的场景和需求。
5.3。控制跟踪序列长度的影响
提出了控制算法跟踪特性,长度控制跟踪的序列是一个预配置变量,这可能影响支持向量机决策引擎的决策能力。一方面,它实际上是容易理解的决定时间的增长无疑会增加因为特征样本的维数变得更高。另一方面,决策正确性还可以在不同程度的变化增加或减少。在我们的实验中,我们选择 为了说明这一点,因为特征样本的维数可以大于操作事件序列的长度 。图6描述了决策正确性的比较三个优化支持向量机决策引擎不同长度的控制跟踪序列,每个平均决策正确性,这个数字也计算了10个不同的实验。根据这个图的直接表现,我们可以得出以下结论:首先,当 ,的支持向量机决策引擎优化算法仍有能力的最好的决定通过比较的平均精度决定三个优化的SVM决策引擎;另一方面,所有的平均精度决定三个优化SVM决策引擎提高到一个更高层次控制跟踪序列的长度增加时在每个攻击强度。总之,如果我们选择一个支持向量机分类器适用的决策引擎,我们应该设计一个合适的在综合考虑决策的准确性和计算效率。
5.4。改变了时间参数的影响
在我们的控制算法跟踪特性,参数的时间(间隔向量 )被选中作为一个重要的特征因素来计算最终的功能价值,和时间参数的变化可以启动动态修改功能示例。不失一般性,当一个人的对手想要启动攻击,连续两个功能操作之间的时间间隔也会改变。为了说明时间参数变化的影响,我们还执行10个不同的实验来比较平均决策精度和相应的攻击强度属于生命的水平。在这些实验中,我们开发两个假设的场景:一个是给定的攻击可以生成改变时间参数,另一个是,给定的攻击不会导致时间参数的变化。此外,我们选择的SVM决策引擎优化算法作为实验对象,因为其他优化SVM决策引擎将有一个类似的存在。图7显示其决策正确性比较下改变了时间参数和不变参数。直观地说,平均下决策正确性不变时间参数仅为95.22%,小于下一个改变时间参数。根据比较的结果,我们认识到,改变了时间参数可以提高平均决策的准确性在一定程度上优化的SVM决策引擎。换句话说,引入时间参数控制跟踪功能算法可以提供一个有效的作用,提高决策能力的支持向量机决策引擎。
6。结论
专注于工业过程的连续控制方式,提出了一种跟踪控制功能算法提取功能驱动跟踪特征从Modbus TCP数据流量。此外,该算法不仅考虑了时间因素引起的每两个连续的功能操作之间的时间间隔也将与顺序控制预定义的关键特征的工艺流程。为了有效地配合这个算法,介绍了经典的支持向量机分类器作为一个可行的决策引擎,和三个智能优化算法相比,优化其主要参数。最后,实验评价表明,一方面,本文设计一个适用的攻击模式分析支持向量机的决策准确性,和实验结果证明该功能算法可以充分反映不断变化的连续模式功能操作,和PSO优化算法可以提供最杰出的贡献支持向量机的决策能力;另一方面,本文给出了定量讨论决策正确性的影响引起的控制跟踪序列的长度和时间参数,可以发挥强大的作用在提高决策支持向量机决策引擎的能力。
数据可用性
使用的数据来支持本研究的发现可以从相应的作者。
的利益冲突
作者宣称他们没有利益冲突的报告对于本研究。
确认
这项工作是国家重点支持的R & D计划,研究和开发智能工厂的工业网络系统传输性能优化技术和验证平台,科学技术部的中华人民共和国(批准号2018 yfb1700103),辽宁省教育部门的科研项目(批准号LJKZ0082)。