基于国产密码算法的数控系统安全解决方案*

2018-03-13 01:18邹大均
通信技术 2018年2期
关键词:防护装置数控系统数控机床

邹大均,黄 沾

0 引 言

自“震网”病毒事件爆发和美国发布“国家网络空间安全战略”政策后,工业控制系统安全引起了我国的高度重视,并把工业控制系统的安全提到了国家安全战略的高度。工业和信息化部发布了《关于加强工业控制系统信息安全管理的通知》(工信部协〔2011〕451号),强调加强工业信息安全的重要性、紧迫性,并明确了重点领域工业控制系统信息安全的管理要求。2015年5月8日,国务院正式发布《中国制造2025》强国战略纲领。“中国制造2025”[1]是在新的国际国内环境下,我国立足于国际产业变革大势,做出的全面提升中国制造业发展质量和水平的重大战略部署。它的主攻方向是智能制造,而智能制造的核心是数控系统。数控系统信息化主要表现在研制生产系统集成化,产品开发数字化、并行化,产品研制生产敏捷化,企业管理集成信息化四个方面。数控系统信息化对于各领域制造业提高劳动生产率、降低成本、缩短研制周期、快速响应市场变化、提高产品质量和客户满意程度、全面提升竞争能力具有重要作用。但是,数控系统固有安全漏洞和联网后的开放性,使其面临的信息安全威胁持续扩大[2]。数控系统一旦遭到破坏,将导致数控机床乃至整个生产线停机,给企业造成重大损失。

目前,国内多数控系统特别是中高端数控系统均采用国外产品和技术。然而,国外产品和技术对国内用户采用封闭措施,导致关键基础设施安全问题受制于人。此外,以“震网”为代表的工业网络攻击和入侵屡见不鲜,带来巨大的损失,也给智能制造敲响了警钟。可见,实现自主可控的数控系统,智能制造才能持续发展。因此,基于国产密码算法的数控系统安全解决方案研究尤为迫切和重要。

1 数控系统的现状分析

数控系统的核心硬件设备包括数控机床、DNC服务器、操作员站、可编程逻辑控制器(PLC)和交换设备等。除数控机床和PLC,其他硬件设备与通用信息系统中的硬件设备并无太大差异。数控系统的核心软件包括数控机床系统及控制程序、主机操作系统(如Linux、Windows操作系统等)和应用软件等。

数控加工制造企业的科研办公网与生产工控网大多互联,网络内部根据业务需求划分了多个安全域,安全域通过交换机直接接入公司的科研办公网,中间未实施安全防护隔离措施。安全域内部、安全域之间可直接互访,无网络访问审计记录。典型的网络拓扑如图1所示。

图1 网络拓扑

数控系统业务根据需求主要分为两类,一类是加工生产NC代码的数据传递,一类是数控机床状态信息的收集和显示。DNC服务器负责存储重要的NC代码数据和生产状态数据。操作员站对DNC服务器上的数据进行操作,而数控机床从DNC服务器上获取数据,并传递状态给DNC服务器。整体生产业务实时性要求不高,生产终端设备的硬软件资源有限。具体业务数据流如图2所示。

2 数控系统的风险分析

通过数控系统用户的现场访谈、调研问卷、实地考察和技术检查等方式,完成了数控系统的安全风险分析,得出以下几个重要的风险点。

数控终端的安全风险。主机、机床对外的通用串行总线接口(USB)、串口、网口等接口缺少管控;机床厂商或代理商的维修操作缺乏统一的认证和管控,存在加工文件、加工参数、重要日志文件外泄和被破坏的安全风险。

数控业务网络的安全风险。生产车间的网络缺少监控手段,无法对攻击行为实时报警;网络上的业务由于缺乏访问控制,存在误操作、跨权限操作、易于被攻击等情况,导致存在生产异常的安全风险。

数控数据的安全风险。没有专业安全防护的DNC服务器上的重要数据未加密也未数字签名,存在被篡改、被破坏的安全风险;数据传输过程中未使用加密手段,导致数据易被窃取的安全风险。

图2 业务流

3 数控系统的安全解决方案

结合数控系统用户的实际需求和现实生产环境的风险分析,为实现对数控系统的全方位安全防护,提出以终端防护和数据防护为核心,辅以网络防护并应用国产密码技术的整体安全解决方案。

3.1 终端防护

