工业控制系统信息安全研究新动态①
2021-02-23丁晓倩李喜旺
丁晓倩,向 勇,李喜旺,吴 奕
1(中国科学院 沈阳计算技术研究所,沈阳 110168)
2(中国科学院大学,北京 100049)
工业控制系统(Industrial Control System,ICS)是一个用于描述监控与数据采集系统(Supervisory Control and Data Acquisition,SCADA)、分布式控制系统(Distributed Control System,DCS)和可编程逻辑控制器(Programmable Logic Controller,PLC)等多种用于工业生产的控制系统和自动化控制组件的通用术语[1].工业控制系统通常用于能源、冶金、石油化工等工业生产领域以及交通、水利、市政等公共服务领域,一旦遭受攻击,不仅会对相关企业造成影响,还会引起国家安全和社会稳定问题.
随着信息化与工业化的深度融合,IT 技术在工业控制领域应用的深度和广度不断扩大,使工业控制系统平台更加标准化与简单化,将ICS 逐步从封闭、孤立的系统转化为开放、互联的系统.但工业信息化带来生产成本降低和竞争实力大大增强的同时,工业控制系统封闭网络的屏障优势逐渐减弱.信息技术的广泛应用不仅使工业协议和系统的固有漏洞和安全风险不断增加,还使其继承了IT 网络所面临的安全威胁.2010年出现的“Stuxnet”病毒被认为是最早的专门针对工业控制系统的攻击,紧随其后出现了“Conficker”、“Haves”、“BlackEnerfy”等病毒.最近一些年更是出现一些以获取钱财为目的的勒索软件,例如“Warncery”、“Clearenegy”等.2018年8月,台积电遭遇勒索软件“WannaCry”变种的攻击,导致生产中断,造成1.7 亿美元的损失[2].以上事例表明,ICS 面临的威胁规模、类型和危险程度都在快速增加.截至2018年12月13日,美国工业控制系统网络应急响应小组(Industrial Control System Cyber Emergency Response Team,ICS-CERT)在其官方网站发布安全通告累计1046 篇,且年安全通告篇数呈现持续上升趋势[2],如图1所示.由于传统信息安全问题在工业控制领域的蔓延,传统ICS 安全策略效果大不如前,亟需从工业协议缺陷、系统漏洞和数据安全等多方面研究安全解决方案.
图1 ICS-CERT 安全通告统计图
针对面临的安全风险,国内外学者对ICS 信息安全关键技术研究进行了探讨与总结.彭勇等[3]从ICS信息安全内涵出发,对当前ICS 信息安全研究现状和信息安全关键技术的研究成果进行阐述,提出ICS 信息安全面临的挑战和重要的研究方向.在对ICS 安全综合分析的基础上,工业控制系统信息安全相关的最新研究成果和新型攻击技术是当前的研究热点,学术界和产业界对此提出基于实践的纵深防御体系和安全建议[4–6].在前人对工控安全技术研究进展的基础上,本文重点分析2018年工控安全国际会议ICS-CSR 提出的最新理论与技术,提出ICS 信息安全技术的重点研究方向,以期为读者提供新的研究思路.
1 工业控制系统(ICS)
1.1 ICS 架构
典型的工业控制系统[7]是分层结构,从上至下分别为企业信息网络、过程控制网络和现场设备网络,如图2所示.
(1)企业信息网络属于IT 领域,通过防火墙与外部网络连接,实现邮件收发、网页浏览等网络信息服务.一般由制造执行系统(Manufacturing Execution System,MES)和企业资源规划(Enterprise Resource Planning,ERP)为代表的企业资源管理系统组成.
(2)过程控制网络属于工业控制系统领域,为上层应用服务和下层控制应用建立桥梁,解决软、硬件集成问题,提高系统的开放性和互操作性.一般由SCADA、DCS 和PLC 的OPC (Object Linking and Embedding(OLE)for Process Control)服务器、工程师站和实时/历史数据库等组成.
(3)现场设备网络位于最底层,属于工业控制系统领域,在控制网络的调度下采集数据信息,执行面向用户的指令,保证系统正常运行.一般由人机界面(Human Machine Interface,HMI)、远程终端单元(Remote Terminal Unit,RTU)和PLC 等现场仪表和控制设备组成.
1.2 ICS 信息安全
随着信息技术在工业领域的应用,工业控制系统有了质的变化,研究人员对当今工业控制系统信息安全做出新的解释,IEC62443-1-1 标准中针对工控系统信息安全的定义[8]是:“保护系统所采取的措施;由建立和维护系统的措施所得到的系统状态;能够免于对系统资源的非授权访问和意外的变更、破坏或损失;基于计算机系统的能力,能够保证授权人员和系统的合法操作权限,避免非授权人员和系统修改软件及其数据或访问系统功能;防止对工控系统非法、有害的入侵,或者干扰其正确和计划的操作.”
来自互联网的安全威胁已成为工业控制系统信息安全主要的威胁来源,但是由于工业控制系统本身的特点,其信息安全与传统IT 系统的信息安全仍有较大差别,表1从攻击方法、攻击目的和攻击后果等方面对二者进行对比分析.
图2 ICS 典型架构图[7]
表1 工控安全与传统信息安全对比
1.3 ICS 信息安全技术
工业控制系统安全技术的研究重点主要在区域隔离、入侵检测和风险评估3 方面.
(1)区域隔离技术
为了防止攻击者通过工业控制系统的企业信息网络对下层网络进行渗透,不同层次网络之间需要部署工业防火墙、网关等安全设施,控制跨层访问并对层间数据交换进行深度过滤[2].工业防火墙对专用工业协议和通用TCP/IP 协议等数据包进行深度分析,通过构建的白名单体系过滤对系统资源的恶意访问,有效阻止未授权软、硬件或进程在系统中运行.
(2)入侵检测技术
入侵检测技术是一种通过收集与解析数据包信息,基于特征分析和异常检测发现系统中隐藏的攻击行为,主动采取防御措施的安全技术.当前国内外常用的入侵检测技术主要有:入侵检测系统、工控漏洞扫描和挖掘技术、工业监测预警平台.分析ICS 的特性,工业入侵检测系统从检测对象出发,被划分为基于流量监测、协议检测和设备状态检测三大类[7,9],对系统行为信息逐步深入分析,实现对攻击行为的有效感知和实时监测;工业漏洞扫描和挖掘针对工业控制系统中常见的PLC、DCS、HMI 等控制器进行探测,发现其中的系统漏洞,并通过FUZZ 等技术手段实现对工业专有协议的健壮性测试;工业监测预警平台则是通过对系统安全日志与异常信息的关联分析,结合现场行为发现恶意行为[2].
(3)风险评估技术
风险评估技术通过对网络、系统、数据库和业务应用运行日志的收集和分析,在模拟仿真系统平台上对潜在的漏洞和安全隐患进行验证,进而切合实际地识别出系统面临的安全威胁以及风险的来源[3].当前,工业控制系统风险评估技术主要包含ICS 仿真平台的构建、安全测试技术和风险评估工具[10].ICS 仿真平台通过实验数据构建真实系统环境,在仿真环境中利用安全测试工具对系统进行漏洞扫描和挖掘、渗透测试、补丁开发等安全试验,不需要直接操作系统,避免影响真实系统的可用性和机密性.风险评估工具则是根据安全标准对系统行为进行分析,确定恶意行为和风险来源,以此给出系统安全加固建议.
2 ICS 信息安全研究进展
2018年第五届ICS 与SCADA 信息安全研究国际会议(ICS-CSR)共收录13 篇论文,展示当前工业控制系统信息安全领域的研究方向和应用技术.本文对会议论文中提出的安全方法进行研究与分析,按照基于评估对象的分类方法,发现论文中提及的技术主要从系统架构和通信协议两方面出发,利用网络攻击模型、区块链技术、神经网络、安全工具等方法维护工业控制系统信息安全.
2.1 基于系统架构的安全解决方案
基于系统架构的安全研究是针对操作员站、工程师站、数据服务器等现场设备进行安全加固.安全解决方案会对发现的攻击行为进行告警或者采取防御措施,以此阻止操作人员的误操作和外界的攻击行为.该解决方案适用于工业领域的所有控制系统及其设备,可以满足各厂商的ICS 信息安全需求.
(1)通用系统架构安全解决方案
对系统架构进行安全研究与分析的前提是设备识别,文献[11]提出一种利用设备MAC 地址的唯一性进行设备识别的轻量级被动网络扫描技术,它可以在不影响ICS 正常运行的前提下集成到ICS 的安全体系中.该方法发现并识别设备后,可利用其供应商信息和网络上公开的漏洞数据库对设备进行漏洞分析,进而提高设备安全.为了更好的理解攻击者的意图和攻击过程,文献[12]从攻击者的角度出发,研究网络攻击生命周期模型,以便采取与攻击相对的安全策略.文章从基于过程的入侵检测系统出发,提出一种名为SAMIIT的螺旋攻击生命周期模型.该模型可以覆盖整个攻击生命周期,将基于机器学习的分类算法首次用于攻击生命周期的警报映射,利用标签分类将安全警报映射到系统环境中不同的攻击阶段和架构级别上,使安全管理人员根据映射有效分配安全管理策略,截断攻击过程,进而维护系统安全.与文献[12]不同的是,文献[13]直接从攻击者的目标出发,针对信息物理系统(Cyber Physical System,CPS)所面临的安全问题,利用攻击树(Attack Tree,AT)模型对模型FAST-CPS 进行扩展,提出一种评估CPS 安全的方法.该方法的贡献在于,以被评估系统的架构模型为基础,自动生成针对特定攻击目标的攻击树,进而自动得出分析结果.为了让系统相关人员了解系统安全信息,该方法给出两种反馈类型,针对技术人员的技术型反馈和针对管理人员的非技术型反馈.该方法的具体操作步骤如图3所示.
图3 文献[13]的方法概略图
从图3可以看出,攻击树生成算法的核心是利用攻击模板对攻击目标迭代精炼,直到攻击目标不能再被分解为止.使用的攻击模板是已知攻击方法,可根据需求自由更换,大大提高了该方法的扩展性.
(2)PLC 系统架构安全解决方案
正如文献[14]中提到的那样,工业控制系统受到的威胁越来越多,工业控制系统中的PLC 引起了攻击者的广泛关注,但是PLC 的相关安全研究却未引起人们的重视.在这方面,文献[14,15]进行了研究和阐述.文献[14]对西门子S7-1200 协议中的日志相关功能进行分析,针对日志在入侵检测中的作用,提出一种名为PLCBlockMon 的PLC 逻辑.该逻辑仅记录标识系统状态和影响物理过程的变量数据,一方面简化日志记录的复杂性,另一方面也提高了检测方法的安全性,减小入侵检测系统的负载.文献[15]则针对PLCs 中来自受信任节点的拒绝服务(Denial of Service,DoS)攻击,提出一个入侵防御系统(Intrusion Prevention System,IPS).该系统最大的贡献在于它的通用性,可以在任何PLC 系统使用而不受工业基础设施的功能限制.该系统可以安装在PLC 系统内部,降低攻击者破坏IPS 的可能性;还可以安装在PLC 外部,为PLC 系统增加一层安全层,巩固深度防御方法.最重要的是,IPS 检测到DoS 攻击后会自动重启,以彻底清除所有攻击流量数据,确保系统正常运行,而不受攻击影响.
(3)SCADA 系统架构安全解决方案
文献[16]考虑到SCADA 系统组件中实现监控功能的数据完整性的重要性,使用区块链技术提高系统组件中数据日志的完整性.文章将以工作量证明PoW(Proof of Work)为基础的区块链技术集成到CPS 系统中.为了提高系统资源利用率,不影响工业控制系统实时性的需求,文章引入时间概念,对消息到达时间进行预测.该方案的贡献在于不仅对SCADA 系统中数据的完整性提供了可靠保证,优化验证计算以交付难以篡改的数据日志,还充分考虑了工业控制系统的系统监控功能的实时性需求.
在安全研究中,为了更好的验证安全解决方案的可行性,需要在工业控制系统中直接运行,但厂商不会允许在工业控制系统中部署不信任或未证实身份的设备,因此在研究中使用真实的SCADA 系统是不现实的.文献[17]开发了一个新颖的开源框架,用于新建、部署和管理SCADA 系统仿真平台,它可以在本地或远程自动部署大量虚拟机用来复制SCADA 网络.该框架包含多个虚拟主机模拟传感器和执行器,使用HMI控制虚拟主机.同时,该框架提供一组自动化脚本,可以根据用户需求自动部署可变数量的虚拟机.文章指出该框架符合IEC104 和OPC-UA 标准,并支持其他工业协议.最重要的是该框架建立在开源代码库的基础上,是一款免费开源的仿真平台软件.
(4)智能电网系统架构安全解决方案
在我国工业领域的控制系统信息安全研究中,电力行业一直处于领先地位,但是电力行业安全的研究重心一直放在边界安全上,没有对系统架构安全进行深入研究,文献[18]和文献[19]分别对电力系统架构改进和重建两方面做出分析.文献[18]针对电网系统中电力存储的检测与防护,提出一种名为PSP 的储能保护框架.文献[18]认为当今电网的安全管理体系中,系统安全人员面对攻击无法获悉攻击者的目标和攻击过程,仅能够观察到部分设备的状态变化情况,入侵检测工具的分析结果也具有不确定性.为了应对攻击者对电力存储系统攻击,电力设施的运营商必须以最小成本维持供电系统的稳定性.针对上述问题,文章设计一种名为PSP 的框架,它参考零和博弈问题,利用部分可观察马尔可夫决策过程(Partially Observable Markov Decision Process,POMDP)为系统问题建模,使用动态规划算法求得最优解并进行验证.该方案一方面充分考虑工控系统可用性至上的特性,从系统运行状态出发,只要系统运行正常,处于连续一致的状态,就不采取任何防御行动.另一方面充分考虑电力存储的3 种形式,以适应电力运营商的存储需求.文献[19]指出,智能电网的系统架构正在向分布式系统模型方向发展,欧盟的ELECTRA 项目提出关于未来智能电网可能的系统架构WoC (Web of Cells)概念模型,如图4所示.该模型最大的特点是“在当地解决当地问题”,单个细胞的稳定性通过细胞内的设备控制,系统整体的稳定性则由一个控制器控制.针对该系统架构,文章提出一种理论分析方法,首先将一次攻击过程分解为多个攻击阶段,然后分别对各个阶段进行建模评估,实现多段攻击过程的安全分析.该方法最大的贡献[20]在于引入时间属性,指出攻击成功的概率不仅是一个百分比,而是一个包含攻击者攻击过程可用时间的函数,以此对攻击结果进行定量分析.
2.2 基于通信协议的安全解决方案
工业控制系统的协议众多,早先工业控制系统为封闭系统,为了保证自己的核心竞争力和机密性,多采用不对外开放的专有协议.随着TCP/IP 等通用协议在工业领域的应用,专有协议的安全缺陷开始被攻击者利用,大部分专有协议的安全机制无鉴别、无加密、无审计,设备可通过扫描工业协议漏洞被发现,如表2[2].
文献[21]以“Stuxnet”事件为引,针对PLC 系统面临的严重的安全威胁,对西门子最新的S7-1211C 控制器协议和TIA (Totally Integrated Automation)软件漏洞进行研究,为PLC 的安全研究做出极大贡献.文章指出,首先,文中发现的漏洞并不复杂,复杂的是使用通讯协议本身的合法功能时产生的安全威胁;其次,通讯协议的身份认证机制和数据完整性检查机制并不可靠;最后,现有的入侵检测防御软件的功能是有限的,对系统自身合法行为引起的安全威胁的检测并不完善.文献[22]更进一步,分析通用的西门子S7 通讯协议,其分析方法有更好的实用性.该方法使用神经网络训练系统模型,利用系统模型当前的网络流量对系统异常进行监测.文章针对S7 通讯协议不需要身份验证即可与PLC 建立连接并获取数据的漏洞,开发S7 通讯协议客户端用于攻击测试.结果表明,该方法以97%的成功率检测异常网络数据包.这样的结果为人们分析不同IDS 中的S7 通讯协议提供更加具体、可靠的依据,同时为配合其他检测技术,建立检测能力更高的入侵检测系统提供帮助.
图4 文献[19]涉及的WoC 概念模型
表2 2018年不同协议可探测设备数量
同样,用于监视和控制底层物理系统,满足其更好的功能性和可用性需求的SCADA 系统也不能保证过程数据的机密性.文献[23]针对IEC-104 协议开发一个解析器,对协议包解析后直接反馈到系统模型中,然后利用Bro 自适应性策略制定的物理约束和安全需求对SCADA 流量进行实时检查.该方法可以在现场使用,探测到可疑和错误的命令或传感器读数时会自动生成警报,因此,该方法可以全面提高本地入侵检测系统的安全性能.
文献[24]则针对Modbus 协议提出新的入侵检测方法.该文献为基于软件定义网络(Software Defined Networking,SDN)的工业控制系统建立基于网络的两层入侵检测系统.第一层由运行在交换机上的协议白名单组成,利用基于P4 (Programming Protocol-independent Packet Processors)的数据包处理器实时监控,将可疑数据包直接转移到第二层进行深入检测;第二层则由一个深度包探测器和Bro 组成,目的是更新第一层中的白名单.该文献的主要贡献有:首先,该两层入侵检测系统使用P4 编写包处理器,为以后扩展其他工业协议奠定了基础,且数据包处理器直接运行在交换机上,不需要额外添加设备,降低运营成本;其次,两层的设计理念解决现有的白名单方法的缺点,系统不再直接拒绝可疑包,而是将其转发到第二层做深入检测,减小负载;最后,仿真实验证明,该入侵检测系统对工控系统的通讯仅有极小的通讯延迟,基本不影响系统的实时性要求.
以上4 篇文章的贡献在于从工控系统中使用的专用通讯协议出发,针对通讯协议的安全漏洞提出相应的入侵检测方法,不仅填补了工业协议相关研究方面的空白,还为后续ICS 信息安全研究提出新思路.
3 ICS 信息安全未来发展方向
本文对会议论文中提出的安全解决方案进行研究与分析,针对其中采用的技术与方法,对未来ICS 信息安全研究方向提出以下建议.
(1)网络攻击模型的应用
网络攻击模型的应用可以加深研究人员对网络攻击的认识和描述,通过网络攻击模型可以对整个攻击过程进行结构化建模和形式化描述,帮助研究人员利用已有的攻击行为背景对网络攻击进行深入分析.随着IT 技术的发展和网上共享资源的增加,攻击手段越来越多样化,攻击过程越来越复杂,想把攻击完全隔离在系统之外是不可能的,只能根据已知攻击行为的关联性找出攻击规律,进一步确定攻击目标,从而针对攻击过程采取阶段性的防御策略来阻止攻击.这足以可见网络攻击模型在当前背景下的重要作用.当前我国研究人员对网络攻击模型研究的实际应用还不完善,更加需要深入研究网络攻击模型的实际应用和理论创新,积极在入侵检测和防御系统中应用网络攻击模型.
(2)开源的工业控制系统仿真平台
由于工业控制系统的封闭性,厂商对不信任或未经身份验证设备连接的拒绝,ICS 仿真平台一直是研究的热点,随着仿真和虚拟技术的发展,工业控制系统系统仿真技术已得到广泛应用.但是已有的仿真平台聚焦于特定的工业协议和控制系统,通用性差,不具备扩展能力.更重要的是,大部分仿真平台不开源,使用成本高,使得部分学术研究试验不可再现,阻碍学术研究进展.随着工业控制系统信息安全受重视程度的提高,迫切需要开发更多免费、开源的仿真平台,以便其在信息安全研究进程中发挥重要作用.
(3)非技术型人机界面的研究
人机界面可以把系统中涉及和产生的数据信息转为直观的图形化界面,方便系统和用户之间的信息交互,但已有的人机界面多用于与技术人员进行沟通,专业性过强,非技术型研究人员不能简单易懂的获取相关信息,阻碍研究进程.工业控制系统信息安全研究中,不仅涉及以信息安全为背景的研究人员,还会涉及工业背景的研究人员,以及不具有任何安全知识背景管理层和用户.为了更明确的表示安全结果,可视化人机界面要多者兼顾,提供技术型和非技术型人机界面,促进不同研究背景下安全技术的融合.
4 结束语
工业4.0 时代的到来,ICS 在国家关键基础建设中的重要地位得到极大提高.同时,信息化与工业化的深度融合使工业控制系统继承IT 系统的网络安全威胁,但是工业控制系统ICS 与IT 系统之间存在巨大差异,不能直接将传统IT 安全技术应用于ICS 中,需要根据实际需求研究适用于ICS 的安全技术,这使我国起步较晚的工业控制系统信息安全面临着严峻的挑战.本文对2018年ICS-CSR 会议涉及的先进的ICS 信息安全解决方案做出阐述与分析,并根据实际需求对研究方向提出针对性建议.总之,ICS 信息安全行业刚刚步入正轨,成长空间广阔,仍需要研究人员对工业控制系统信息安全技术做出新的研究.