论文部分内容阅读
随着信息技术的发展和智能化水平的提高,工业控制系统在逐渐走向开放和互通,越来越青睐于通用的标准和通用的软硬件,OPC UA(OLE for Process Control Unified Architecture)作为广受国际认可的通用标准为应用程序之间提供了独立于设备厂商和平台的通信连接,在工控系统中的应用越来越广。然而,正是由于信息技术的高速发展和与工控系统的逐步融合,许多工控系统都在遭受着各种各样的网络攻击,工控安全事件的发生给会国家和人民带来巨大的财产损失,从一定角度来说,工控系统的安全关系到国家战略安全。因此信息安全成为OPC UA扩展使用范围的关键性问题。在这样的背景下,自主设计一套适合于工控系统的OPC UA安全模型具有极其重要的意义。因此本文以保证通信安全为基本目标,为OPC UA设计了一个通用的安全模型。本文首先简要介绍了OPC UA技术的发展史和OPC UA标准规范,重点分析了它的基本安全机制和安全模型,并结合系统所处的严峻的网络环境和可能遭受的网络攻击分析了基本安全模型在实际应用中的局限性。然后,在标准规范的指导之下提出了本文所设计的增强的安全模型。此安全模型从逻辑上分为两层,分别是基础服务层和安全管理层,其中基础服务层是指PKI(Publie Key Infrastrueture)系统,在安全通信过程需要用到的密钥、证书和对二者的管理均需要PKI系统来提供服务,该层是保障安全功能的基础。而安全管理层包含四个基本的功能模块,分别是策略配置模块、身份认证模块、访问控制模块、通信加密模块,负责为OPC UA提供安全策略配置、身份认证、用户权限控制、签名与加密等功能。该安全模型作用于OPC UA客户端和服务器的通信过程,模型的应用将有助于以下几个问题的解决:1.灵活配置系统安全策略。OPC UA在工控系统中的使用环境很复杂,客户端与服务器的通信既可能发生在企业内部网络也有可能发生在互联网当中,根据使用环境来灵活地配置安全策略是平衡安全性和使用效率较好的方式。本文设计了策略配置模块,使用者首先判断所处环境的安全级别,然后自行配置合适的安全方案,这一功能的提出为系统在不同的使用环境中采用不同的安全配置提供了可行性。2.抵御各种网络攻击。在实际使用过程中,OPC UA的通信将会面临诸如消息窃听、消息欺骗、消息篡改、重放攻击、非授权操作、用户凭证盗取等各种各样的网络攻击。本文所构建的安全模型依靠身份认证、访问控制、通信加密等模块,抵御上述攻击。3.提供密钥与证书的规范管理。要实现以上安全功能离不开加密与解密、签名与验签、证书申请与验证等,这就不得不用到密钥和数字证书,密钥和证书的生成与管理需要一个公开的机构和规范的策略,本文创新性地为OPC UA设计了PKI系统,提供了密钥从生成到撤销、证书从签发到作废等一系列管理,为各个安全模块发挥作用提供了保障。本文选择Qt Creator 5.7.1作为开发平台,C++作为开发语言,OpenSSL作为系统的核心软件开发工具包,对系统进行开发和应用实现,并经过安全性测试。测试结果表明,本文设计的安全模型满足了系统对安全通信所提出的可用性、机密性、完整性、真实性的需求,能够保证OPC UA客户端与服务器之间的安全可靠的通信。将此模型应用于工业控制系统,可以有效提高系统的安全性,有很高的实际应用价值。