干货丨工业可编程控制系统加密技术研究

admin 2025年2月17日21:11:56评论17 views字数 5590阅读18分38秒阅读模式

★ 和利时科技集团有限公司 贾峰

摘要:随着信息化与网络化深度融合及物联网的快速发展,工业控制系统中所存在的信息安全隐患日益突出。针对工控系统日益增多的恶意攻击,本文首先分析了其系统架构总体特点,研究了密码算法技术,提出了基于改进的白盒SM4算法;其次,基于国密算法,本文设计了控制系统加密安全方案,并针对可编程序控制系统设计了密钥管理流程;最后,按照南向通信与北向通信两部分,本文设计了控制系统通信网络安全方案。

关键词:可编程控制系统;通信安全;密码算法;密钥管理

干货丨工业可编程控制系统加密技术研究

目前,工业可编程控制系统加密技术主要涉及数据加密、通信加密和存储加密等方面。数据加密通常采用对称加密算法或非对称加密算法,以确保数据的机密性和完整性;通信加密则通过在网络传输过程中对数据进行加密处理,防止数据被窃取或篡改;存储加密则是对存储在控制系统中的数据进行加密保护,以防止数据泄露或被非法访问。

工业可编程控制系统加密需求分析如下:

(1)数据隐私保护需求

工控系统中包含大量敏感数据,如生产过程的实时数据、控制参数、设备状态等。这些数据的泄露可能会导致企业数据资产损失、工艺秘密泄露或潜在安全风险等严重后果。因此,需要采用数据加密技术来保护数据的隐私性。

(2)通信安全需求

工控系统中的各个组件之间需要进行大量的通信,包括控制指令的发送、数据的采集和传输等。如果通信过程被攻击者监听或篡改,可能会导致系统的不稳定甚至造成安全事故。因此,需要采用通信加密技术来确保通信内容的安全性和完整性。

(3)存储安全需求

存储在工控系统中的数据需要保持真实和完整,以防止被窃取或篡改。因此,需要采用存储加密技术来保护数据的安全性。

(4)访问控制需求

不同用户可能具有不同的权限,需要采用访问控制机制来确保只有经过授权的用户才能访问和操作控制系统中的数据。同时,还需要与加密技术结合,实现更高级别的访问控制。

(5)合规性需求

随着数据保护和隐私法规的日益严格,控制系统需要满足相关的合规性要求。加密技术是实现这些合规性要求的重要手段之一。

针对工业可编程控制系统的加密需求,可以采用以下加密策略和技术方案:

(1)数据加密策略

采用对称加密算法或非对称加密算法对工控系统中的敏感数据进行加密处理,确保数据的机密性和完整性。

(2)通信加密策略

在工控系统的网络传输过程中采用通信加密技术,如SSL/TLS协议等,确保通信内容的安全性和完整性。

(3)存储加密策略

对存储在控制系统中的数据进行加密保护,采用全磁盘加密或文件加密等方式来实现。

(4)访问控制策略

结合加密技术和访问控制机制,实现用户身份的验证和权限的分配,确保只有经过授权的用户才能访问和操作控制系统中的数据。

(5)合规性支持

根据相关的数据保护和隐私法规要求,制定合规性支持策略和技术方案,确保控制系统能够满足相关法规的要求。

综上所述,工业可编程控制系统安全需要综合考虑数据隐私保护、通信安全、存储安全、访问控制、合规性要求等多个方面。通过合理的加密技术设计和实施,可以确保控制系统的安全性和稳定性,为企业的持续发展提供有力的保障。

1 工业控制系统密码算法技术研究
1.1 密码算法及数据加解密保护

