工业物联网中的操作技术攻击检测系统
原文
System for Operational Technology Attack Det
申明
版权归原文作者及出版单位所有,如有侵权请联系删除。
摘要
工业控制系统(ICS)可以被远程控制,从而方便管理和提高生产 力,但代价是容易受到攻击。破坏关键系统的运行可能是灾难性的,并导致不同类型的灾难。因此,在不可逆转的损害发生之前,在早期阶段检测操作过程的异常是至关重要的。入侵检测系统在根据系统的预期运行方式以及不被认为是正常运行的情况进行训练时,可以检测到运行故障。在目前的工作中,我们提出了SOTAD,一个操作技术攻击检测系统,以检测工业 物联网中的恶意干预。SOTAD概述了创建检测模型的步骤、 用于训练的数据和允许高检测率的监测时间段。评估的SOTAD检测机制是阈值基线检测和二元逻辑回归(BLR)。这些模型是利用现场设备的数值进行的。使用从iTrust获得的两个数据集,即安全水处理(SWaT)和水分配(WADI),对提议的方法进行了实验验证。这两个数据集代表了现实世界的工业过程 ,由良性和恶意的数据样本组成。
1. 简介
工业控制系统(ICS)被广泛用于不同的领域,包括制造业和关键基础设施,如水处理设施、电力分配等。[1] 这些系统的物理过程是通过监督控制和数据采集(SCADA)系统控制和监测的。SCADA系统使用人机界面(HMI)、远程终端单元(RTU)和可编程逻辑控制器(PLC)来管理和监控物理过程的操作流程[2]。ICS是由几个物理过程组成的,每个过程负责系统的一个特定部分,并由一个或多个PLC设备控制。每个PLC与一些表示为传感器和执行器的现场设备相连,它们负责控制这些设备。PLC保存它们从现场设备收到的信息,并将数据转发到HMI,用户可以观察和分析设备的状态。PLC可以接收来自HMI的请求,修改现场设备的设置[3]。不同设备之间的通信是使用常见的SCADA通信协议进行的,如Modbus、DNP3.0等。从ICS环境中可以获得两种信息;即网络流量和现场设备测量。
现在,ICS越来越多地与互联网相连,系统的物理过程可以被远程监督和控制。对这些系统的远程访问和控制大大改善了管理和服务质量。然而,这些系统与网络空间的整合以及通信协议的漏洞使它们容易受到攻击[4]。ICS现在很容易受到入侵者的影响,这些入侵者旨在通过发动操作攻击来破坏行业的运作流程。破坏系统的运行可以通过操纵现场设备的值、注入伪造的数据包等来实现。单一的异常情况可能会对整个系统造成严重后果,从而影响部分或全部的操作。已经提出了预防性的安全措施,以确保现场设备的操作在可接受的范围内。然而,有一些攻击,如果范围是已知的(通过侦察攻击),可以不被注意到。
入侵检测系统(IDS)的目的是在对预期的攻击和通过了解系统的正常和异常操作进行训练时,检测出恶意的干预。人工智能(AI)和机器学习(ML)技术已经被提议作为IDS的检测机制。很多研究已经使用神经网络[1],[5],支持向量机(SVM),K-近邻(KNN)和决策树(DT)来检测操作攻击[6]。目前的工作提出了一种有监督的轻量级方法,即二元逻辑回归(BLR),以及每个受影响的现场设备的阈值基线模型,并根据检测率和准确率对其性能进行评估。目前的工作提出了操作技术攻击检测系统(SOTAD)方法,利用现场设备的测量来检测水管理关键基础设施的操作攻击。iTrust的安全水处理(SWaT)[7]和水分配(WADI)[8]数据集被用来评估SOTAD。
这项工作的贡献有四个方面。
1)使用阈值和BLR进行综合实验
2)调查监测期的间隔对检测ICS攻击的作用
3)实施一个一般的和特定过程的模型来检测ICS中的操作攻击
4)调查初始化和恢复阶段对检测模型的影响
2. 相关工作
长期以来,人们一直建议ICS系统使用异常检测的入侵检测系统来检测网络内的操作攻击或物理故障。许多IDS采用不同的机器学习模型。机器学习技术可以分为两类:一、有监督和二、无监督。
监督检测模型是使用代表正常/良性和异常/恶意行为的数据样本建立的。这些模型经历了一个训练阶段,在这个阶段,模型是用两种行为的数据样本建立的。使用从未见过的数据对模型进行评估,并将其映射为良性或恶意行为。在[5]中的工作,提出了一个使用进化中的尖峰神经网络(ESNN)算法的异常检测框架。该模型使用从天然气管道、实验室规模的水塔和实验室规模的电力传输系统中检索的三个数据集进行了评估。结果显示,该模型能够以可靠和有效的高学习速度检测ICS的异常情况。[6]中的工作模拟了五种监督算法:K-最近的邻居、支持向量机(SVM)、决策树、Nave Bayes和多层感知器。它们的性能在离线和在线分析中进行了比较。SVM和KNN获得了最好的结果,准确率高,假阳性和假阴性率低。在[2]的工作中,使用了一个改进的DenseNet方法和NearMiss技术来识别异常。DenseNet是一个有监督的深度学习卷积神经网络。在实验中,他们使用了SWaT数据集。所提出的方法与其他最先进的研究进行了比较,显示出更好的结果。在[1]中的工作,也使用了深度学习技术,特别是1D卷积网络来追踪异常情况。与其他比较研究一样,他们使用SWaT试验台进行实验和验证。他们的方法成功地检测了大部分的攻击。
与监督学习相反,无监督机器学习算法只使用正常行为的数据样本,创建一个被认为是可接受的操作活动的空间,任何偏离该空间的行为都被归类为不正常。[9]中的工作使用Recurrent神经网络(RNN),一种无监督的算法,使用SWaT数据集来检测ICS中的攻击。他们的方法成功地找到了大部分的攻击,而且假阳性率很低。此外,他们还能够识别系统中被攻击的传感器。在[10]的工作中,结合多层感知器(MLP),一种深度学习方法,以及统计方法CUSUM,使用无监督的方法来检测系统中的攻击。为了进行实验和评估,他们使用了SWaT数据集,结果是有希望的,因为他们能够检测到隐蔽的攻击。[11]中的工作,使用了无监督的机器学习算法,如单类SVM(OCSVM)、隔离森林和椭圆包络。他们的方法是使用iTrust的WADI数据集创建和评估的。他们的实验显示,单类SVM的表现比其他算法更好。在[12]中的工作,比较了单类SVM和深度神经网络,使用了在SWaT数据集中的现场设备数据。研究的结果是,DNN包含较少的误报,性能指标高于OCSVM。另一方面,OCSVM检测到的攻击略多。在[13]的工作中,使用了监督机器学习算法,如决策树、逻辑回归、SVM、K-近邻等,以及非监督算法OCSVM,这是SVM的一个变种。他们分析并检测了一个工业控制网络中的攻击。研究表明,OCSVM呈现出最好的结果,因为它实现了高检测率。在天然气管道和储罐数据集上进行了实验。在[14]的工作中,比较了SVM和OCSVM作为物联网(IoT)中路由网络层攻击的检测模型和结论是,SVM有更好的检测率。
目前的工作提出了一个IDS框架,并在两个数据集中进行了评估,结果表明,操作读数的监测和评估时间间隔在检测攻击方面至关重要。异常检测采用了监督学习技术BLR,这是一种计算量较小的技术,具有传感器/执行器的价值。为每个受影响的现场设备建立了阈值模型进行比较[15]。
3. 检测模型和检验数据集
本节介绍了监督检测技术(BLR)以及用于创建和评估SOTAD的数据集的描述。探测模型是用一部分数据集创建的,其余的数据集被用来评估它们。本节还介绍了用于评估模型的性能指标。
A. BLR检测模型
二元逻辑回归(BLR)已被用作无线传感器网络(WSN)和物联网(IoT)中的异常检测模型。这些检测模型经过训练和评估,用于检测网络路由层的攻击,并显示其检测精度超过96%,最高为100%[16]-[19]。这两种技术都经历了一个训练阶段,其中数据被用作训练和创建模型的输入。通过训练阶段,最重要的特征,即数据变量,被识别并用于创建检测模型。
BLR分析和预测二分法的结果。它根据一组自变量来预测一个二元因变量。在本研究中,需要预测的因变量是传感器读数是否异常[20]。创建的检测模型是一个概率方程。在评估阶段,它计算出数据是 "恶意"的概率P(见公式(1))。如果P等于或大于0.5,则数据被归为恶意。
公式(1)
其中n是重要数据变量的数量。每个xi 代表ith变量的值,α是常数,β是回归系数。
B. 数据集
两个水管理数据集被用于创建和评估SOTAD,即水分配(WADI)和安全水处理(SWaT)[8]。这些数据集是由一个真实的水分配测试平台设施汇编而成,该设施是为工业控制系统(ICS)的研究目的而创建的。这两个数据集包括从设施的正常运行和受到攻击时捕获的操作流量。
1)配水-WADI:配水系统是供水方式的一部分。WADI系统的运行被分成三个主要过程,分别是P1、P2和P3。每个过程负责系统的不同部分,由一组PLC控制(见图1)。P1负责供水,P2负责配水,P3负责回水。然而,一个或多个过程的中断会影响整体的运行。组成一个特定过程的不同传感器和执行器被连接起来,并将其数据发送到相关的PLC。在目前的工作中,使用了12月19日的A2采集的WADI数据集。该数据集包含来自现场设备的数据,这些设备运行了[14]在正常运行的情况下是两天,在发射时是两天。[15]攻击。在WADI测试平台上使用的攻击旨在通过改变系统的物理操作来破坏系统的运行。
图1 WADI的主要流程
2)安全水处理-SWaT:SWaT[7]系统由六个相互联系的过程组成,表示为P1至P6来模仿现实世界中的水处理厂(见图2)。第一个过程P1接受原水并将其储存在水箱中。P2进行水质检查,如果认为有必要就进行化学加药。P3过滤水和P4应用脱氯。P5,使用反渗透(RO)系统来减少水中的杂质。P5的结果是将完全过滤的水储存在位于P6的原水箱中,或需要进一步清洗的水。废水被储存在同样位于P6的超滤水箱中。P6将清洁的水进行分配,并启动超滤池的反冲洗过程。反冲洗过程每30分钟触发一次,超滤池的水被输送到P3工艺[7], [21]。
图2 SWaT的主要流程
与WADI一样,SWaT系统的每个过程都由一组PLC控制,其状态可以从SCADA系统中观察到。对于实验设置,我们使用了12月A2收集的SWaT数据集,其中包含传感器/执行器数据和网络流量,总共有11天的操作,其中7天是正常行为,4天是异常行为,同时共发起了41次攻击。然而,其中只有36次对系统产生了物理影响。只有包含现场设备测量值的数据被使用。
SWaT测试平台中的攻击旨在通过改变现场设备的值或它们的状态来破坏系统的物理运行,通过使用劫持数据包来实现,SWaT网络的数据通信链路[12]。这些攻击分为四种类型。单阶段单点(SSSP),单阶段多点(SSMP),多阶段单点(MSSP)和多阶段多点(MSMP)。
C. 评测结果
为了评估我们的SOTAD方法,我们使用了一些性能指标。准确率/ACC、精确度/PPV、召回率/TPR、MCC、F1分数和假阳性率。
真阳性(TP)和真阴性(TN)是正确的数据分类,分别为恶意和良性,而假阴性(FN)和假阳性(FP)表示不正确的分类,恶意数据被错误地分类为良性,反之亦然。
这两个数据集是不平衡的,因为正常类包含的信息比恶意类多得多。因此,准确度(ACC)指标是不够的,它不被认为是一个可靠的措施。[22] 一个更适合使用的指标是马修相关系数(MCC),它不受不平衡数据集的影响,因为它考虑到了所有的分类警报,可以作为评估模型有效性的指标[23]。MCC评价检测模型,检测模型是否不能做出任何正确的分类(值-1),或任何正确的分类是随机得出的(值0),以及检测模型是否是最合适的(值1)。
F1分数计算的是精确率和召回率的平均值。F1分数的结果是在0和1之间。当F1分数接近1时,模型的性能就越好。假阳性率(FPR)被用于以确定系统中的错误警报,即模型将良性数据错误地归类为恶意数据。
4. SOTAD实施
本节介绍了用于创建SOTAD的方法和预处理分析。介绍了用于当前工作的BLR监督检测技术和阈值方法。还介绍了从数据集中提取所需信息的步骤。检测模型是用一部分数据集创建的,其中包括良性和恶意的痕迹。
A. 系统阶段
从模拟的水资源管理系统中得出三个阶段:初始化阶段、稳定阶段和恢复阶段。一个典型的系统包括两个主要阶段:初始化阶段,这是系统的第一个状态;稳定状态阶段,在这个阶段,系统稳定到预定的运行状态。初始化阶段在系统达到其正常行为之前可能需要几个小时。在系统达到正常运行,即稳定状态后,它将一直保持这一状态,直到它遇到任何干扰,如系统故障或攻击。在发生中断的情况下,一旦注意到故障,那么系统就会进入恢复阶段,以恢复系统的正常运行。图3显示了ICS的各个阶段。
图3 综合监控系统的各个阶段
恢复阶段的时间根据攻击的影响而变化。达到系统正常运行所需的恢复时间取决于攻击的影响。攻击可以影响系统的一部分,也可以影响整体运行。在这种情况下,恢复数据可以训练系统在系统经历恢复阶段时不发出警报,以减轻错误警报率。然而,这取决于系统的关键性、攻击的类型和稳定值。如果攻击值与稳定值相似,那么系统将无法在这段时间内对入侵发出警告。
B. 数据预处理
为了创建和评估检测模型,对数据集进行了预处理。给定的数据集包含每秒钟从现场设备获得的记录数据。第一步是将数据分类为良性或恶意的。良性数据被标记为 “0”,恶意数据被标记为"1"。每个攻击都有不同的持续时间、设备目标和强度。例如,在SWaT中,最长的攻击时间为34208秒,最短的为100秒;而在WADI中,最长的攻击时间为1740秒,最短的为87秒。
恶意数据集既包含攻击发生时的恶意行为,也包含攻击发生前或发生后的系统行为。这个阶段的系统被表示为恢复阶段,但被认为是正常操作,数据被标记为"0"。SWaT数据集由图4所示的初始化阶段组成,从时间0到16000秒。初始化阶段被用来评估包括或排除它对检测干预的重要性。实验数据集包括从时间0到16000秒的初始化阶段。初始化阶段在WADI数据集中不存在。
图4 初始化阶段的流量计传感器
监测期间隔(MPI)是系统运行流量的监测期。在每个时期结束时,对每个现场设备的读数进行平均,以捕捉系统中的任何异常情况。对多个MPI进行了评估,以估计基于攻击检测的最佳MPI。数据集包括两种类型的现场设备,一种是具有特定状态(开、关等)的传感器/执行器,它们使用整数来定义其状态(0,1),另一种是具有非整数值的非特定状态。各种MPI值被用来识别这两类设备的任何变化。
1)二元逻辑回归模型。
为了演示实验,来自给定数据集的数据被分成了"初始化数据"、“正常数据”、"攻击数据 “和"恢复数据”。此外,初始化数据、正常数据和恢复数据被分为良性的–‘0’,攻击数据被分为恶意的–‘1’。这些模型的良性数据被分成两类。“干净的良性数据”(CL),只包括系统在正常条件下运行时检索的良性数据;“干净的恢复数据”(CLR),包括恢复阶段的良性数据。为了构建CLR良性数据,恢复数据被从恶意数据集中提取出来,并添加到干净的良性数据集中。这样做的主要目的是为了评估恢复阶段对系统的影响。为了分析初始化阶段的影响,上述阶段被添加到CL和CLR良性数据中。用于1秒MPI的数据记录在表I中列出。然而,数据样本是根据正在研究的MPI而改变的。
表1 数据集样本在1秒的MPI下的表现
我们的方法包括建立一个一般的和特定过程的检测模型。一般的检测模型可以检测ICS网络中的攻击,而特定过程的模型可以给出被攻击的现场设备的位置。对于特定过程的模型,在给定的数据集中的每个传感器/执行器读数被我们的方法包括建立一个一般的和特定过程的检测模型。一般的检测模型可以检测ICS网络中的攻击,而特定过程的模型可以给出被攻击的现场设备的位置。对于特定过程的模型,在给定的数据集中的每个传感器/执行器读数被与它相关联的进程进行映射。同样的情况也适用于恶意数据,因为每次攻击都是操纵一个传感器/执行器的读数。每个过程都是由一些负责执行程序的现场设备(如阀门、泵等)组成。因此,如果一个过程中的一个现场设备被破坏,那么导致异常的攻击就与这个过程相关。如果一个攻击是在一个以上的过程中进行的,那么它将与每个受影响的过程相关联。表二和表三列出了与每个进程相关的攻击数量。在一般模型中,恶意数据被原封不动地使用,没有必要进行攻击分离。
表2 与WADI数据集中每个进程相关的攻击表3 与SWaT数据集中每个进程相关的攻击
利用帕累托原则和80:20的规则定义,将良性和恶意数据集进一步划分为训练和评估数据集。使用训练集对模型进行训练,并使用评估集进行评估。最终的训练集是通过从衍生的良性和恶意数据集中分别随机选择80%的数据样本进行的。为了确保所有的攻击都被用于两个新的衍生模型中,我们对每个攻击都使用了80:20的帕累托原则。评估集包含了其余20%的恶意和良性样本。新的衍生模型随后被输入到BLR检测方法中,以定义和识别受影响的进程以及导致异常的具体攻击。
2)阈值。
对每个受到攻击或受其影响的设备进行了阈值模型[8],如果设备的值超过预先配置的限制,就会触发警报。阈值模型是以1秒的MPI进行评估的。四次攻击也被省略了,因为没有任何信息可以将攻击与目标现场设备进行映射。
为了确定阈值限制,使用设备的CL数据值计算最小、最大、平均和标准偏差。最小和最大指标被一起使用,以确定每个设备在正常运行时的数值范围。最小值是指标的最低值设备,并被作为下限阈值。最大值表示最高值,被设定为上界阈值。任何低于下限或高于上限的值都会发出警报。在这两个阈值范围内的值被归类为正常。下一个阈值使用设备正常数据的平均值和标准偏差。阈值的上限和下限是用平均数的标准差来确定的。为了确定每个设备的阈值边界,使用了其CL数据的80%。每个设备的评估集包括剩余20%的CL数据和与当前设备相关的攻击数据。在评估阶段,如果一个警报被提出,它被归类为恶意的。相反,如果一个值在上下限的范围内,则被归为良性。我们进行了两组实验,包括或省略了初始化阶段,以评估其对结果的影响。
来自恢复阶段的数据没有包括在内,因为据观察,它引发了多个错误警报,良性的数据被错误地归类为恶意的,反之亦然。在恢复阶段,设备试图达到它的正常值,在这个阶段中,假警报将被提出。图5显示了SWaT中LIT401设备在恢复、正常和受攻击操作时的数据读数。如果模型使用恢复阶段来确定极限值,设置阈值会错误地将恶意行为归为良性。当包括恢复数据时,同样的结果也显示在WADI数据集中。
图5 LIT401在SWaT数据集上的正常攻击和恢复区间
5. SOTAD检测分析
本节介绍了使用阈值和BLR方法的SOTAD方法的评估结果。BLR检测模型使用多个MPI和数据集组合进行了评估。结果用性能指标和检测到的攻击数量来表示。
表4 在BLR分析中使用1分钟MPI和SWaT的一般模型的攻击检测表5 使用1分钟MPI和WADI的一般模型进行BLR分析的攻击检测
A. 阈值评估
在SWaT和WADI数据集中,为每个受到攻击或受其影响的现场设备设置了阈值模型。
结果显示,几倍于阈值的模型可以识别系统中被破坏的现场设备。然而,在某些情况下,模型提出了许多错误警报,因为它们将良性数据错误地归类为恶意数据。为了达到最佳的阈值结果,每个设备的阈值必须根据现场设备的读数来设置,但也要根据取得最佳结果的统计函数(最小、最大、平均和标准偏差)。这充分说明,在为每个设备选择最合适的指标之前,应首先评估所有的指标。图6显示了使用所有统计函数设置的阈值模型。使用标准偏差和平均数设置的阈值检测到了攻击,而最小和最大未能做到。
图6 当攻击反映在SWaT数据集中的现场设备MV303上时的阈值模型
有些情况下,阈值无法检测到攻击的存在。在WADI数据集中,有5个设备(3个传感器和2个执行器),由于攻击和正常值非常接近,因此无法确定阈值。更具体地说,考虑到WADI数据集,阈值模型不能引起五次警报。表六显示了总结阈值方法的预测结果的一般模型。对于每个数据集,每种类型的警报总数被用来得出MCC和F1分数。这两个指标都很低。具体来说,MCC低于0.27,F1-score低于20%。误报率很高,表明模型将许多良性数据错误地分类为恶意的。因此,上述的结果表示该模型的性能很低。
表6 使用阈值模型的两个数据集的报警情况
1)初始化阶段对阈值模型的影响。
SWaT数据集包括一个初始化阶段,在此期间,现场设备的数值没有达到正常的运行状态。当初始化阶段被包括在定义阈值中时,它比排除初始化阶段时有更多的假阴性警报(见表六)。没有初始化阶段,MCC和F1分数更高,FPR更低。
B. 监测期的间隔对检测ICS中的攻击的作用
使用BLR和不同的数据集阶段对多个MPI值进行评估,以确定检测攻击所需的监测期。每一个MPI的CLR和CL良性数据以及SWaT和WADI的恶意数据被分组。在每个MPI结束时,数据值被平均化。对于BLR,训练和评估数据被用来创建一般和特定进程的模型。在BLR评估阶段,BLR将MPI分类为恶意或良性。为了确定正确得出的攻击的真实数量,每个MPI都必须与它相应的攻击ID相关联。
表七显示了被评估的MPI值和使用CLR数据的相应结果。由于使用CLR数据时的结果相同,所以省略了CL的结果。在一个MPI(>1秒)期间,有一些情况发生了不止一次的攻击。如果是这种情况,这些攻击被称为并发攻击。每个攻击对进程有不同的持续时间。一个攻击可能已经进行了几个小时,几分钟或仅仅一分钟。在评估阶段,如果检测到有两个并发攻击的MPI,就认为模型可以捕获这两个攻击。此外,在较高的时间间隔内(≥2分钟),持续时间较短的攻击只能被包括在训练或评估集中。如果攻击没有被纳入评估集,它们就被归类为缺失的攻击,不被认为是要评估的攻击之一。
表7 SWaT和WADI一般检测模型中MPI的影响
结果表明,MPI会影响检测模型的性能。两个数据集中的1秒和1分钟的MPI都能检测到大部分的攻击,而且误报率低,MCC和F1分数高。大多数情况下,这两个MPI的结果相似。有些情况下,1秒的性能比1分钟的略好,反之亦然。这是因为MPI高度依赖于攻击时间、类型和对ICS系统的影响。考虑到1分钟MPI的计算开销较低,它被认为是一个比1秒更好的解决方案。(≥2分钟)的MPI也能检测到几种攻击,但包含各种缺失和并发的攻击。随着MPI的增加,缺失和并发攻击的数量也在增加。其余的结果讨论是针对1分钟MPI的情况进行的。
C. 一般和特定过程的模型
为了检测ICS系统中的攻击,我们创建了两种类型的检测模型,分别为一般模型和特定流程模型。如第四节所述,使用BLR来创建检测模型。探测模型是为每个实验创建和评估的数据集。实验数据集包括恢复和初始化数据,或者两者都不包括。
WADI由三个主要过程组成。P1、P2和P3。如[8]所述,只有P1和P2处于attack之下。由于没有恶意的数据,进程P3被忽略了(见图1)。对于每个实验数据集,创建了三个检测模型,一个包括P1和P2数据(一般模型),两个检测模型,每个进程一个。一般模型能够检测所有的攻击,但不能提供攻击的位置。特定进程的模型能够检测到大多数的攻击,假阳性率低,并显示出可能的位置(见表八)。还为SWaT数据集建立了检测模型。SWaT由6个独立进程组成,表示为P1至P6。所有进程都有业务攻击(见图2)。对于每个实验数据集,创建了七个模型,分别表示为一般模型和特定进程模型,每个进程一个。结果显示,大多数检测模型都检测到了大多数的攻击。
1)初始化和恢复阶段对检测模型的影响。
检测初始化和恢复阶段的效果的实验是在两个数据集上进行的。对初始化阶段的评估只在SWaT数据集中进行。同样的实验是在一般模型和特定过程模型上进行的。这些模型被分成两类。
1.有或没有初始化阶段的CL良性数据的模型
2.有或没有初始化阶段的CLR良性数据的模型
2)BLR分析。
WADI和SWAT的一般模型的BLR分析结果分别见表五和表四。所有的一般模型都能检测到大部分的攻击。然而,有些模型的性能比其他模型好,检测到的干预数量较多,F1分数、MCC和误报率较低。
考虑到SWaT数据集,最好的模型可以检测到几乎所有的攻击(35/36),而最差的模型可以检测到21/36。当使用没有初始化阶段的CL数据对模型进行训练和评估时,互换是可追踪的,模型可以很容易地检测到几乎所有的攻击。当使用CL良性数据而不是CLR进行训练和评估时,模型的结果更好。这是因为恢复阶段的持续时间根据攻击对系统的影响而变化的。。因此,这个阶段并不总是有助于找到现场设备读数的变化,因为这些值可能与攻击值相似,模型可能无法区分它们之间的差异。另一方面,考虑初始化阶段并没有极大地影响攻击检测的数量。然而,它影响了检测到的攻击类型,而且由于它的存在,性能指标MCC和F1分数略低。
更具体地说,用CLR数据训练和评估的模型,包括初始化阶段,可以检测到持续的行为(如持续开启)和由新设置引起的变化,如对恒定异常值的变化。相反,这些模型通常不能检测到传感器值的渐进式变化(如攻击#3、#16),也不能对执行器状态的变化发出警报(如从ON到OFF#29)。此外,在大多数情况下,他们无法检测到超出范围的变化(例如第7、31、32、33号攻击)。考虑到WADI数据集,CL和CLR模型可以检测到所有的攻击,并且包含类似的结果,具有很高的性能指标。然而,CL模型的性能指标略有提高,FPR为0%。这表明,如果发出警报,那么系统肯定会受到损害。
表八、九和十显示了特定进程模型的结果。在所有情况下,这些模型都能够识别指定进程中的恶意干预。它们中的大多数都能以较高的性能指标和较低的误报率检测出大部分的攻击。
表8 使用1分钟MPI和WADI中特定流程模型的BLR分析中的攻击检测
当恢复阶段包括在训练和评估中时,特定过程的模型具有与一般模型类似的行为。然而,恢复阶段对特定过程模型的影响并不像一般模型那样大。大多数情况下,没有恢复阶段,性能指标会略有提高。
表9 在BLR分析中使用1分钟MPI和SWaT中特定流程模型的攻击检测情况
另一方面,考虑到SwaT的初始化阶段,有些过程比其他过程受到的影响更大。然而,初始化阶段对误报率的影响更大,因为当它被排除时,误报率几乎为0%,当它被包括时,误报率略高。所有不包括初始化阶段的CL特定流程模型(见表九)显示FPR为0%。这表明,如果系统中出现警报,那么指定的过程就会受到影响。
表10 在BLR分析中使用1分钟MPI和SWaT中Initiliazation阶段的特定流程模型的攻击检测情况
6. 讨论和结论
在这项工作中,我们实施了SOTAD,即操作技术攻击检测系统,以检测工业物联网中的恶意干预,使用BLR监督机器学习算法以及阈值来检测工业控制系统(ICS)的攻击。我们使用来自两个数据集的现场设备测量结果验证了我们的方法,这两个数据集代表了现实世界的工业流程。使用BLR方法,采用了两种类型的模型,即一般的和特定过程的模型来定义痕迹中的推导。对每个受影响的现场设备也建立了一个阈值模型。为调查恢复和初始化阶段的影响以及监测期间隔(MPI)对检测ICS攻击的作用,进行了一些实验。
阈值模型是使用干净的良性(CL)数据进行训练和评估的,因为通过恢复,他们将无法确定现场设备的原始值限制。结果显示,阈值模型能够识别大多数的攻击。然而,用于评估模型的F1分数和MCC指标很低,而误报率很高,表明阈值模型并不令人满意。此外,观察初始化阶段的影响的实验表明,如果没有初始化阶段,系统中的性能指标和正确警报的数量都会略有改善。
一般模型和大多数特定过程模型都能成功地检测到大多数攻击,并具有较高的性能指标和低误报率。一般的模型可以指示系统中的干预,而特定过程的模型可以指定被破坏的现场设备的可能位置。
BLR分析表明,恢复阶段对这两个数据集有不同的影响。当恢复阶段被排除时,SWaT中的一般模型的性能得到了提高,而具体过程的模型则没有受到很大的影响。然而,在大多数情况下,如果没有恢复阶段,它们的性能会略高。在WADI中,当它被包括在内时,一般模型和特定流程模型都受到轻微影响。如结果所示,在大多数情况下,当恢复阶段被排除时,两个数据集和模型类型的性能指标都得到了改善。
恢复阶段可以训练系统在系统经历攻击后的恢复阶段时不发出警报。然而,如果系统稳定期间的值与攻击值相似,那么该模型可能会错过对数据进行分类。恢复阶段的列入取决于攻击的类型和持续时间,以及系统的关键性。
还进行了确定初始化阶段的影响的实验。结果表明,这个阶段对攻击检测的数量没有巨大的影响。然而,这些模型检测到了不同类型的攻击。当初始化阶段被排除后,一般模型的性能指标略有提高。另一方面,在特定的进程模型中,有一些进程在存在和不存在的情况下比其他进程受到的影响更大。我们可以得出结论,如果系统经常重启,那么初始化阶段必须包括在模型中,以避免引起错误的警告。然而,在一个基于关键的系统中,重启是罕见的,初始化阶段必须不包括在内,因为它可能导致错误的分类和较低的性能指标。
阈值要求对系统中的每个现场设备进行训练,以便能够对指定设备的可能干预发出警告。相反,BLR可以以集中的方式进行预训练和安装,同时完成最小的通信开销。从结果来看,BLR成功地检测到了大部分的攻击,具有较高的MCC、F1分数和低误报率。因此,这种轻量级的技术可用于实时检测ICS中可能存在的入侵行为。
对于未来的工作,我们计划研究在我们的方法中加入深度学习和其他机器学习技术,以观察它们对入侵检测的影响。此外,我们计划改进我们的SOTAD方法,以便能够以高性能指标和低错误警告找到系统中特定的被攻击传感器。
[1] M. Kravchik and A. Shabtai, “Detecting Cyber Attacks inIndustrial Control Systems Using Convolutional Neural Networks,”ser. CPS-SPC ’18. New York, NY, USA: Association forComputing Machinery, , p. 72–83. [2] S. Ayas and M. S. Ayas, “A Modified Densenet Approach withNearmiss for Anomaly Detection in Industrial Control Systems,” Multimedia Tools and Applications, pp. 1–14, .[3] N. Erez and A. Wool, “Control variable classification, modeling andanomaly detection in Modbus/TCP SCADA systems,” InternationalJournal of Critical Infrastructure Protection, vol. 10, pp. 59–70, .[4] D. Pliatsios, P. Sarigiannidis, T. Lagkas, and A. G. Sarigiannidis, “ASurvey on SCADA systems: Secure Protocols, Incidents, Threats andTactics,” IEEE Communications Surveys & Tutorials, vol. 22, no. 3,pp. 1942–1976, .[5] K. Demertzis and L. Iliadis and S. Spartalis, “A Spiking One-ClassAnomaly Detection Framework for Cyber-Security on Industrial Control Systems,” in International Conference on Engineering Applicationsof Neural Networks. Springer, , pp. 122–134.[6] A. Robles-Durazno and N. Moradpoor and J. McWhinnie and G.Russell, “Real-time Anomaly Intrusion Detection for a Clean WaterSupply System, Utilising Machine Learning with Novel Energy-BasedFeatures,” in International Joint Conference on Neural Networks(IJCNN). IEEE, , pp. 1–8.[7] J. Goh and S. Adepu and K. N. Junejo and A. Mathur, “A Dataset toSupport Research in the Design of Secure Water Treatment Systems,”in International Conference on Critical Information InfrastructuresSecurity. Springer, , pp. 88–99.[8] “iTrust, Centre for Research in Cyber Security, Singapore University ofTechnology and Design.” [Online]. Available: https://itrust.sutd.edu.sg/[9] J. Goh and S. Adepu and M. Tan. and Z. S. Lee, “Anomaly Detectionin Cyber Physical Systems Using Recurrent Neural Networks,” in IEEE 18th International Symposium on High Assurance SystemsEngineering (HASE). IEEE, , pp. 140–145.[10] G.R. MR and N. Somu and A. P. Mathur, “A Multilayer PerceptronModel for Anomaly Detection in Water Treatment Plants,” International Journal of Critical Infrastructure Protection, vol. 31, p. 100393,.[11] D. D. Tiwari and S. Naskar and A. S. Sai and V. R. Palleti, “AttackDetection Using Unsupervised Learning Algorithms in Cyber-PhysicalSystems,” in Computer Aided Chemical Engineering. Elsevier, ,vol. 50, pp. 1259–1264.[12] J. Inoue, Y. Yamagata, Y. Chen, C. M. Poskitt, and J. Sun, “Anomalydetection for a water treatment system using unsupervised machinelearning,” in IEEE International Conference on Data MiningWorkshops (ICDMW). IEEE, , pp. 1058–1065.[13] H. Qu and J. Qin and W. Liu and H. Chen, “Instruction Detection inSCADA/Modbus Network Based on Machine Learning,” in International Conference on Machine Learning and Intelligent Communications. Springer, , pp. 437–454.[14] C. Ioannou and V. Vassiliou, “Network Attack Classification inIoT Using Support Vector Machines,” Journal of Sensor andActuator Networks, vol. 10, no. 3, . [Online]. Available:/2224-2708/10/3/58[15] C. Ioannou and V. Vassiliou, “Security Agent Location in the Internetof Things,” IEEE Access, vol. 7, pp. 95 844–95 856, .[16] C. Ioannou and V. Vassiliou, “The Impact of Network Layer Attacksin Wireless Sensor Networks,” in International Workshop on SecureInternet of Things (SIoT ), Crete, Greece, Sep. .[17] C. Ioannou and V. Vassiliou, “Classifying Security Attacks in IoTNetworks Using Supervised Learning,” in Proceedings of the 1stWorkshop on Intelligent Systems for IoT, held in conjunction withthe 15th International Conference on Distributed Computing in SensorSystems (DCOSS19), ser. ISIoT ’19, .[18] C. Ioannou and V. Vassiliou, “Accurate Detection of Sinkhole Attacksin IoT Networks Using Local Agents,” in Mediterranean Communication and Computer Networking Conference (MedComNet), , pp.1–8.[19] C. Ioannou, A. Charalambous, and V. Vassiliou, “Decentralized Dedicated Intrusion Detection Security Agents for IoT Networks,” inProceedings of the 3rd Workshop on Intelligent Systems for IoT, heldin conjunction with the 17th International Conference on DistributedComputing in Sensor Systems (DCOSS21), ser. ISIoT ’21, .[20] C. Ioannou, V. Vassiliou, and C. Sergiou, “An Intrusion DetectionSystem for Wireless Sensor Networks,” in 24rd InternationalConference on Telecommunications (ICT), May .[21] A. P. Mathur and N. O. Tippenhauer, “SWaT: A water treatment testbedfor research and training on ICS security,” in international workshop on cyber-physical systems for smart water networks (CySWater).IEEE, , pp. 31–36.[22] D. Chicco and G. Jurman, “The advantages of the Matthews correlationcoefficient (MCC) over F1 score and accuracy in binary classificationevaluation,” BMC genomics, vol. 21, no. 1, pp. 1–13, .[23] C. Ioannou and V. Vassiliou, “Evaluating Local Intrusion Detectionin the Internet of Things,” in Mediterranean Communication andComputer Networking Conference (MedComNet), .[24] O. A. Alimi and K. Ouahada and A. M. Abu-Mahfouz and S. Rimerand K. O. A. Alimi, “A Review of Research Works on SupervisedLearning Algorithms for SCADA Intrusion Detection and Classification,” Sustainability, vol. 13, no. 17, p. 9597, .
如果觉得《工业物联网中的操作技术攻击检测系统》对你有帮助,请点赞、收藏,并留下你的观点哦!