论文部分内容阅读
工业控制系统为众多国家关键基础设施提供自动化作业支撑,保障了社会经济活动的正常运行,在产业升级、智能制造、精益生产等方面发挥了重要作用。随着信息化技术与工控系统的融合,工控系统在网络安全机制的天然缺陷,导致其成为网络空间中相对薄弱的一环。近年来,针对工控系统的攻击频频发生,与传统的网络攻击相比,这类攻击可以突破网络空间与物理空间的界限,对国家关键基础设备安全造成重要威胁。工控系统在IT层面上的安全问题已经得到较好的解决,但对于工控系统底层设备安全研究还存在一些不足。论文针对工业控制现场系统尤其是可编程逻辑控制器及其附属控制系统,研究其安全分析与防护的若干关键技术:提出了基于攻击表面的工控系统威胁模型,有助于深度发现现场系统和PLC(可编程逻辑控制器)的脆弱性;提出了半实物与全仿真结合的工控系统测试床虚拟化方案,为攻击的复现与安全分析提供支撑环境;提出了基于SMT模型检测的PLC恶意代码发现技术,实现对PLC代码篡改攻击的检测;提出了基于概率估计的工控攻击检测技术,实现对伪造数据攻击的实时检测。具体研究内容与创新点如下:1.基于攻击表面的工控设备威胁建模与脆弱性分析。大多数现有威胁模型没有对攻击者进行建模,难以从攻击者视角出发,深度发现工控设备的未知脆弱性。针对该问题论文提出了攻击者视角下的工控系统威胁模型:基于攻击表面理论,对工控设备威胁进行了形式化定义,构建了包含攻击路径图与攻击达成条件的威胁模型,并基于该模型推导出工控设备潜在的脆弱性;以此为指导,对一个实际PLC的协议、口令验证机制和代码篡改可行性等方面的脆弱性分析,发现了其存在的多个脆弱性。该部分工作说明,基于攻击表面的威胁模型可以为PLC及工业控制系统的安全评估和防护提供有效的理论与实践指导。2.半实物与全仿真结合的工控系统测试床架构设计与实现。现有实体测试床存在造价高、执行周期长、风险大等不足,而全仿真/半实物测试床无法保证实际攻击的复现。针对该问题论文提出网络互联虚实互控的工控系统测试床架构:设计了集仿真化工过程、虚拟PLC与物理PLC为一体的工控安全测试床架构,解决仿真的控制回路到PLC的移植、多协议的网络互联等问题,实现了虚实组件间在OPC、Modbus和S7等协议上的互联互控,所有虚拟组件在网络上会被识别为实体设备。通过在测试床上设计并复现5种设备攻击,验证了该测试床具备较高的拟真度。该测试床适合开展那些在实体测试床上难以实施的破坏性实验,为实验室环境下进行工控安全研究提供支撑环境。3.基于SMT模型检测的PLC恶意代码发现。论文基于模型检测的思想,提出用形式化规约来刻画系统正常行为,通过对PLC程序和控制过程的建模,在模型上对规约进行验证,从而发现异常并检测出恶意代码。大多数PLC模型检测工作只关注PLC程序的建模,忽略对控制过程的建模,论文提出了PLC程序模型与控制过程模型相结合的形式化模型,提高了模型检测的准确性;针对PLC的随机输入变量造成的状态爆炸问题,论文提出了基于SMT的工控设备模型编码方法,实现PLC程序的SMT约束式自动生成算法和控制过程的约束式构造方法,将工控系统模型检测转换为SMT求解问题;针对恶意代码检测规约设计难问题,论文分别提出了两种检测规约生成方法,用于刻画工控系统的正常行为,利用检测规约可以发现系统异常从而识别出代码的恶意行为。通过对3类实际系统的恶意代码测试,该部分工作可以有效地发现多种模式的恶意代码。4.基于概率估计的工控攻击检测。现有大多数基于异常的工控攻击检测用单个时间帧的信号来检测攻击,忽略信号在时间上的关联性,影响了检测的准确性。针对该问题论文提出了基于信号时间序列概率的工控攻击检测技术,从概率的观点为工控攻击给出了定义,并通过工控系统特点进行合理假设,推导出信号序列概率的计算公式;为了降低计算复杂度并减少存储开销,提出基于贝叶斯网络的信号序列概率近似估计方法,使得概率计算能满足实时检测的需求。通过对实际攻击数据集的实验与评估分析,结果显示该技术可以检测出90%的攻击,与其它工作最高指标相当,其优点在于检测过程是实时的,同时还可以检测出攻击的持续过程。