为进一步提高数据传输的安全性,采用SM2/SM3/SM4/SM9等加密算法,对数据进行加密处理,确保数据的安全性。设计如图1所示的工业可编程控制系统加密安全方案,其中密钥数据(SM2密钥、常规SM4密钥、SM9相关密钥、SM9设备ID等)通过改进的白盒SM4算法(改进见下文)进行加密存储,确保密钥的高安全性。其他数据存储分为以下两种情况:针对高敏感数据(控制系统实时数据、组态数据、操作指令等),通过SM2加密算法进行加密;针对其他数据,仅判断其真实性,计算数据hash值,并对其hash值进行签名,验证其真实性时,通过判断验签及hash值比对进行校验。

干货丨工业可编程控制系统加密技术研究

图1 可编程序控制系统加密安全方案设计图

传统密码算法在设计时并未考虑算法运行平台的安全风险。Chow等在2002年提出了白盒攻击模型,假定攻击者具有完全控制算法运行过程的能力,可以获取算法的运行状态、更改算法运行的中间值等。此模型更符合密码设备在失控环境下的应用情况,因为一个合法的用户也可能变为一个潜在的攻击者。在这种环境下,传统攻击模型中设计的密码算法将不再安全。如何保护密码算法在白盒环境下的安全性,在数字版权保护、移动终端安全等领域具有强烈的现实需求。Chow等使用混淆与查找表等方式设计了AES、DES白盒方案,肖雅莹等在2009年使用类似方法设计了SM4算法的白盒方案(肖-来方案),白鲲鹏等进一步通过复杂化内部解码编码过程以及引入更多随机数的方式设计了一个新的SM4白盒方案(白-武方案)。

本文对肖-来方案的白盒SM4在应用SM4CBC方案进行了改进,如图2所示。

干货丨工业可编程控制系统加密技术研究

图2(a) 常规WBSM4-CBC加密算法

干货丨工业可编程控制系统加密技术研究

图2(b) 改进WBSM4-CBC加密算法

1.2 密码管理 

根据近代密码学观点,决定整个密码体制安全性的因素是密钥的保密性,而不是对密码算法的保密,密码算法是可以公开评估的,因此密钥管理是至关重要的。在密码系统的设计时,需要解决的核心问题是密钥管理问题,而非密码算法问题。

密钥管理就是在授权各方之间实现密钥关系的建立和维护的一整套技术和程序。

根据工业可编程控制系统的实际情况,去掉管理维护等机制,我们重点关注密钥的生成、存储、分发与协商、使用、备份与恢复、更新、撤销和销毁阶段,如图3所示。

干货丨工业可编程控制系统加密技术研究

图3 工业可编程控制系统密钥生命周期图

(1)密钥生成和检验

密钥产生设备主要是密钥生成器,一般使用性能良好的发生器装置产生伪随机序列,以确保所产生密钥的随机性。

(2)密钥交换和协商

典型的密钥交换主要有两种形式:集中式交换方案和分布式交换方案。前者主要依靠网络中的“密钥管理中心”根据用户要求来分配密钥,后者则是根据网络中各主机相互间协商来生成共同密钥。生成的密钥通过手工方式或安全信道秘密传送。工控系统在监控网络层通过可信机构生成SM9主密钥,控制网络层通过内部生成SM9主密钥,在通信过程中,通过密钥协商生成SM4密钥。

(3)密钥保护和存储

对所有的密钥必须有强力有效的保护措施,提供密码服务的密钥装置要求绝对安全,密钥存储要保证密钥的机密性、认证性和完整性,而且要尽可能减少系统中驻留的密钥量。密钥在存储、交换、装入和传送过程中的核心是保密,其密钥信息流动应是密文形式。工控系统采用WBSM4白盒加解密表保护密钥数据安全。

(4)密钥更新和轮换

任何密钥的使用都应遵循密钥的生存周期,绝不能超期使用,因为密钥使用时间越长,重复几率越大,外泄可能性越大,被破译的危险性就越大。此外,密钥一旦外泄,必须更换与撤销。密钥装入可通过键盘、密钥注入器、磁卡等介质以及智能卡、系统安全模块(具备密钥交换功能)等设备实现。密钥装入可分为主机主密钥装入和终端机主密钥装入,二者均可由保密员或专用设备装入,一旦装入就不可再读取。

