王奕钧
(公安部第一研究所,北京 100048)
互联网和信息技术经过近年来的快速发展,已开始与传统产业加速融合,“工业互联网”开始崭露头角。根据工业互联网联盟对工业互联网的定义:工业互联网是互联网和新一代信息技术与工业系统全方位深度融合所形成的产业和应用生态,是工业智能化发展的关键综合信息基础设施。工业物联网将物品、机器、计算机互联互通,辅助提供智能工业操作,改变商业产出,现已广泛应用于能源、电力、交通、军工、航空航天、医疗等关系到国家安全、国际民生的重点制造行业,是国家关键生产制造基地的同时也是关键信息基础设施[1]。在新冠肺炎疫情防控中,工业互联网平台有效支撑了防控应急处置,助力物资供需对接,推进企业复工复产,发挥了不可或缺的基础支撑作用[2]。国家工业互联网的安全已经关系到了国家安全。但工业互联网打破了传统工业相对封闭但可信的制造环境,所面临的安全风险和对工业生产的威胁与日俱增。
近年来,针对工业互联网的网络攻击不断攀升,受攻击的目标范围不断扩大。2015年12月,乌克兰电力系统遭到恶意软件攻击,攻击者利用系统漏洞获取了SCADA系统控制权限,远程控制系统跳闸,最终造成大面积停电[3];2017年5月,罗马尼亚汽车制造商契亚、西班牙Iberdrola电力公司、尼桑桑德兰工厂等多家知名企业工业设施遭遇WannaCry勒索软件攻击,造成停工停产的严重后果[4];2018年2月,以色列工业网络安全企业Radiflow公司发现四台接入欧洲废水处理设施运营技术网络的服务器遭遇恶意挖矿软件的入侵,并因此导致了废水处理设备中的HMI服务器瘫痪;特斯拉的云服务器也遭到入侵,入侵黑客通过攻击Kubernetes框架,在特斯拉公司基础设施的计算资源中植入挖矿软件挖掘门罗币[5];同年5月,有关安全人员披露:全球超过54个国家,近50万台设备遭遇了利用新型恶意软件VPNFilter的入侵攻击,该恶意软件利用被感染设备组成僵尸网络,搜集网络流量和数据、执行命令和控制设备、拦截数据包、监控Modbus协议等,是利用SCADA系统的新型攻击软件[6]。
由此可见,针对工业互联网的攻击已经将攻击目标从SCADA等传统的工业控制系统,向工业设备、云服务器、IT设备等波及蔓延,针对工业互联网的攻击方式也越发多样,由针对性很强的APT攻击开始向包括勒索软件、挖矿病毒、僵尸网络等泛化攻击演变。随着工业互联网的开放化发展,设备层中的设备从资源还是运算能力上都得到了极大的提高,同时,为了便于增加新的应用功能,越来越多的设备采用了Linux开源操作系统,针对工业互联网的攻击门槛也越来越低。并且工业互联网还在不断发展深入,云平台、IPv6、SDN等新技术也会逐步加入工业互联网,相应地也会有越来越多的攻击逐渐延伸到工业云平台、网络、数据等层面。
工业互联网常见结构可以分为信息技术层(Information Technology,IT)和操作技术层(Operation Technology,OT)。OT层包括工程师站、PLC、执行设备、传感器等现场设备,用于实现工控网络中对资源、流程、工艺及事件的管理控制,覆盖生产运营、能源运营、设备资产运营以及服务运营等层面内容[7]。IT层则包括软件配置管理(SCM)、企业资源管理(ERP)、客户关系管理(CRM)、企业生产过程执行管理(MES)等管理系统,通过采集大量OT层数据并加以处理利用,达到优化OT层生产流程,提高工业互联网生产运行效率的目的。但随着工业互联网的发展,OT层与IT层互通互联成为的新的发展趋势,过去传统工控网络中OT网络与IT网络的明显隔离变得越来越模糊,更多的数据在工厂内部的OT层与IT层之间流转,同时,在工厂外也衍生出更多的定制业务、协同业务、产品服务等工业云平台的功能,工厂内部的数据也因为业务需求而流转到工业云平台。而为了保证工厂外与工厂内数据的流转交互,通常需要使用VPN或白名单绑定的方式来建立动态或静态网络访问准入机制,以缩小工厂互联网暴露面,应对来自互联网中的网络攻击。工业互联网边界防护示意如图1所示。
图1 工业互联网边界防护示意图
由此可见,当前工业互联网的安全防护理念相信所有网络访问是合法的,通过规则过滤结合行为检测的技术手段过滤掉网络攻击和恶意请求,从而建立防御入侵渗透的南北向攻击和内网漫游的东西向攻击的安全防护边界。南北向防御主要通过在网络出口处部署防火墙、IPS等设备建立外网防护的边界,而东西向防御主要依赖在内网划分出多个功能分区,并在各分区之间进行安全隔离,从而规定出内部网络的网络安全边界[8]。但是,伴随着网络攻击手段变化层出不穷,这种传统的防护体系在一定程度上可以防御外部攻击,但无法抵御更高强度、有针对性的APT攻击。同时,为了保证工业云平台中各业务的快速增长,工厂内部与外部的数据安全交互,工厂网络出口处的安全运维工作压力会持续增高,并且由于工厂内部网络的访问规则一旦这层网络防护被突破,针对工厂内部的横向渗透将很难被有效防护。
因此,为了推进工业互联网的健康发展,中国与时俱进发布了《GB/T42021-2022 工业互联网总体网络架构》国家标准。其中,第9章“工业互联网网络安全要求”提出设备安全防护要求和网络安全防护要求,主要是要遵循《YD/T3804-2020工业互联网安全防护总体要求》相关规定,明确了工业互联网安全防护内容包括设备安全、控制安全、网络安全等多个方面的要求[9]。
2004年,一批IT安全管理者在Jericho论坛提出,在复杂的企业IT网络中,传统的网络边界正在消失,防火墙和其他边界网关已成为阻碍电子商务发展的绊脚石,在建设企业网络时应该消除这种边界(即“去边界化”)。2010年,著名研究机构Forrester的首席分析师John Kindervag提出了零信任(Zero Trust)的概念,即“我们的网络无时无刻不处于危险的环境中,网络位置不足以决定网络的可信程度,在安全区域边界外的用户是不安全的,所有设备、用户和网络流量都应当经过认证和授权,遵循最小权限原则,确保所有的访问主体、资源、通信链路出于最安全的状态”。Google在BeyondCorp项目中率先应用了零信任的防护理念,很好地解决了传统边界安全理念难以应对的安全问题。零信任概念的提出为业界勾勒了零信任安全的蓝图,自此,越来越多的网络安全专家开始将目光转向“零信任”。2020年2月,美国国家标准与技术研究院发布《SP800-207:Zero Trust Architecture》(第二版草案),标志着“零信任”从理念走向工程实践甚至标准化[10]。“零信任”的发展过程如图2所示。
图2 “零信任”发展流程
相较于传统网络安全防护,“零信任”理念从信任准入出发,默认阻断一切连接,动态信任校验成功的连接,以隐身代替对抗,以准入代替检测。从根本上解决依赖安全策略配置导致的超量信任问题。通过假定所有的用户、终端、资源都是不可信的,所有用户、终端、资源对资源的请求都需要通过动态的安全校验,在建立用户端到后台服务器的信任链后,方可具有对资源的安全访问权限,防止传统网络安全防护理念中超量信任带来的安全问题[11]。零信任安全防护模型如图3所示。
图3 “零信任”安全模型
相对于传统边界网络,“零信任”的安全模型将所有的外部访问设备定义为非信任区域,所有来自非信任区域内设备的访问请求都需要通过控制设备的鉴权后才能分配到可以访问授信区域内服务节点的访问链路,没有获得合法访问链路的所有外部设备的访问请求都将在控制区域内被阻断,从而通过在边界动态授权的方式,解决传统网络安全边界防护需要投入大量设备、运维、升级成本的根本问题。
在以往安全解决方案中,网络和信息安全事件通常以“行为”作为攻防事件的核心焦点,从而形成了以网络安全行为防范为核心的安全治理模式。但是,工业互联网对外开放多种接口,使得许多工业控制行为被动连接到外部互联网。鉴于传统的安全防护仅是从信息安全或者功能安全的角度进行设计的,这使得IT环境与OT环境的信任边界变得模糊,导致风险防控问题更为复杂[12]。
基于“零信任”的工业互联网边界防护方案的设计思路是在工厂内外部IT层之间、工厂内部IT层与OT层之间建立零信任的访问控制体系。工厂内的IT层默认阻断所有来自工厂外部的访问请求,从工厂外部应用需要访问工厂内部应用时,需要首先根据被访问服务的公钥文件、认证端口、校验码等信息初始化自身的鉴定请求,之后鉴定请求发往“零信任”控制设备完成访问申请,“零信任”控制设备完成此条请求的身份鉴别后,向阻断设备发送允许建立此次链接的指令,阻断设备根据指令动态方向相关网络访问请求。同样的,工厂内部IT层与OT层之间也依据此种机制完成OT层对外隐藏自身应用,IT层应用根据需要动态建立访问隧道的边界安全访问手段。
基于“零信任”的工业互联网边界防护方案的核心思路是围绕工业生产应用创建基于身份和上下文的逻辑访问边界,边界内部对外提供服务的应用是隐藏的,无法被直接发现和访问,使攻击者在网络空间探测或内网漫游时无法发现攻击目标,进而无法完成对其的攻击渗透。“零信任”控制设备会验证访问应用的身份、上下文和策略合规性,在不影响业务正常运行的同时,显著缩小攻击暴露面。
该方案可通过在网络出口核心交换处部署“零信任”控制设备和阻断设备,通过读取核心交换机的镜像流量,识别流量中特定的SPA认证包,进而完成后续的身份鉴定业务逻辑,阻断设备通过发送双向阻断的数据包实现默认阻断所有外部访问的阻断业务逻辑。部署结构及认证过程示意如图4所示。
图4 基于“零信任”的工业互联网边界防护方案部署结构示意图
基于“零信任”的工业互联网边界防护方案涉及三个业务流程:应用隐身、身份鉴别、访问控制。
(1)应用隐身。
基于TCP/IP协议中三次握手成功后建立访问连接的机制,通过向未经授权的通信两端发送SYN RST和SYN ACK RST包的方式[13],可以阻断所有未授权访问的来自边界外部的扫描探测行为,从而达到将应用隐身的效果。
(2)身份鉴别。
身份鉴别基于国产加密算法SM9实现[14],SM9现已成为中国商用密码国家标准,同时,SM9数字签名算法和加密算法也已成为ISO/IEC国际标准[15]。身份鉴别过程中边界外的应用将需要访问的应用IP、端口、校验码、时间戳通过边界内应用的公钥使用SM9加密算法加密后形成申请授权的Token,并以UDP协议发往“零信任”控制设备的指定端口,“零信任”控制设备在镜像流量中捕获有效Token后,根据对应边界内应用的私钥将Token解密,然后验证校验码的正确性和时间戳的有效性,如均验证成功,则向阻断设备发送指令,针对边界外应用IP、边界内应用IP和端口进行放行。同时,“零信任”控制设备还将在镜像流量中监测该链路的访问情况,当超过空闲阈值时,将向阻断设备发送指令,恢复对该边界内应用的应用隐身操作。
(3)访问控制。
阻断设备在收到放行指令后,将针对指令中的源IP、目的IP、目的端口建立临时白名单,停止对白名单中的访问双方发送SYN RST包,从而允许建立该访问链路的效果。
以工厂外IT层访问工厂级IT层为例,详细访问流程如图5所示。
图5 基于“零信任”的工业互联网边界防护方案访问流程
该方案已经在某重要行业单位试点应用,可以通过配置应用名称、应用IP、应用端口、校验码、准入时长来保证工业互联网中的应用基于“零信任”机制对外提供服务,确保工业互联网中的应用在互联网上不可被扫描探测发现。配置规则如图6所示。
图6 零信任授权设备规则配置详情
当互联网上有主机设备试图探测访问工业互联网中的应用时,零信任授权设备将直接阻断该请求连接,并形成告警日志,告警日志如图7所示。
图7 告警日志页面
基于“零信任”的工业互联网边界防护方案相较于传统的网络传统边界安全具有安全性高、部署灵活、兼容性好的特点,具体优势如下:
(1)无需改变工业互联网中生产网络与外部网络的网络结构,不用改造被保护的工业生产应用,即可实现工业生产应用在外部网络中隐身的边界防护效果;
(2)通过在镜像流量中过滤授权请求的方式无需在外部暴露零信任授权服务,避免遭受有针对性的攻击,进而授权任意用户访问;
(3)“零信任”控制设备和阻断设备采用旁路部署的方式,接入交换机镜像流量,降低串行部署的带来的性能、安全、可靠性瓶颈;
(4)可以通过镜像内网流量的方式,实现对内部用户访问内部应用时的零信任授权功能,有效抵御内部攻击。
当传统的工业制造与新兴信息技术、互联网技术相融合后,一个全新的工业时代正在人们面前徐徐拉开序幕,工业互联网的发展也呈现出顶层布局形成共识、“平台+”集群式转型、“链式”融合创新、智能技术规模化应用等发展趋势[16]。由于工业互联网广泛运用于能源、电力、交通、军工、航空航天、医疗以及市政等领域,涉及到众多国家关键基础设施,因此对工业互联网的安全防护工作就显得尤为重要。但根据Common Vulnerabilities &Exposures (CVE)、National Vulnerability Database (NVD)、中国国家信息安全漏洞共享平台(CNVD)及国家信息安全漏洞库(CNNVD)四大安全漏洞共享平台发布的工控系统安全漏洞分布可见,制造业、水务、能源、商业设施、医疗、轨道交通、航空等关键基础行业都存在大量漏洞隐患[17]。由此可见,国内工业互联网急需一套自主可控、兼容性好、安全性高的防护方案来应对当前形势下面临的网络安全风险。
该文从工业互联网的边界防护为切入点,引入“零信任”的安全防护机制,为整个生产内网提供整体安全防护能力,同时兼容了数量庞大、种类繁多的工业设备、操作系统以及生产应用。通过将对可信信道的建立与工业生产控制访问相剥离,在不调整已有应用服务的前提下,利用单包授权校验、二次信道授权等技术手段保证工业互联网上对外开放的服务不受影响的同时,黑客无法探测出对外开放的服务,从而实现保护服务不能被黑客攻击的目标。“零信任”的安全防护机制在数据中心内部访问、物联网、混合云、工业物联网机房对外访问入口等应有场景下有良好的防护效果[18]。互联网的防护是一项长期性、高难度、高复杂性的系统工程,仍然需要通过完善指引工业互联网安全发展的网络安全制度、标准,提升工业互联网安全防护技术创新能力,打造工业互联网安全监测预警手段等方式,全面提升国内工业互联网的安全防护水平,保证国内工业互联网的健康发展。