在线工博会

关于工控软件安全性的设计问题
高春光 陈靖元
为节省流量,手机版未显示文章中的图片,请点击此处浏览网页版
本文主要介绍了工控软件安全性设计涉及的技术,并提出设计及构建安全的工控软件应该考虑和注意的问题。最后明确工控软件安全性设计的重要意义。
网络技术和信息革命也带来了工控业的技术革命,而工控软件是工控系统中用于控制工业生产的软件部分,其安全性和可靠性的要求是非常高了。因为它关系到工业生产的安全和人们生命财产的安全。工控软件的安全性要求的目的,是为了保证系统的可用性、完整性和隐秘性。可用性就是要保证系统功能随时可以被使用。完整性就是要保证系统操作的数据是正确的、完整的。隐秘性就是系统信息的保密性。工控软件的安全性和可靠性有着密切的关系,可靠性是一种软件坚固性的度量,而安全性是可靠性的一个子集。
一、工控软件安全性涉及的技术
为了保证系统的安全,就要采取系统安全策略。可以采用如下一些安全技术确保工控软件系统的安全:认证技术、访问控制技术)、审计技术、安全基础设施、入侵检测技术)、防火墙技术、备份和恢复技术。

(图片)

图 简单安全系统框架示意图

1、工控软件应该有身份认证功能
工控软件应该有身份认证功能,就是用户必须向客户端证实自己的身份。客户端则需要向一个或者多个服务器或者服务证实自己的身份。身份认证有三种基本方式:① 用户所知道的某个秘密信息,如自己的口令;②用户持有的某个秘密信息,如智能卡中存储的用户个人化参数;③用户所具有的某些生物学特征,如指纹、声音、DNA图案等。
2、工控软件应该有访问控制功能
访问控制就是解决谁(主体)对某个特定对象(客体)具有何种权限的一项系统安全技术。它包括两方面的关键技术,一方面是安全策略的制定技术,即如何表达主体对客体有何种权限,另一方面是安全策略的实现技术,即如何将制定的策略在系统中有效地执行。
3、工控软件应该有一定的审计功能
工控软件的审计功能就是通过日志等审计的材料,来查看各种事件。其中的日志应注意以下问题:容量控制问题、避免非法删除问题、查询速度问题。
4、工控软件与防病毒技术兼容
工控软件应该与防病毒技术兼容,并与病毒防火墙软件技术、访问控制技术紧密结合,确保系统安全。
5、工控软件应该与其他安全技术兼容
工控软件应该与安全基础设施兼容,并与入侵检测技术、防火墙技术、备份和恢复技术紧密结合,确保系统安全。
二、构建安全的工控软件应该考虑的问题
1、选择语言
构建安全的工控软件应该考虑的一个最重要的技术选择是用哪一种编程语言来实现。要考虑的因素很多。例如,效率等。[1]
2、选择分布式对象平台
分布式对象有很多,如CORBA、DCOM、RMI 和EJB。对于安全性,每种技术都有不同特征,当选择容器时要考虑这些特征。要考虑每种技术所提供的安全性服务。[2]
3、选择操作系统
现代操作系统在逻辑上可以分为系统内核和用户空间。程序运行在用户空间中,但当需要特殊服务时,偶尔会调用内核。许多关键服务在内核空间中运行。内核通常具有某种类型的安全模式来管理对设备、文件、进程和对象的访问。这一基本机制及其接口会随操作系统的不同而表现出明显的差异。
三、结论
工控软件有着悠久的历史,但由于早期的控制系统是封闭的,所有安全性问题不是很突出。这样以往的工控软件设计时很少考虑到安全性需求,随着网络的发展,工控软件安全性越来越重要,成为一个必须考虑和重视的课题。在进行工控软件的设计时,一定要将安全性设计作为一项重要工作来做。并采用合适的安全技术,确保工业控制系统的安全。
参考资料
[1] [Viega,2001] John Viega 和 Gary McGraw。Building Secure Software: How to Avoid Security Problems the Right Way。Addison-Wesley Professional Computing,2001 年。
[2] http://www-900.ibm.com/developerWorks/cn/security/s-build/part1/index.shtml
[3] http://www.cn.ibm.com/developerWorks/xml/index.shtml
[4] http://msdn.microsoft.com/ 3/25/2005


电脑版 客户端 关于我们
佳工机电网 - 机电行业首选网站