工业互联网的连接安全问题,不单纯是指传感器、网关设备、服务器等工业网络节点的合法身份能否受到保护,也包括工业数据环境的安全,如数据能否被正常读写访问,是否存在泄露的风险或发生实质性的变化,尤其是数据行为的非正常改变。我们需要辨明工业互联网连接和安全之间的关系,包括连接的构成、两端的接口,以及外部攻击的机理。研究工业互联网连接安全的关键在于建立连接与安全的关系模型,从中找出不断削弱乃至完全消除安全问题的相关技术途径。这是本文关于应对IIoT安全挑战的一种思路。
3 工业互联网的连接特性
工业互联网是由大规模节点相互“连接”组成的数字化大系统,其特征是连接节点数量多且分布广泛。图1为工业互联网中包含多种连接与相关通信部分的4层架构[6]。边缘层由工业终端设备和边缘网关设备共同组成。作为边缘层的集群节点,网关设备可连接多个工业设备或系统,如有必要还可以与其它网络建立桥接通信关系。除了工业网络数据包抓取和特定通讯协议解析的功能外,网关设备还可能包含边缘计算环境。网络层由互联网基础设施构成,它的作用是在边缘层和云平台之间建立数据流和控制流。平台层由云计算环境构成,是工业大数据存储、管理和计算的中心。应用层主要由人机交互的可视化应用终端构成,可输入工业用户的需求,并显示工业应用的计算结果。
图1 工业互联网的4层连接架构
工业互联网的4个层级包含多条连接通道。这些通道承担着边缘数据采集、云控制、人机交互,以及工业互联网与其他第三方系统API通信的重要任务。就单个通道而言,它可能承接两个端点的数据传输任务,也可能穿越不同层级的多个中间节点,经过单向和双向的数据传输,形成数据链路或回路。不同节点通过连接通道形成的依存关系,构成了交错复杂的数据网络。理论上工业互联网上每个连接通道都应得到安全保护,否则只要有一个环节出问题,就容易导致整个工业互联网受到冲击。
工业互联网的连接本质上由3种元素组成,即端点(节点)、连接通道和数据流。典型的连接至少包含2个以上端点,1条单项或双向的连接通道,1条以上数据流。表1列出了工业互联网系统最常见的5类端点,以及典型的连接通道和网络通信协议。其中,代表性的直连链路有5种(链路1~5)。以A、B两类端点所处的边缘层数据链路为例,链路1的数据源由工业设备(如温度传感器)的通讯模块发出,采用特定工业网络协议(如ModbusTCP)传输至边缘网关,边缘网关捕获数据包后对特定通讯进行解析,把采集到的数据存入指定的缓存区域,而后可通过链路2的互联网通信接口和MQTT等协议发送到云端的缓存区域,从而形成串联数据链。
从以上分析可以做出推论,连接端点是网络攻击的主要突破点。攻击的后果包括:(1)通讯服务阻断;(2)数据通道被利用;(3)通讯数据被篡改。因此,研究连接与信息安全之间的关系模型,对于工业互联网的安全管控至关重要。
4 连接与安全的关系模型
建立连接与安全的关系模型,有助于形成工业互联网系统风险威胁的来源、攻击的对象/形式/通道、产生的数据变化,以及造成的损害等要素之间的逻辑关系。图2是连接与安全关系模型的一种表达形式。
图2 工业连接与安全的关系模型
工业环境存在多种威胁的攻击源。其中,5类工业端点的主机(如工业设备、网关、服务器、应用或第三方系统的客户端)由于缺乏防护常处于脆弱的状态,极易受到木马、蠕虫、灰色软件、后门病毒、感染性病毒和漏洞等多种形态的病毒威胁或恶意软件的攻击。据瑞星公司统计,2019年工业系统感染的病毒中,木马病毒占据总数的63.5%,其次是蠕虫病毒。而一部分感染性病毒由于会造成巨大损失,也成为工业安全防御的关键,尤其是会感染并蔓延到整个工业网络的勒索病毒。
从攻击对象上看,工业互联网的安全问题可分为2种。一种是对物理安全的硬攻击,如对工业设备网络或调试等物理接口进行远程破坏,以达到恶意追踪或非法使用的目的,另一种是对操作系统、应用程序,以及协议接口漏洞的软攻击。后者是工业连接安全的主要通道。如攻击者可通过边缘设备或服务器操作系统上的远程执行代码漏洞、系统保留的不必要服务、应用软件编码逻辑的缺陷、被注入恶意程序代码的第三方组件,或是工业协议接口的漏洞进行恶意攻击。攻击者通常可通过对端点的攻击,达到对设备节点控制、数据非法访问和篡改等目的。经由通讯网络的感染是工业互联网最常见的攻击途径,包括利用网络协议、采用身份欺骗、介入拒绝服务、修改权限、渗透密钥管理等多种攻击方式。其中,利用网络协议进行网络攻击,常常是由网络连接缺乏认证、授权或加密机制等问题引起的,如Modbus协议只需给定一组合法地址和功能码就可建立会话。攻击者还可通过伪造合法身份、使用虚假设备ID,以及利用系统保存的账户凭据,来获得工业设备或服务器的访问权限。拒绝服务是一类消耗服务器可用资源以阻止系统正常运行服务的主要攻击方式,可引发系统进程崩溃或死锁。造成拒绝服务的手段有很多种,例如攻击者可通过ARP欺骗等嗅探手段,接收发往其他节点的数据,或将数据转发到不可用节点,从而造成拒绝服务。未授权的用户采用非法手段取得足够信任的访问权限,也是一类重要的风险类型。攻击者可采用多种形式来提升用户权限,如对Web界面进行SQL注入攻击,实现数据库非法访问,或利用数据库漏洞和函数的缺陷来提升访问权限。另外,缺乏密码管理或遭受弱密码攻击也是常见的攻击方式。网络攻击者可通过调试接口来禁用密码功能,恶意使用密钥或数据证书,或通过密码算法错误的漏洞来访问加密过的数据。工业互联网中的各种连接建立和通讯过程的审计也是信息安全机制的重要组成部分,对这部分的破坏同样是一种性质非常恶劣的网络攻击。
通常工业互联网上大部分网络攻击会从特定的通讯链路(如表1)进入,并最终体现在数据的变化上。数据的异常变化是遭受网络攻击的重要特征。构建连接与安全的关系模型,最终目的就是要研究哪些数据变化是由网络攻击造成的,从而为研制网络攻击的防范技术提供必要的基础。
图3是数据异常变化的8种模式,包括:(1)数据窃取,即通过窃听等网络技术截获数据内容,但数据本身并未发生改变;(2)数据篡改,即协议字段等通信数据内容被有意修改,或数据被截获后对其内容进行的篡改,导致数据本身发生变化;(3)数据丢失,即数据内容被恶意删除,造成数据丢失;(4)数据伪造,即数据内容本身是捏造的,在通信网络或数据库中被非法使用,可能对系统造成影响;(5)数据延迟,即数据通讯过程受到某种阻碍,导致数据的时序发生错乱,或影响到工业互联网的数据实时性能;(6)数据阻断,即数据内容虽然没有变化,但是遭受网络攻击,导致通讯中断,相关数据无法访问;(7)非法授权,即数据在预设的规则以外,被非法授权给可疑的身份或设备;(8)数据抵赖,即数据不仅被非法访问、授权或篡改,还无法得到证实。
图3 数据行为改变的典型形态
在工业互联网中,任何数据的异常改变都可能带来严重的影响。因为,大部分工业互联网的应用是采用数据驱动的原理来实现的,所以数据的真实性与工业互联网的安全性紧密相关。这种影响的隐蔽性很强,不易被发现,因此它的危害性也是极大的。同时还需要高度重视数据链整体异常变化的危害性。网络攻击者可能会利用工业互联网复杂连接中的关键节点(或薄弱节点),把它作为突破口,通过DNS、结果重定向或中间人攻击等手段发起链式攻击,触发一系列级联反应,从而造成重大损失。例如攻击者可先后通过欺骗伪造认证,采用窃听手段截获网络数据,经过中间人攻击修改网络数据,最后利用拒绝服务阻断通信网络,最终造成系统长时间宕机,导致生产线停产。
5 数据行为分析技术
为了防止数据异常改变对工业互联网造成严重破坏,必须增强其安全态势的感知能力,使其具有足够强大的免疫功能。为此,我们要充分利用连接与安全的关系模型,提出一种面向工业互联网数据行为的侦测机制,用于实时分析连接通道中的数据可信度,为信息安全的风险评估和防范网络攻击提供科学依据。
事实上,工业互联网的连接关系一般情况下是固定不变的,或者是动态但可预知的。因此,各个连接上的数据变化范围、变化规律,以及相关之间的逻辑关系通常也是确定的,或者是可以预判的。特别是与工业生产过程相关的数据,或者是在企业管理制度中得到约束的数据,它们的变化应满足相应的设备运动规律和管理要求,所以均可以采用特定的模型来表示。在工业互联网未受到网络攻击时,相关数据变化的统计规律可以作为判定是否遭受网络攻击的依据。此外,数据的矛盾关系也可以被视作是一种数据是否发生异常变化的判据。所谓数据行为侦测,实质上就是利用这种判据去分析工业互联网是否遭受到某种网络攻击。工业互联网中存储了大量的工业历史数据,为实现这种判定过程提供了条件。对数据异常变化的侦测与工业系统的故障诊断也有一定程度的重叠。这可以帮助我们区分数据异常变化的起因是来自网络攻击还是非人为因素(例如传感器故障)。
图4为数据行为分析技术的基本原理。这项技术由三部分功能组成。
图4 数据行为分析技术原理
一是数据关系的建模。可对每一条连接通道中数据行为的关系进行建模,以分析数据变化的可信度指数。可针对异常的数据部分,提取异常行为的特征数据(如特定类型的病毒攻击、恶意程序写入或常规的设备故障等),用于评估可信度。这里数据关系的建模机制可采用逻辑计算或神经网络等机器学习方法来实现,而异常行为特征的提取有助于准确识别异常问题的来源。一种可行的做法是对已有的风险威胁攻击造成工业数据异常行为进行建模,通过记录病毒攻击行为,提取有关的特征数据。而后使用异常的数据样本来训练系统的算法模型。经过多轮迭代学习,算法模型即可从中提取出特定的数据关系模式,并且编码到算法结构中。数据行为分析时,先判断被测数据是否超出异常度的阈值范围,若是则输入算法模型结构中。如若被检测某个数据行为与预先定义好的威胁攻击行为的特征集合在某种程度上相匹配,则可针对该连接计算出一组可信度指数,用来综合评估该链路存在某些威胁攻击的可能性,且能够在某种程度上推断出潜在的安全威胁属于何种细分类型。
二是可信度指数的计算。可信度需要一个严格的定义。每一条连接都存在唯一的信任指数与之对应。可信度的值与7个维度的安全指标有关,即Li_CRED= f (Cxi, Cyi, Czi, Cmi, Cni, Cpi, Cqi)。其中,Li_CRED代表第i条连接的信任指数,Cxi表示该链路数据的保密性,即敏感信息不被泄露;Cyi代表数据完整性,即数据在未被检测到的情况下没有发生任何修改;Czi代表数据可用性,确保信息在需要时可被访问使用;Cmi代表身份认证,即明确数据的归属权限,确保没有被未知实体访问,Cni代表不可否认性,即能够确保系统不能否认执行过某种操作;Cpi代表弹性,即在恶意威胁攻击时,系统可保持状态感知和正常运行水平;Cqi代表安全性,即在发生攻击时,受影响的系统不会对环境或人造成危害或损坏。
三是安全保护处置。针对每一条链路计算得到的可信度指数,综合评估该链路的异常数据关系属于信息安全威胁攻击行为的可能性。一旦链路中数据变化的可信度指数降低到一定程度,系统将自动做出保护性的处理。若判定为非威胁攻击类异常行为,可通过人机交互窗口触发自动报警警示。否则,在报警警示的同时也将触发相应的数据保护模块,根据预设的处理策略自动过滤数据或切断通讯链路,或将异常部分数据进行清除和修复。
6 结语
参考文献:
摘自《工业控制系统信息安全专刊(第七辑)》