数控系统现场的接入终端主要有数控机床、操作员站、DNC服务器等主机或设备,如图3所示。数控机床的系统软件是固化的,无法安装第三方防护软件,而其余主机或者服务器则需要安装主机监控软件,从操作上禁用非法外来介质,同时数控机床在内的所有终端设备的多余外设接口都应该被封禁,包括USB口、串口、网口等,应从物理上禁止非法接入。

主机监控软件除了禁止非法介质的接入,还需要记录对主机的所有操作。有条件的用户可以在数控系统网络中加入专用的日志服务器存储这些记录,用于分析和审计。

数控机床作为数控系统中最特殊的终端设备,其安全防护与一般的网络终端在身份认证、数字签名等技术处理上存在较大差异。对这类终端的防护需要加入专用的防护装置,方案后续章节将对此防护装置进行详细阐述。

由于目前大多数控系统为国外产品和技术,若要全面实现自主可控,短时间内没法实现。这是一个渐进的过程,需要逐步实现。因此,接入数控终端的身份认证技术使用的密码算法,本方案建议使用国产密码算法来替代通用密码算法,在身份认证和数据加密技术方面首先实现自主可控。

3.2 网络防护

终端防护中提及的专用防护装置,主要用于终端特别是数控机床的专用防护上,并不能替代工业以太网中的工业防火墙、工业隔离网关的作用。因此,在重要的网络节点仍需部署必要的防护网关,用以保护数控系统网络。

图3 终端防护

同时,通过网络访问数控机床或者数控机床通过网络访问DNC服务器,都需要通过在防护装置上进行身份认证,取得授权后方可进行网络交互。这里需要解决由谁在哪个位置上使用什么样的终端对目标进行访问的问题。

3.3 数据防护

对于存储重要数控加工文件、设计文件的DNC服务器的保护,除了一般主机的保护外,还需要加入额外的技术,用以保护服务器上数据的存储和传输。重要保护区域内所有数据文件都需要进行加密或者数字签名,这需要根据业务的实时性、生产环境的软硬件资源、是否具备密钥管理能力等情况而定,从而优化安全防护手段,降低成本,易于工程部署和用户操作。

数控机床生产运行的状态数据同样重要,需要在安全的网络信道中传输并加以安全存储。

若数控系统网络需要跨公网,则还需要VPN技术的支持,以防数据在公网上被窃取和篡改。

而以上在数据存储和传输过程中使用的密码算法,同样需要使用国产密码算法。

3.4 密码技术

随着全球范围内密码技术的发展和计算能力的提升,现有普遍采用的国际通用密码算法已不满足当前和今后应用的安全需求。目前,各国都在进行算法升级或迁移。

信息安全是国家安全的关键环节。为确保密码算法的自主可控,降低敏感信息泄露和信息系统遭受攻击的风险,国家密码管理局制定并发布了具有自主知识产权和高安全强度的国产密码算法、密码算法使用等相关标准,基本建成了国产密码应用基础设施并提供服务。目前,国产密码产业链已经成熟[3]。

智能制造面临着信息安全问题日益严重的局面,因此推进国产密码算法应用具有重要的现实意义。目前,我国自主研发的常用国产商用密码算法有以下几种。

SM1算法。该算法是由国家密码管理局编制的一种商用密码分组标准对称算法,分组长度和密钥长度均为128位,算法的安全保密强度和相关软硬件实现性能与AES算法相当。目前,该算法尚未公开,仅以IP和的形式存在于芯片中。

SM2算法。该算法是一种基于ECC算法的非对称密钥算法,加密强度为256位,安全性与目前使用的RSA1024相比具有明显优势。

SM3算法。该算法也叫密码杂凑算法,属于哈希(摘要)算法的一种,杂凑值为256位,和SM2算法一起被公布。

SM4算法。该算法为对称加密算法,随WAPI标准一起被发布,加密强度为128位。

除了以上4种密码算法,国产商用密码算法还包括SSF33、SM7、祖冲之密码等对称算法和SM9非对称算法。

国产商用密码的应用领域十分广泛,主要用于对不涉及国家秘密内容但又具有敏感性的内部信息、行政事务信息、经济信息等进行加密保护,如各种安全认证、网上银行、数字签名等。

4 数控机床专用安全防护装置

4.1 需求

数控机床是数字控制机床(Computer Numerical Control Machine Tools)的简称,是一种装有程序控制系统的自动化机床。该控制系统能够逻辑地处理具有控制编码或其他符号指令规定的程序,并将其译码,用代码化的数字表示,通过信息载体输入数控装置。然后,经运算处理,由数控装置发出各种控制信号控制机床的动作,按图纸要求的形状和尺寸,自动加工零件。

