随着我国“智能制造”政策的推进和企业数字化转型的内生需求,工业互联网系统已经在国家重大关键基础实施建设中有良好的应用。工业互联网系统将计算和通信能力与物理系统交织在一起,用于监视和控制系统功能和状态,以实现数据的统一化和业务流程的高度自动化,最终实现降本增效的目的。
但是,互联互通的情况下,各种网络组件使得工业互联网系统非常容易受到网络威胁的攻击,这些攻击或是内部产生的,或是由恶意外部实体、参与者发起的。在将系统要求转化为设计、部署和维护网络组件时(例如,操作员设备或关键系统组件上的软件更新),或将任何外部 USB 设备连接到工作站时,可能会在不知不觉中植入不同的漏洞,这可能被用作新的攻击媒介。
使用这些攻击向量,攻击者可以在任何攻击面(包括本地或远程的传感器和通信网络) 上安装和执行恶意有效负载,以攻击和破坏高价值目标。控制中心的节点通常不太容易受到影响,因为它们部署在物理受限的环境中以防止篡改。通过发起网络攻击, 网络级漏洞(不安全的通信通道、对企业网络的远程访问或节点欺骗)相对更容易被利用。
在系统中,网络攻击是违反安全目标并阻碍预期系统功能的、故意使系统故障的误用或滥用条件。这些可能是主动的或被动的, 其中主动攻击对于工业互联网系统来说造成的危害更为严重。
由此可见,即使是安全关键型网络物理系统也成为了重要目标。在主要关注安全保证的此类系统中,安全建模通常没有得到适当的关注,增加了导致严重后果的重大损害的风险。在这类复杂且资本密集的系统中,在需求分析和设计阶段解决安全特性,能够降低成本、减少工作量,而不是在系统开发取得实质性进展后考虑,此时变更设计成本更高。因此,最好在系统开发生命周期的早期阶段识别和发现可能的漏洞,要在设计阶段对预期系统进行建模和分析,防止后续系统故障。
本文所提出的方法可以帮助工业互联网服务商和应用商了解PetriNet(对离散并行系统的数学表示)的安全建模方式,即在工业互联网系统平台中如何有效保证其构建和应用能力及其属性的安全性。通过分析模型属性并识别安全威胁及其影响,在建模级别过滤安全问题。
数学描述
2.1 工业互联网系统
工业互联网系统实际可以描述为一个三元组{S;C;A}。其中,S 是一组传感器,C 是一组控制器,A 是一组执行器。工业互联网系统的动态行为的数学方程可以描述为
式中,a,b 为常数;表示传感器Sx 的测量值,Smx (t) 表示t 时刻执行器A 的x 点位传感器的均值;Cx (t) 表示控制器Cx 在t 时刻的测量值。
2.2 随机PetriNet 网格模型
随机 PetriNet(Stochastic PetriNet,SPN) 是PetriNet 的扩展形式。它是一种图形和数学工具,可以对分布式、非确定性、并行和异步系统进行建模。它表示具有两组不相交节点的有向二分图:位置节点 P 和过度节点T,建模为一个圆圈,表示状态或条件。转换节点, 建模为条形,表示离散事件或函数。转换与特定数量的输入和输出位置相连,以表达事件的前后条件。系统行为以可能的系统状态(标记)及其转换的形式进行描述, 这些状态以图形表示为标记,即非负数的点。每个转换都与一个正的、指数分布的随机变量相关联,该变量表示从启用到触发该特定转换的延迟。形式上,将位置等被定义为一个五元组。
式中,P 表示位置集合;T 表示转换节点集合;A 表示建模的模型弧度集合;M0 表示初始标识;γ 表示与转换相关的平均触发延迟倒数的触发率集合。
如果启用了多个转换,则延迟最短的转换将在触发中获得优先权。基本 SPN 模型如图 1 所示。由于触发延迟指数分布的无记忆特性,SPN 的可达性图可以转换为如图 2 所示的有限马尔可夫链,其 λ0 是触发率与转换节点之间的关联系数。因此,SPN 结合了 PN 和马尔可夫过程的强大功能。这可能有助于计算系统的不同性能度量, 以分析工业互联网平台在正常条件、攻击和应用缓解下的动态行为。
建模方法
本节简要介绍了基于PetriNet 的工业互联网安全建模和分析的建议方法,该方法包括五个阶段。
3.1 需求分析
此阶段确定工业互联网的技术、功能、场景和非功能要求。识别系统组件及其交互以交付符合安全要求的预期功能是此阶段的输出。
组件仿真模块为虚拟化设备的逻辑体现,支持真实或虚拟的主机设备、网络设备、安全设备和电力工控设备等多种类型组件组合配置,将可仿真的电力工控设备或软件安装到不同类型的操作系统上,从而实现不同设备功能的仿真,提供PLC、DCS、通信网络、SCADA 组态软件、通信软件及各种中间件资源,用于构建或复现电力监控系统网络环境中的资源节点。
3.2 功能模型分析
此阶段对系统组件之间的交互进行建模,以使用 SPN 提供预期的功能。基于Web 开发的核心网络场景构建模块,实现组件、场景的拖拽组网及虚拟化访问交互。通过在Web 界面选择网络拓扑组件,实现自由拖拽组网功能,待网络环境组建完毕后,点击一键生成环境,该系统自动将Web 端的可视化拓扑图转化为可自动化配置的虚拟化网络环境,实现对网络拓扑图中的虚拟机以及网络的自动化配置,并在分钟级内完成整个环境的构建工作。构建完成后,整个拓扑图需要利用组件监控系统实时展示网络流量状态以及组件的实时状态、异常状态等。同时,基于该拓扑图还可以直接点击组件,进入相应的组件SSH、RDP 界面或VNC 界面。
场景构建模块主要由可视化拓扑编辑画板及后台的电力业务处理逻辑构成,拓扑画板负责与用户交互,将用户预想的网络结构通过JSON 格式数据传输到后台,后台经过逻辑处理并存入数据库。
3.3 威胁模型生成
此阶段识别传感器网络的漏洞并识别可以利用它们入侵和破坏工业互联网的威胁类型。威胁建模构建如图3 所示。
威胁建模通常从三个维度来建立模型:以资产为核心、以攻击者为核心和以软件系统为核心。结合数据流图的基本元素,使用STRIDE 方法作为威胁维度来对各基本元素进行威胁分析,可以得出STRIDE 方法威胁建模见下表。
3.4 应急处置模型生成
应用安全缓解措施来报复或消除威胁的影响。
3.5 安全验证
模型的每次成功运行都可确保系统在没有任何冲突和安全违规的情况下执行。此阶段根据不同的安全指标定性和定量地评估模型行为。定性分析显示威胁的影响是什么,定量分析显示应用缓解措施降低了攻击概率的程度。
基于PetriNet 的工业互联网模型的 电力领域工业互联网平台的应用
基于PetriNet 的工业互联网安全模型的工业互联网平台在电力领域的应用,主要由实训平台、竞赛系统、应急演练、开发测试和测试验证构成,每个应用系统有自己单独的剧本任务系统,同时业务上依赖于场景构建提供的电力监控系统网络场景。
实训平台面向电力监控系统网络安全领域的人员教学实践需求,教育、培训理论与实践结合,以实战化电力监控系统网络安全建设为目标,为理论学习、测试、实战训练和网络新技术研发提供支撑。
竞赛系统面向电力监控系统网络构建、选手竞赛网络设计、选手攻击行为分析等提供解决方案,提供选手接入能力、网络承载能力、环境仿真能力和数据分析能力。
应急演练针对各类电力监控系统网络安全应急事件发生及处理全过程的模拟演练,实现对应急事件处理的多角度、全方位的演练和评估。通过配置仿真模型、用户操作界面和部署仿真场景,可快速构建面向各类应急预案的模拟演练系统,在突发事件事先预防、事发应对、事中处置和善后恢复过程中,建立必要的应对机制,保障电力监控系统网络安全。
开发测试为电力监控系统软件开发提供云开发环境、使用场景和软件测试环境等,真实复现电力系统的生产过程、流程工艺,在真实的网络环境和仿真硬件环境中完成开发、匹配和测试等工作。
测试验证为基于电力监控系统网络信息安全威胁情报、态势感知、安全可视化、漏洞验证和安全分析等研究方向提供虚拟化电力监控系统网络沙箱环境,可接入安全测试工具、综合实验分析工具和漏洞测试脚本集等。形成电力特色的研究能力、攻防能力和漏洞挖掘能力。
结束语
本文提出了一种基于随机 PetriNet 网格模型的工业互联网系统的安全建模方法,定性和定量地研究和分析工业互联网系统在关键基础设施领域应用的安全性,可以有效解决关系国计民生的重大关键基础设施建设在可行性研究阶段的网络安全建模问题,可有效分析和评估重大基础实施的安全能力,为保障国内企业安全运营提供有效的技术手段。