(5)密钥备份和恢复

应对密钥丢失或损坏的情况,应该建立密钥备份和恢复机制。密钥备份是将密钥的副本存储在安全的地方,以便在需要时进行恢复。密钥恢复应该受到严格的控制,以防止未经授权的访问。

(6)密钥注销和销毁

当密钥不再需要时,应进行安全的密钥注销和销毁操作,以确保密钥无法被恢复和再利用。密钥注销是将密钥从活动状态转为非活动状态,以防止其被误用。密钥销毁涉及物理销毁密钥介质或对密钥进行安全的擦除操作。

(7)密钥审计和监控

对对称密钥进行审计和监控可以追踪和监测密钥的使用情况,并可以及时检测和应对可能的安全威胁。密钥的使用情况、访问权限和操作记录应进行监控和审计,并进行安全事件的报告和响应。

2 工业可编程控制系统通信安全技术方案研究
2.1 研究工控系统控制器与扩展I/O模块之间高速总线的加解密方法技术

工业可编程控制系统控制器与I/O模块之间高速总线的加解密方法采用SM9、SM4加密算法。其中,密钥的生成及密钥数据存储均在TPCM中产生与保存。首先,通过SM9加密主密钥生成接口、签名主密钥生成接口、协商主密钥生成接口分别生成加密主密钥、签名主密钥、协商主密钥。这三类主密钥,可结合ID信息用于生成用户加密密钥、用户签名密钥、用户协商密钥。通过TPCM中的主密钥,分别根据控制器ID、I/O模块ID生成三类用户密钥,存储在各个模块当中,控制器用户密钥存储于TPCM当中。

首先控制器与I/O模块之间,通过SM9密钥协商机制,进行密钥协商。SM9密钥交换协议流程如图4所示。

干货丨工业可编程控制系统加密技术研究

图4 SM9密钥交换协议流程

通过密钥协商,确定SM4密钥,后续控制器与I/O模块之间采用SM4CBC加密算法进行数据加密传输。

2.2 工业可编程控制系统监控层网络安全通信

控制系统监控层网络安全通信根据情况不同,分别采用两种不同的加密通信方式。

(1)当通讯远端与本端无同一可信机构生成的SM9用户加密(签名、协商)密钥时,控制系统采用安全套接字SSL技术。安全套接字层SSL协议是目前使用最广泛的传输层安全通信协议,为应用数据安全传输提供了保障。但采用传统密码算法的SSL协议满足不了我国商业密码应用的需求,面对日益严峻的安全形势,国家密码管理局发布了国产密码商用SM系列算法。

在工业控制系统的通信过程中引入基于国密算法的通信方式,是加强工业安全可控的要求,可以建设更为安全的工业网络安全环境,增强工业控制系统的“安全可控”能力。

控制系统采用的安全通信组件支持SM2、SM3、SM4等国密算法和SM2国产密码数字证书及基于SM2证书的SSL/TLS安全通信协议。组件与常用开源组件保持接口兼容。因此国产密码通信加解密组件可以替代应用中的常用开源组件,并使应用自动具备基于国产密码的安全能力。

当工控系统网络单元接收到传输的通信数据包时,首先对数据包按照TCP/IP数据帧结构进行逐层分析,获取加密后的应用层数据信息,然后将加密的数据信息发送加解密组件,利用已协商好的对称密钥,采用国产密码SM4解密算法对加密的数据信息进行解密,从而获得应用数据的明文信息,进行下一步处理。

当工控系统网络单元收到需要加密的应用信息后,首先将明文的应用信息发送给TPCM,TPCM利用已协商好的对称密钥,采用国产密码SM4解密算法对明文信息进行加密,生成加密后的密文应用信息,然后为密文应用信息安全TCP/IP数据帧格式添加TCP首部和IP首部,形成新的数据包,发送至网络。安全通信协议会话建立过程如图5所示。

干货丨工业可编程控制系统加密技术研究

图5 安全通信协议会话建立过程

