本发明涉及工业控制系统终端设备安全领域,尤其涉及一种基于物理信号的非侵入式工控终端异常检测方法。
背景技术:
1、工控系统是国家的关键信息基础设施,在满足人民生活需求与保障经济持续发展等多个方面起到了关键作用,关系到国家经济命脉与社会稳定。工控系统如果遭受恶意攻击或系统故障,可能会影响到国家经济的安全持续发展,甚至引起社会动荡。为了保证工控系统的安全平稳运行,多种类型的工控终端被广泛部署到系统中,阻止系统可能遭受的潜在恶意攻击,保证工控系统的可用性、机密性、完整性与持续性。
2、工控终端广泛应用于交通、金融、电力、医疗、物联网等众多工控领域,主要执行数据采集与运行控制等任务,在保证工控系统的稳定运行方面发挥着巨大的作用。然而,工控终端自身的正常运行正面临着巨大的挑战:(1)工控终端多年超负荷运行,无法长时间停机检修,同时难以在线动态升级;(2)工控终端本身缺乏综合有效的安全防护手段,难以应对日新月异的网络安全威胁挑战;(3)部分工控终端出现故障后的运维依赖于厂家支持,问题响应时效性差,难以快速恢复。
3、传统的安全运维手段通常包括漏洞扫描、访问控制策略、侵入式安全检测等,然而,许多专有的工控终端难以适应传统的安全运维手段:(1)工控终端持续稳定运行的要求以及受限的系统资源,难以忍受高频的漏洞扫描;(2)严格的访问控制策略只能保证身份认证与访问管理,难以针对工控终端在操作系统、通信协议等其它方面的已有缺陷进行防护;(3)侵入式安全检测,需要与业务结合,通用性不强,会对工控终端业务运行的实时性造成影响,甚至引入潜在安全风险。
技术实现思路
1、发明目的:本发明的目的是提供一种准确率高、基于物理信号的非侵入式工控终端异常检测方法。
2、技术方案:本发明包括如下步骤:
3、(1)在工控终端linux操作系统中植入一个用于信息采集的轻量级脚本,针对终端功耗以及cpu运行状态进行物理信号采集;
4、(2)对工控终端正常运行周期内的物理信号进行采集,并通过网络传输给计算设备进行模型训练,将采集到的数据整理为时间序列,对数据进行预处理,训练基于transformer的神经网络模型,构建业务正常运行的完整画像,并以此为基线实现工控终端的异常检测;
5、(3)transformer网络训练完成后,对工控终端进行实时检测,采集t时刻的物理信号作为实际值,结合此前t-1个时刻的数据,作为transformer网络的输入,计算t时刻的预测值,根据预测值和实际值的差异大小判断t时刻是否为正常样本;
6、(4)对工控终端进行持续监测,在固定长度的时间窗口内检测出的异常次数超过预先设置的告警上限数值,则判定终端运行状态出现了异常,发出告警。
7、进一步地,所述步骤(1)中cpu运行状态包括cpu空闲时间、cpu占用率、中断次数以及系统调用次数。
8、进一步地,所述步骤(1)中基于固定的时间间隔进行物理信号采集,固定时间间隔由用户根据实际情况自行设定。
9、进一步地,所述步骤(2)包括:
10、(2.1)针对采集到的物理信号,利用标准化、降噪技术进行数据预处理,得到时间序列数据,其中表示t时刻的物理信号向量,,表示t时刻的系统功耗,表示cpu空闲时间,表示cpu占用率信息,表示t−1时刻到t时刻的中断次数,表示t-1时刻到t时刻的系统调用次数,并将包含cpu多核物理信号的数据拼接成特征向量;
11、(2.2)构建用于训练的数据样本,即以前t-1个时刻的物理信号向量作为模型输入数据,以作为模型预测输出数据;
12、(2.3)在数据样本的基础上,训练一个基于transformer的神经网络模型,模型训练好之后用于异常样本的检测。
13、进一步地,所述步骤(2.1)中t时刻也表示样本记录的数量,由用户根据实际情况自行设定。
14、进一步地,所述步骤(3)包括:
15、(3.1)工控终端内的脚本实时采集终端运行的物理信号并发送给计算设备,计算设备将收到的物理信号进行预处理,得到待测样本的实际值;
16、(3.2)基于计算设备内存储的前t个时刻的样本记录,利用训练好的transformer网络计算得到t时刻的预测样本;
17、(3.3)利用余弦相似度计算预测样本与待测样本的实际值之间的相似性度量值;
18、(3.4)根据算得的相似性度量值对当前待测样本进行判断,如果大于等于预先设定的相似性度量阈值,则判断当前待测样本不存在异常,如果小于,则判断当前待测样本存在异常;
19、(3.5)更新计算设备中储存的前t个时刻的样本记录,如果判断当前样本不存在异常,则将实际值加入样本记录,即用,作为t+1时刻计算预测样本的模型输入值,否则将预测值加入样本记录,即用,作为t+1时刻计算预测样本的模型输入值。
20、进一步地,所述步骤(3.4)中相似性度量阈值由用户根据实际情况自行设定。
21、进一步地,所述步骤(4)包括:
22、(4.1)当t时刻的待测样本被判别为异常时,根据预定的时间窗口长度统计t-t时刻到t时刻出现的异常次数;
23、(4.2)当异常出现的总次数超过预先设置的告警上限数值时,向安全运维人员发出告警。
24、进一步地,所述步骤(4.1)中时间窗口由用户根据实际情况自行设定。
25、进一步地,所述步骤(4.2)中告警上限数值由用户根据实际情况自行设定。
26、有益效果:本发明与现有技术相比,具有如下显著优点:该方法能够针对工控终端的运行状态进行实时监测,一旦出现异常情况,可以立即发现并报警,通知安全运维人员及时处理;该方法为非侵入式,仅需要在工控终端中植入一个轻量级脚本,占用的原系统资源极少,与业务运行完全解耦;该方法使用的transformer网络属于无监督模型,模型训练过程只需要利用工控终端正常运行采集到的物理信号数据,不需要额外的异常样本,避免了常见的训练集正负样本不平衡问题;该方法的异常检测准确率很高,能够即时高效地检测出工控终端异常运行状态并报警;该方法通用性强,灵活性高,适合各种工控终端的异常检测场合。
1.一种基于物理信号的非侵入式工控终端异常检测方法,其特征在于,包括如下步骤:
2.根据权利要求1所述的基于物理信号的非侵入式工控终端异常检测方法,其特征在于,所述步骤(1)中cpu运行状态包括cpu空闲时间、cpu占用率、中断次数以及系统调用次数。
3.根据权利要求1所述的基于物理信号的非侵入式工控终端异常检测方法,其特征在于,所述步骤(1)中基于固定的时间间隔进行物理信号采集,固定时间间隔由用户根据实际情况自行设定。
4.根据权利要求1所述的基于物理信号的非侵入式工控终端异常检测方法,其特征在于,所述步骤(2)包括:
5.根据权利要求4所述的基于物理信号的非侵入式工控终端异常检测方法,其特征在于,所述步骤(2.1)中t时刻也表示样本记录的数量,由用户根据实际情况自行设定。
6.根据权利要求1所述的基于物理信号的非侵入式工控终端异常检测方法,其特征在于,所述步骤(3)包括:
7.根据权利要求6所述的基于物理信号的非侵入式工控终端异常检测方法,其特征在于,所述步骤(3.4)中相似性度量阈值由用户根据实际情况自行设定。
8.根据权利要求1所述的基于物理信号的非侵入式工控终端异常检测方法,其特征在于,所述步骤(4)包括:
9.根据权利要求8所述的基于物理信号的非侵入式工控终端异常检测方法,其特征在于,所述步骤(4.1)中时间窗口由用户根据实际情况自行设定。
10.根据权利要求8所述的基于物理信号的非侵入式工控终端异常检测方法,其特征在于,所述步骤(4.2)中告警上限数值由用户根据实际情况自行设定。