作为数控系统中最特殊的终端,数控机床与其他设备(如DNC服务器、操作员站等)的安全防护存在较大差异,主要在于以下几点:

(1)数控机床控制系统无法安装主机监控软件或者类似的安全防护软件,从而无法对机床操作人员的身份进行管控,也无法审计操作行为,且无法控制和审计外设接口(如USB口、串口、网口)操作行为和数据交互;

(2)数控机床无法进行身份认证和鉴别;

(3)数控机床无法主动识别对端DNC服务器的合法性;

(4)数控机床无法验证数控加工文件的合法性和完整性。

基于数控机床与其他设备在安全防护上的差异分析,得出数控机床的安全防护需要加入专用的安全防护装置,用以确保数控机床在外设接入、身份鉴别、数据交互等诸多方面得到相应的保护和管控。数控机床必需的外设接口需要接入到这种防护装置上,机床操作、厂家维修等人员操作数控机床必须通过在专用防护装置上经过严格的身份认证[4](口令、指纹或者虹膜等)授权后才能正常接入,从而有权上传或下载数据,而这些动作也都会被专用安全防护装置记录,用于事后审计。

4.2 关键技术

数控机床专用安全防护装置作为数控机床的安全屏障,需要具备以下关键技术。

(1)身份认证与授权

身份认证解决“你是谁”“你是否合法”的问题,授权解决“你能干什么”的问题。

(2)行为控制与记录

行为控制解决“你能访问哪些地方”“你具体能做什么事”的问题,记录解决的是“你干了些什么”的问题。

(3)数据验证与保护

数据验证解决数据破坏和篡改的问题,保护解决的是数据知悉范围的问题。

除了以上技术要求外,防护装置在数控文件(NC代码、图形文件等)的脱敏与检测、数控代码的细粒度控制、网络典型攻击防御等诸多方面,对数控机床乃至整个数控系统都起着至关重要的作用。

4.3 防护方案

在详述防护方案前,借用网络搜索信息简单介绍以下几个概念:身份认证、数字签名、IP地址欺骗和MAC地址欺骗。

身份认证即身份验证或身份鉴别,是指在计算机及计算机网络系统中确认操作者身份的过程,从而确定该用户是否具有对某种资源的访问和使用权限,进而使计算机和网络系统的访问策略能够可靠、有效执行,防止攻击者假冒合法用户获得资源的访问权限,保证系统和数据的安全以及授权访问者的合法利益。

数字签名即公约数字签名或电子签章,是一种类似写在纸上的普通物理签名,但使用了公钥加密领域的技术实现,可用于鉴别数字信息,即只有信息的发送者才能产生的别人无法伪造的一段数字串。这段数字串同时也是对信息发送者发送信息真实性的有效证明。

IP地址欺骗是指行动产生的IP数据包为伪造的源IP地址,以便冒充其他系统或发件人的身份。MAC地址欺骗与IP地址欺骗的原理基本一致,只是欺骗的具体过程有所差别。

数控系统中最核心的终端是数控机床,而最重要的数据存储于DNC服务器。因此,数控机床与DNC服务器之间的数据交互,是整个数控系统安全防护最关键的一环。为了便于分析数控机床专用安全防护装置在安防方面的重要作用,假设数控机床和DNC服务器上的数据受到保护而不被任何攻击篡改和破坏,所有攻击来源于网络。简化数控网络拓扑,加入攻击环节,如图4所示。

图4 简化拓扑

(1)场景一

防护装置尚未部署,数控机床完全暴露于网络。攻击机采用任何欺骗手段都能将数控机床向DNC服务器发起的数据交互请求转移到攻击机自身,造成数控机床使用非法来源的数据或者使用被篡改过的数据,致使数控机床运行异常。

(2)场景二

防护装置部署于数控网络与数控机床之间,并配置了相应的访问控制策略,甚至配置了IP/MAC地址绑定策略。攻击机同时采用IP地址欺骗策略和MAC地址欺骗策略,将自身在网络上完全伪造成DNC服务器,以绕开防护装置的防御,响应来自数控机床的数据交互请求,下发非法数据或篡改合法数据,致使数控机床运行异常。

(3)场景三

在场景二的基础上,防护装置加入身份认证策略,即只有通过身份认证的终端才能正常通过防护装置进行数据交互。

传统的身份认证是基于访问发起者的认证,保护的是被访问者即服务器。而数控机床专用安全防护装置保护的是访问的发起者——数控机床不被欺骗,发现其获取的数据是否被篡改,阻止不应知悉者知悉,同时数控机床自身无法进行身份认证和鉴别。