(2)当通讯远端与本地端由同一可信机构生成的SM9用户加密(签名、协商)密钥时,采用SM9加密数据通信,与控制器与I/O模块之间通信类似,通过SM9密钥协商机制,进行密钥协商。协商出SM4密钥,并通过SM4进行加密数据传输。

该方法相较TLS加密通信,具有以下优势:

· 无需证书:SM9密钥协商是一种基于标识的密码算法(IBC),它最大的优势就是无需证书。相比之下,TLS 1.2虽然也提供了较高的安全性,但其在建立安全连接时通常需要使用数字证书进行身份验证和密钥交换。这意味着在使用TLS 1.2时,需要管理和颁发大量的数字证书,增加了管理的复杂性和成本。而SM9密钥协商则通过基于标识的方式,无需颁发和管理数字证书,从而大幅降低了管理成本。

· 高效性:SM9密钥协商具有运算效率高、算法安全模式实现灵活等特点。这使得在海量设备间的安全通信中,SM9密钥协商能够更快速地完成密钥协商过程,提高了通信的效率和响应速度。而TLS1.2虽然也在握手过程中进行了优化,减少了握手时间和网络延迟,但其在处理海量设备间的安全通信时,可能仍然存在性能瓶颈。

· 适用性:SM9密钥协商在保障移动互联网、大数据、工业互联网、物联网、车联网等领域的数据安全方面有着得天独厚的优势。这些领域通常需要处理大量的设备和数据,对安全性和性能都有较高的要求。而SM9密钥协商正是针对这些领域的特点而设计的,能够满足这些领域对安全性和性能的需求。

3 结论    

针对工业可编程控制系统通信过程中存在的安全问题,以及工业控制系统对系统整体的可靠性、稳定性、安全性要求较高,本文针对工控系统密码算法技术进行了研究,并对肖-来方案的白盒SM4方案进行了改进。我们通过对白盒SM4-CBC的“IV”进行处理,进一步提高了数据的安全性。基于此,我们设计了工控系统加密安全方案,并设计了控制系统的密钥管理流程。工业控制系统通信网络安全技术方案根据作用场景不同,设计了基于SM9、SM4加密算法的安全通信方案以及常规的基于TLS国密安全通信方案,确保了控制系统通信安全。

参考文献略。

作者简介:
贾 峰(1975-),女,辽宁营口人,副高级工程师,学士,现就职于和利时科技集团有限公司,研究方向为工控网络安全、工业自动化。

· end ·

来源 | 《自动化博览》2024年11月刊

责任编辑 | 赫敏

干货丨工业可编程控制系统加密技术研究

如需合作或咨询,请联系工业安全产业联盟平台小秘书微信号:ICSISIA20140417

往期荐读

荐读 | 工业嵌入式控制系统可信计算技术应用研究
重磅 | 《自动化博览》2024年第一期暨《工业控制系统信息安全专刊(第十辑)》上线
解决方案 | 长输供热工程工控安全防护解决方案
关注 | 两会话安全:网络安全提案速览
荐读 | 工业互联网渗透测试技术研究
解决方案 | 精细化工产业互联网安全体系建设方案
荐读 | 智能制造装备安全方案
观点 | CCF计算机安全专委会发布2023年网络安全十大发展趋势
荐读 | 智能制造背景下我国工业网络安全的新挑战
报告 | 《中国网络安全产业研究报告》发布:多方利好驱动网络安全产业高质量发展
荐读 | 基于改进预处理PCA算法的代码混淆分析
干货丨工业可编程控制系统加密技术研究
干货丨工业可编程控制系统加密技术研究
干货丨工业可编程控制系统加密技术研究
干货丨工业可编程控制系统加密技术研究

干货丨工业可编程控制系统加密技术研究

原文始发于微信公众号(工业安全产业联盟平台):干货丨工业可编程控制系统加密技术研究

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年2月17日21:11:56
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   干货丨工业可编程控制系统加密技术研究https://cn-sec.com/archives/3753112.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息