本发明涉及诸如自动化系统和工业生产系统等基础设施的安全管理领域。特别地,本发明涉及一种检测网络中基础设施设备产生的时间序列数据异常的方法。
背景技术:
1、已知类型的安全产品可检测恶意攻击,有时还能够采取措施阻止它们。大多数入侵防御系统或入侵检测系统(ids)使用介于基于签名、基于统计异常及状态协议分析之间的一种检测方法。基于签名的ids监视网络中的数据包,并与称之为签名的预先配置及预先确定的攻击模式进行比较。基于异常的ids将监控网络流量并将其与已建立的基线进行比较。基线将识别对特定网络来说何谓正常的。最后,状态协议分析检测通过将观察到的事件与普遍接受的良性活动定义的预定义配置文件进行比较来识别协议状态的偏差。
2、检测计算机网络中的异常行为是ids的一项复杂但基本的任务。关于运营技术(ot)网络,要检测的有用的异常是当装置开始使用意外协议进行通信时,这可能是被监控的装置已被网络内的恶意节点联系的征兆,该恶意节点正在执行网络扫描或可能只是配置错误。此外,在使用正规协议的通信中使用新功能代码时,要检测的是有用的异常。在此方面,功能代码是ot装置支持的操作,其中常见的操作是“读取变量”、“写入变量”、“启动装置”、“停止装置”或“更新固件”。其中一些操作可能会破坏装置本身,并因此影响装置所服务的过程。发送到装置的意外功能代码可能是攻击者试图破坏装置、尝试侦察或错误配置的征兆。
3、具有观察网络流量及解码协议能力的ids可以使用两阶段方法实施简单的异常的检测方法,例如美国专利第10,955,831b2中描述的方法。
4、在学习阶段,ids将记住节点之间使用的所有协议,并且对于每个协议,记住所有功能代码。因此,在学习阶段,所有记忆的项目都将被标记为“已学习”并被解释为良好,即不被视为异常。在保护阶段,ids会将网络中的任何新项目(节点之间的新通信或通信中的新功能代码)与学习项目集进行匹配,并在未找到未“学习”到的新项目时发出警报,即认为异常。
5、上述方法可以适用于任何类型的网络,并且不需要任何先前的知识,但可能较不适于包括越来越多的物联网(iot)或ot设备的网络。
6、由于通过iot互连的数量不断增加,大量的数据正在生成。iot和ot设备中异常行为的实时检测对于这些设备所属系统的维护和监控至关重要。一旦检测到异常行为,立即通知即可更快、更有效地缓解和预防传入的系统故障和/或持续攻击,减少或甚至消除这些事件造成的潜在损害。
7、部署在特定系统中的每个iot和/或ot设备都有其独特的行为,因此必须单独分析和监控,以有效识别其异常。在所有类型的数据中,时间序列数据(例如,来自传感器的数据)正变得最广泛。不幸的是,传统的sql数据库通常无法收集、存储和分析大量数据。时间序列数据的挑战在于,对数据库的读取和写入必须快速、可靠和可扩展。
8、因此,一种检测异常的方法是被期望的,所述方法能够通过使用时间序列数据来识别实时模式下的iot和/或ot设备的异常行为。
技术实现思路
1、本发明的目的是提供一种在实时模式下检测异常的方法。特别地,期望能提供一种能够以动态方式识别任何恶意活动的检测网络中基础设施异常的方法。
2、因此,根据本发明,描述了一种检测网络中基础设施设备产生的时间序列数据异常的方法。
3、所述方法包括,对于每个所述设备:
4、通过计算机化数据处理装置检索所述网络中所述设备的时间序列数据;
5、通过所述计算机化数据处理装置,并通过滑动时间窗口以与所述时间序列数据重叠,提取与对应所述时间窗口相关且具有预定义窗口大小和预定义步幅的多个时间序列样本;
6、通过所述计算机化数据处理装置提供所述多个时间序列样本作为卷积自动编码器的输入,以定义具有预定义百分位数间隔的重建时间序列值;
7、通过所述计算机化数据处理装置分析所述重建时间序列值以识别所述时间序列数据的异常行为;
8、当至少一所述异常行为被识别时,通过所述计算机化数据处理装置发出所述设备异常的信号;
9、其中,所述分析包括当所述卷积自动编码器的实际总体损失超过预定义阈值水平时,评估所述卷积自动编码器的所述实际总体损失相对于识别所述时间序列数据的所述异常行为的实际检索时间窗口;
10、其中,在所述分析中,当在所述时间窗口之一中识别出所述时间序列数据的至少一所述异常行为时,将所述时间窗口中的所述时间序列数据的每个元素与所述重建时间序列的对应重建进行比较,以便精确识别所述时间窗口中的异常值;以及
11、其中,在所述分析中,当所述时间序列数据的所述元素在预定义数量的时间窗口中被分类为异常时,将其标记为异常。
12、在进一步的实施例中,所述方法还包括在所述提供之前,通过所述计算机化数据处理装置对所述时间序列样本进行归一化以定义缩放时间序列样本;以及
13、其中,在所述提供所述时间序列样本中,将所述缩放时间序列样本作为所述卷积自动编码器的输入。
14、在进一步的实施例中,所述归一化包括针对每个所述时间序列样本对时间序列时间戳记应用不同类型的局部缩放,所述时间序列时间戳记被定义为每个对应时间序列值的时间戳记,并且对于所述时间序列值,所述时间序列值被定义为每个对应样本的值。
15、在进一步的实施例中,所述时间序列时间戳记的所述局部缩放由正常的单变量缩放定义。
16、在进一步的实施例中,对于所述时间序列值的所述局部缩放由最大缩放定义。
17、在进一步的实施例中,所述预定义阈值水平(τ)在相对于学习检索时间窗口的学习阶段中被定义为:
18、
19、其中,
20、μ是所述卷积自动编码器的学习总体损失的平均值;
21、σ是所述学习总体损失的标准差;
22、s是预定义敏感度级别。
23、在进一步的实施例中,所述时间窗口的预定义个数等于或大于所述预定义窗口大小与两倍的所述预定义敏感度级别之间的比值。
24、在进一步的实施例中,所述卷积自编码器由10层深度模型定义。
25、在进一步的实施例中,所述检索是连续迭代的。
26、在进一步的实施例中,在预定义的所述实际检索时间窗口内或针对预定义的检索数据量,所述提取定义了检索的所述时间序列数据中的所述时间序列样本。
27、在进一步的实施例中,所述预定义窗口大小等于32。
28、在进一步的实施例中,所述预定义步幅等于1。
1.一种检测网络中基础设施设备产生的时间序列数据异常的方法,包括,对于每个所述设备:
2.根据权利要求1所述的检测网络中基础设施设备产生的时间序列数据异常的方法,其特征在于,所述方法还包括在所述提供之前,通过所述计算机化数据处理装置对所述时间序列样本进行归一化以定义缩放时间序列样本;以及
3.根据权利要求2所述的检测网络中基础设施设备产生的时间序列数据异常的方法,其特征在于,所述归一化包括针对每个所述时间序列样本对时间序列时间戳记应用不同类型的局部缩放,所述时间序列时间戳记被定义为每个对应时间序列值的时间戳记,并且对于所述时间序列值,所述时间序列值被定义为每个对应样本的值。
4.根据权利要求3所述的检测网络中基础设施设备产生的时间序列数据异常的方法,其特征在于,所述时间序列时间戳记的所述局部缩放由正常的单变量缩放定义。
5.根据权利要求3所述的检测网络中基础设施设备产生的时间序列数据异常的方法,其特征在于,对于所述时间序列值的所述局部缩放由最大缩放定义。
6.根据权利要求1-5中任一项所述的检测网络中基础设施设备产生的时间序列数据异常的方法,其特征在于,所述预定义阈值水平(τ)在相对于学习检索时间窗口的学习阶段中被定义为:
7.根据权利要求1-6中任一项所述的检测网络中基础设施设备产生的时间序列数据异常的方法,其特征在于,所述时间窗口的预定义个数等于或大于所述预定义窗口大小与两倍的所述预定义敏感度级别之间的比值。
8.根据权利要求1-7中任一项所述的检测网络中基础设施设备产生的时间序列数据异常的方法,其特征在于,所述卷积自编码器由10层深度模型定义。
9.根据权利要求1-8中任一项所述的检测网络中基础设施设备产生的时间序列数据异常的方法,其特征在于,所述检索是连续迭代的。
10.根据权利要求1-9中任一项所述的检测网络中基础设施设备产生的时间序列数据异常的方法,其特征在于,在预定义的所述实际检索时间窗口内或针对预定义的检索数据量,所述提取定义了检索的所述时间序列数据中的所述时间序列样本。
11.根据权利要求1-10中任一项所述的检测网络中基础设施设备产生的时间序列数据异常的方法,其特征在于,所述预定义窗口大小等于32。
12.根据权利要求1-11中任一项所述的检测网络中基础设施设备产生的时间序列数据异常的方法,其特征在于,所述预定义步幅等于1。