因此,鉴于数控系统的特殊性,本方案建设性地提出基于受访者的认证,即数控机床只能访问通过身份认证后的DNC服务器,从而确保数控机床访问的DNC服务器是合法终端,获取的是合法数据,状态数据上传的是合法服务器。

不幸的是,此种场景对于攻击者来说仍然有机可乘。假设攻击机无法获取合法的身份信息,从而无法使数控机床主动向其发起数据交互请求。尽管如此,攻击机仍然可以在合法的DNC服务器通过身份认证后采用欺骗手段,实现前文提及的攻击。

(4)场景四

通过对场景三的分析发现,配合身份认证的访问控制同样不能解决所有问题。在场景三的攻击环境下,若能在交互数据中加入数字签名技术,通过防护装置对数据进行签名或验签,那么非法数据或被篡改数据就能被防护装置发现,从而这些数据无法到达数控机床,针对数控机床的攻击也就无从实现。

(5)场景五

根据场景四中的防护方案部署防护装置,虽然能够有效针对数控机床的网络攻击,但并不能阻止攻击机获取重要的数控数据和机床状态信息。这里,数据加密技术能够有效防止数据外泄,严格控制数据知悉范围。

数控机床专用安全防护装置可以记录所有的网络行为,发现攻击立即告警,发现异常数据交互立即告警,并通知管理员调整防护策略,尽早发现攻击源,把危害控制到最小。

机床操作人员、厂家维修人员通过USB口、串口与数控机床进行数据交互,在应用场景上虽然与网络交互不同,但两种外设数据交互同样需要通过防护装置进行数据转发。因此,以上提及的所有安全防护技术同样适用。

数控机床专用安全防护装置通过访问控制与身份认证、数字签名和数据加密等技术的有机结合,形成了一套完整的应对局部网络攻击的安全防护方案。

身份认证、数字签名和数据加密等技术都涉及国产密码应用,需要一套完整的国产密码应用基础设施(如公共密钥基础设施PKI、密钥管理基础设施KMI等)才能实现,而这必然带来安全防护的成本压力。因此,需要根据不同数控网络的实际情况,结合防护装置的行为记录能力,部署不同安全级别的防护网络。

4.4 国产密码算法应用

4.4.1 基于国产密码算法的身份认证应用

用户通过防护装置访问、接入数控机床时,需要应用基于用户的身份认证;DNC服务器与防护装置间建立加密信道时,需要应用基于设备的身份认证。认证的需求不同,采用的认证技术也不同。根据不同的安全级别,可以采用不同的身份认证技术或者多种技术的组合,如数字证书认证技术、生物信息认证技术、口令和消息反馈认证技术和智能卡认证技术等。

综合安全性、易用性和成本等因素的考虑,防护装置可采用口令与智能卡双因子身份认证技术,并结合国产密码算法数字证书认证技术即SM2证书技术。需要选择支持SM2证书的智能卡,认证设备(如DNC服务器、维修用的笔记本电脑等)或防护装置能够通过这种智能卡完成身份认证。口令通过使用SM3算法进行哈希后,将同智能卡SM2公钥证书经过SM1算法加密后在网络中传输,然后在防护装置上进行解密和验证后完成身份认证。

4.4.2 基于国产密码算法的签名与验签应用

身份认证中,SM2证书的签名/验签已经涉及到国产密码算法的签名与验签应用,而本章主要讨论国产密码算法在数控机床与DNC服务器之间传输重要数控文件时的应用。

智能卡除了存储SM2证书用于身份认证外,还可利用它对传输于网络中的数控文件进行签名。DNC服务器将数控文件进行数字签名存储,数控机床获取数控文件的同时也会获取签名信息。这些信息会经过防护装置的验签判断文件的合法性,并确保文件没有被恶意破坏或篡改,保证数控文件的完整性和可用性。这样的安全加固简单、实用、易于部署,不会对原有数控网络的拓扑造成任何影响,只要文件验证通过,则数控生产、企业管理都不会受到多余的阻碍。

4.4.3 基于国产密码算法的信道加解密应用

在存在跨网络管理和生产需求的数控网络或数控网络易于被攻击者接入的环境中,对有线信道传输的重要数据的加密保护成为必然。由于在网络搭建、部署上得天独厚的优势,无线网络在数控环境的应用也是存在的,但无线网络的安全性相对于有线网络更具有挑战。因此,无论数控网络在有线信道和无线信道上都有对数据进行加密保护的需求,此时国产密码技术的应用顺理成章,如IPSecVPN、SSLVPN和应用层加密处理等。

在存在信道加密需求的数控网络中,防护装置可以安装支持国产密码算法的智能卡或加密卡对加密数据进行解密。数据的加密则是通过DNC服务器上的智能卡或者加密卡完成的。两者可以通过支持国产密码算法的IPSecVPN或者SSLVPN建立加密信道,由防护装置将数据解密后再以明文方式转发给数控机床。对于数控机床来说,整个加解密过程是透明的。

4.4.4 基于国产密码算法的数据加解密应用

数控网络并非恶意攻击的唯一切入点,主机攻击、管理漏洞造成的物理攻击等都会造成重要数据的丢失与破坏,且网络攻击的最终目标除了破坏正常的网络运行外,就是获取重要数据,因此数据保护非常关键。数控环境中数据的国密技术应用很大一部分困难在于无法与控制设备(如PLC、数控机床等)共享加密数据。若加密数据经解密后在网络中传输,必然存在信息泄露的可能。数控机床专用安全防护装置的引入能很容易解决这个问题。这里提及的数据加密可采用SM1等对称加密算法,DNC服务器上的所有明文数控文件都需要进行加密处理后再存储,新接收的文件必须默认为密文。文件传输至防护装置,由防护装置解密后转发给数控机床;反之,防护装置对数控机床上传的文件进行加密后转发给DNC服务器进行存储,保证数据的机密性。

4.4.5 基于国产密码算法的数控设备安全升级

在国产数控设备(如PLC[5]、数控机床等)中,加入安全、加密功能,使得这些设备自身具有网络安全和数据加解密功能。还有一种升级需要应用到国产密码算法——设备软件升级,如数控机床专用安全防护装置自身系统升级时使用的升级镜像,需要通过国产密码算法进行签名,升级过程中需要对导入的升级包进行验签,以确保防护装置所用升级镜像未被非法篡改。

5 结 语

本文适时提出基于国产密码算法的数控系统安全解决方案,不仅拓展了国产密码算法的应用领域,而且开阔了数控系统整体安全防护、数控机床专用安全防护的技术思路。后期还可以基于数控机床的数控程序存储装置、计算机控制主机、可编程逻辑控制器(PLC)等核心组件上加入安全模块,强化数控系统核心组成部分的自身安全防护,进一步提升系统安全性。

[1] 周济,智能制造——“中国制造2025”的主攻方向[J].中国机械工程,2015(17):2273-2284.ZHOU Ji.Intelligent Manufacturing Main Direction of "Made in China 2025"[J].China Mechanical Engineering,2015(17):2273-2284.

[2] 刘杰,汪京培,李丹等.数控机床自动化网络信息安全综合防护方案[J].组合机床与自动化加工技术,2016(03):82-89..LIU Jie,WANG Jing-pei,LI Dan,et al.Comprehensive Protection Scheme for Networked Information Security of CNC Machine Tools[J].Combined Machine Tool &Automatic Manufacturing Technology,2016(03):82-89.

[3] 黄恺彤,刘晔.国产密码算法在电网信息安全中的应用研究[J].信息安全与通信保密,2015(10):82-83.HUANG Kai-tong,LIU Ye.Research of Grid Network Application Based China Standard Cryptographic Algorithm[J].Information Security and Communications Privacy,2015(10):82-83.

[4] 高亮,方勇.一种基于智能卡的双向身份认证方案[J].通信技术,2011,44(02):85-90.GAO Liang,FANG Yong.A Two-way User-identity Authentication Scheme based on Smart Card[J].Communications Technology,2011,44(02):85-90.

[5] 曹铭志.基于以太网下的PLC与上位机通讯[J].通信技术,2012,45(05):92-94.CAO Ming-zhi.Ethernet-based PLC Communication with Host Computer[J].Communications Technology,2012,45(05):92-94.

猜你喜欢
防护装置数控系统数控机床
某商用车后防护装置轻量化研究
防护装置粘接强度对爆炸切割冲击波的影响
基于人机工程学的卧式车床整机防护装置的设计
非正交五轴联动数控机床后置处理算法开发
数控机床的节能应用
数控机床电气系统的故障诊断与维修
巧思妙想 立车气动防护装置
基于FANUC 32i A数控系统的外部测量设计
西门子840D sl数控系统在SC125大型车铣镗床技术改造中的应用
基于FANUC Oi mate TD数控系统的手动功能开发