工业控制系统中安全组态工程保护技术实现

在工控系统中,为了防止核心的工艺代码的泄露,技术人员往往会对组态工程文件加上密码。当打开一个有密码保护的组态工程文件时会需要输入安全密码。但是由于组态软件的设计问题,导致组态工程加密措施并不安全,有些形同虚设,非法的操作者甚至能直接绕过所需的密码直接打开组态工程文件。

不安全的设计

在前一段时间,对市面上的常见的组态软件(包括三菱,组态王,施耐德,西门子等上位机软件)进行安全测试时发现不仅国内的组态软件存在组态工程密码绕过问题,一些国外的大厂也存在类似的问题,包括硬编码的密码,组态工程密码没有作为密钥加密组态工程文件,不安全的算法实现等。

对于硬编码密码的漏洞(如CNVD-2019-30119),厂商快速完成了修复,移除了硬编码密码,但是组态工程文件没有得到“真正”的保护。大多数存在漏洞的组态软件仅仅将用户输入的密码与真正的密码(或者密码hash)进行对比,而没有使用输入的密码加解密组态工程文件,这就导致无论输入什么密码,都可以通过逆向手段找到关键的跳转语句,修改指令让校验流程始终走向正确的分支(如下图所示)。对于这类的安全问题,解决方法只能是花费大量的时间和精力重新设计加密机制,并且需要敦促用户使用更新补丁。这便造成了很多厂商认为这类问题无关紧要,不愿花更多资源投入到漏洞的修复当中。

更安全的工程加密机制

毫无疑问,组态工程文件加密的算法实现一定是需要让组态工程密码参与到数据的加解密运算中,否则使用密码的任何加密存储形式(sha1 ,md5,sha256等hash算法)都是没有作用的。在设计组态工程加密的机制要考虑以下原则:

加密算法必须保证非常可靠,能够防止攻击者从加密的密文反向推出明文或者密钥。在这里,可以选择AES(Advanced Encryption Standard)这类非常成熟的加密算法。

足够长度的salt是必须的,将salt值附加到密码后面作为加解密密钥以此来保证密钥强度,这样可以有效抵御字典暴力攻击。

考虑到用户如果忘记密码,软件生产商必须有能力从用户的组态工程文件中恢复密码(当然留下后门密码肯定是不可取的),所以必须将正确的加密密钥通过非对称算法(如RSA2048)加密存到工程文件中,一旦证明了该组态工程文件是该用户所有的,软件生产厂商可以使用拥有的私钥去解密密文从而恢复密码。

算法选择应该尽量选择现成加密库的算法,例如OpenSSL,减少开发商编写代码的成本。

加密流程如下图所示:

一旦存在有些粗心的用户忘记了自己的组态工程密码,只要能证明该组态工程文件为自己所有,那么用户就可以通过开发商找回密码。具体找回密码流程如下图所示:

工程密码保护

对于组态工程密码来说,当用户输入正确的组态工程密码后,上位机软件会用该密码解密组态工程文件,并需要将密码一直存在于内存中,直到用户关闭组态工程文件才会将内存中保存的工程密码(期间用户可能修改密码)作为密钥加密组态工程文件并进行保存。整个生命周期如下图所示:

可以看出,正确的密码一直保存在内存中,直到工程被关闭。所以,对于内存中的密钥也需要一定的保护措施,防止其他恶意软件在组态工程文件打开的情况下通过读取进程内存空间的方法窃取到敏感的密钥信息。Windows系统已经内置了一些的函数保护敏感的内存信息(如CryptProtectMemory/CryptUnProtectMemory),Linux平台上的开发者也可以选择开源的第三方安全组件实现内存敏感信息加密。

总结

组态工程加解密实现的方法有很多种,本文提供的方法只是一个简单的例子,读者可以举一反三,探索出适合自己的加解密方式。工业控制系统安全不仅需要用户提高安全意识,同时也需要软硬件生产厂商高度重视,为用户提供更好的服务。

【本文是IDC.NET专栏作者“绿盟科技博客”的原创稿件,转载请通过IDC.NET联系原作者获取授权】

戳这里,看该作者更多好文

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/130317.html<

(0)
管理的头像管理
上一篇2025-02-26 00:51
下一篇 2025-02-26 00:52

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注