近期热点
·信息网络安全防范的几种措施
·企业网络安全的规划设计与实践
·网络安全之我见
·制造执行系统(MES)的应用与发展
·<连载>Protel二次开发从入门到精通
·<连载>Protel二次开发从入门到精通
 相关文章
·平台软件优势初显 信息化渐入佳境
·颠覆传统运营模式 SaaS搅动中国软件产业
·2007年软件产业趋势大预测
·博客热文:制造业信息化软件产业的世界地图
·制约我国软件产业发展的六个瓶颈
·以外促内是中国软件产业发展现实途径
 相关博客
·中小企业应注重安全路由器哪些方面
·何为安全路由器
·集成的SCADA系统的安全防护
·信息安全运营中心如何运用在大中型企业中
·网络安全铿锵三人行
·SCADA系统制造商需要提升安全性能
 相关新闻
·
大连有望成为全球最大软件产业带
·
甲骨文南京分公司落户玄武区徐庄软件产业基地
·
SaaS:不可抵挡的软件革命
·
开放标准利于自主创新和推动软件产业
·
信息产业部:大力实施软件产业国家品牌战略
·
我国软件产业规模达4800亿元
 相关热贴
·中小企业信息化市场前景无限好,软件产业定位是关键
·[转帖]从王文京的部分议案,看中国软件产业的“觉醒”和“奋进”!
·[博客]制造业信息化软件产业的世界地图
·[转帖]软件平台应用试点带动软件产业腾飞
·中国软件产业的发展趋势与特点
·第二届“亚洲ERP软件产业发展论坛”在韩国成功举行
 相关商城商品
 
 
当前位置:基础信息化 -> 开发语言
 
与开源无关
发表时间:2006-9-17 吴少雄   来源:信息周刊
关键字:软件产业 开源 源代码 安全 
安全漏洞对任何许可模式下的复杂程序都有影响,开源和商业软件都不具备天然优越性。

    当今软件产业很少有话题像开源和商业软件孰优孰劣这个问题那样,引发如此激烈的争论。当辩论作为娱乐并为人们所知晓之后,就会导致某些长期存在的误区。为帮助决策者洞悉事实,本文将对争论中的主要方面—软件的安全性进行剖析,从而拨开迷雾见真相。

  误区之一:开源意味着更加安全

  有人认为如果一个计算机程序不公开披露源代码,理论上讲就不会很安全;如果产品的源代码被公开,那么从理论上讲就会更安全。事实果真如此吗?

  软件良好的安全性,并不取决于源代码是否已知或公开,而是取决于如何设计、实施和管理这个源代码。具体来讲,安全性有赖于是否有合格的人员检查和测试了安全机制,并已将可能被不法分子利用的漏洞数量减到最少。

  虽然有的源代码是可以公开读取的,但事实上,只有极少数训练有素的代码检查人员或编写人员能够识别安全漏洞。毕竟,好的程序员不一定是好的安全专家。

  因此,尽管开源软件的源代码是公开的,但是有一些漏洞甚至存在多年也没有被发现。

  误区之二:开源修补漏洞速度更快

  发现病毒和修补安全漏洞的速度,是两种软件开发模式的拥趸们争论的另一焦点。有人认为开源软件开发者对漏洞或病毒的反应比商业软件供应商更迅速。然而对产品安全性的比较研究表明,两种软件模式解决漏洞问题的速度没有多大差别。“补得快就是补得好”这种想法也不一定正确。

  对有些顾客而言,软件更新和打补丁应当在不同的环境和配置中进行全面的安全测试后再使用,以免引起其他稳定性问题。而有些客户更看重软件供应商是否能对其提供的软件更新和补丁的质量负责。这些顾客不希望只有第三方来提供软件更新或补丁策略,因为没有任何第三方愿意对所做的修补或修补后产生的问题负最终责任。

  现实:实施安全性与开发模式无关

  多年以来,许多软件开发商一直习惯于为实现软件的可扩展性、可用性、可管理性和可服务性而设定代码。近年频繁出现日益复杂的非法攻击,迫使开发者不得不更加重视安全因素,并编写出更加安全的代码。

  软件产品是否安全的症结,不在于开发用的是哪种模式—商业或者开源—而是在开发的每个阶段是否实施了安全策略,还是只在事后才突然想起?今天我们可以看到,无论是在开源还是商业模式许可下开发的软件,都考虑到了安全问题。软件开发者正在使用预先评估、严格有序的测试、以及发布后评估漏洞和提供更新的回应中心等各种方法来减少漏洞。

  当安全特性的设计成为重要因素后,整个安全性更加依赖软件的配置、设置、更新和维护,包括是否通过适当手段更新、发现并解决了产品漏洞等。许多安全问题之所以产生,恰恰是因为没有正确的系统和软件配置,没有及时应用安全更新、补丁和修补。

  用户应该确保计算环境的正确配置和维护。配置错误或系统维护不好所引起的安全问题和隐患,远比已知漏洞所导致的恶意攻击更为常见。

  结论:没有一种开发模式天生具有优越性

  综上所述,认为开源或商业软件在安全性上更具有优越性的想法是错误的。安全漏洞对所有复杂程序都有影响,而不是在开源或商业模式下开发的软件中更普遍或相对较少。

  相反,软件安全性的三个主要决定因素是开发者的素质、开发团队为减少漏洞使用的技术和工具,以及顾客和软件供应商在解决问题时的关系密切程度。这些因素都不依赖或取决于软件的许可或发行方式。

  好代码终究是好代码,无论开源与否。因此,我们评价一种软件开发模式的影响,更多是看软件的普及程度,而非软件的设计或开发方法。

 责任编辑:陈沁