1.一种基于系统残差指纹的工业信息物理系统攻击检测方法,其特征在于,所述方法包括以下步骤:步骤1,为水位控制系统构造物理模型,并给出其状态空间方程,构造如下线性动态状态空间模型其中A,B,C,为系统矩阵, 和 分别代表过程噪声和传感器噪声且都独立服从高斯分布,在某一离散时刻 系统的状态为 其下一时刻的状态由当前状态和当前控制量 决定, 为对应状态量的观测信号,即传感器输出,确定了模型后,获取水位控制系统正常运行时的数据;
步骤2,在已知数据的传输格式情况下,对获取的数据进行预处理,通过系统辨识方法得到系统状态空间方程中各系数;
步骤3,实施虚假数据入侵形式的内部攻击:对上述获取到的数据进行进一步的操作,针对目标数据,在其原基础上注入一个非零常数,得到攻击下的目标数据 形式如下:其中y(k)是系统正常运行时传感器与控制器之间传输的数据,δ为在某一时刻k加入的攻击量,为非零常数,给出三种攻击量数值选择:步骤4,利用卡尔曼滤波预测下一时刻的系统状态,并得到系统残差指纹的合成模型的一般形式,采用合成的残差指纹来检测恶意攻击;
步骤5,利用所提采样方法对小数值虚假数据注入攻击下的残差指纹进行进一步采样,将残差指纹的变化放大,同时缩短检测时间,提高检测实时性。
2.如权利要求1所述的基于系统残差指纹的工业信息物理系统攻击检测方法,其特征在于,所述步骤4中,系统残差指纹的合成步骤如下:
4.1卡尔曼滤波预测步骤:
‑ T T
P(k+1)=AP(k)A+ΓQ(k)Γ (5)其中, 和 分别表示k+1时刻的先验状态和k时刻的后验状态;
和 表示k+1时刻和k时刻的预测误差先验协方差阵和后验协方差阵, 表示过程噪声w(k)的协方差阵,由此,卡尔曼滤波预测的下一时刻的期望输出 为
4.2更新步骤:卡尔曼滤波的更新步骤可以表示为:其中, 为卡尔曼增益矩阵,I为单位矩阵, 是量测噪声η(k)的协方差矩阵;
4.3残差指纹模型合成推导步骤如下:
4.3.1首先推导系统残差的合成模型,定义状态误差函数e(k):进一步等到更一般地状态误差表达式
n
又有残差r(k)2R定义
进一步得到系统残差关于过程噪声和量测噪声的函数,即指纹合成模型
4.2.2残差指纹生成:过程噪声和量测噪声作为模型的输入集X,残差集作为输出指纹集
3.如权利要求2所述的基于系统残差指纹的工业信息物理系统攻击检测方法,其特征在于,步骤5中的采样方法如下:对于高水平的攻击者注入的微小数值的虚假数据,无法利用上述指纹模型进行检测,系统残差变为:r′(k)=Ce(k)+η(k)+δ(k) (13)从上式我们可以认为,对手的注入的恶意攻击是直接加在传感器噪声上,即η′(k):=η(k)+δ(k) (14)进一步的指纹模型的输入和输出集变为:
令 表示残差差值序列,提出如下采样方法: