论文部分内容阅读
随着工业控制网络朝着生产高度数字化、网络化、机器自组织的方向发展。在生产效率提高的同时,越来越多的安全风险和安全漏洞被暴露出来。尤其在工业控制网络层,作为工业控制系统重要的控制执行环节,缺乏有效地入侵检测方法。目前基于工业控制网络的入侵检测方法通过对网络流量建模、数据包特征分析和设备特征分析的方法进行检测。存在协议通用性差、误报率高,无法对未知异常进行检测等问题。有鉴于此,本文从正常行为建模的角度出发设计并提出了一种基于仿真建模的工业控制系统异常检测方法。工业控制系统建模依照工业控制系统上设备的类型进行划分,分为控制器建模以及被控对象建模。控制器建模是为了防止控制程序(包括控制程序在内存中存储的数据)被篡改或者破坏的行为,被控对象建模是为了保证控制器获得的系统输入是可信的。并分别根据两种建模方法的特点提出了相应的异常检测方法。本文主要研究内容如下:首先,论文对相关研究领域进行综述的基础上,本文在详细分析了工业控制系统脆弱性问题。并针对存在的控制器控制逻辑易被篡改、无法保证数据可信性等问题展开研究。根据控制器的工作原理特点提出了仿真建模的研究思路,同时将控制系统中经典的系统辨识分析方法引入到被控对象建模之中。其次,论文在分析PLC的工作原理基础上,提出了仿照PLC工作原理设计的控制器仿真模型,并对仿真模型的系统架构、部署方式进行了讨论。之后,详细的介绍了控制器仿真建模的流程,包括词法分析、语法分析、中间代码生成等。最后,结合控制器建立的模型,提出了相应的异常检测系统,并介绍了异常检测的原理和方法。再次,论文为了解决被控对象建模的问题引入了系统辨识建模的方法。通过数据预处理的方法去除了建模输入数据中的直流分量和高频噪声。通常认为系统辨识的模型输入应该是去除直流分量后的平稳数据,因此在建模过程中首先需要利用直流分量模型,剔除输入数据中的直流分量。之后介绍了系统辨识方法的参数定阶准则、参数辨识过程、模型的选择方法以及模型的验证方法。最后根据系统辨识的残差序列统计特性提出了基于db6小波分解的异常检测方法。并以举例的方法模拟了一次完整的建模过程。最后,本文在已经提出的控制器建模方法和被控对象建模方法的基础上将两者整合成为了工业控制系统建模方法,并仿照工业控制系统中水槽液位控制系统的原理搭建了模拟实验环境。通过分析现有针对工业控制系统的攻击方法和原理,对工业控制系统面临的攻击威胁进行了分类总结。根据分类结果本文模拟实现了三种攻击,并利用本文提出的异常检测方法进行检测。结果表明本文提出的异常检测方法能够发现现有的所有攻击行为,并能够对相同原理的未知攻击行为进行有效的检测。