拿来主义会有风险,开源代码亦能侵权

2016-12-30

近来年,随着互联网技术、特别是移动互联技术的日趋完善,为满足人们生活需要,各种应用程序如雨后春笋般的被开发出来。可是,某些有着相似的功能和布局软件和应用开发的时候,开发者为了快速发布产品,难免会使用开源代码,很多开发者不了解相关的开源许可证的规定,也不进行相应的代码测试,就直接拿来使用;或者稍微改动开源代码中的部分代码,就变成了自己开发的软件,这么做,固然成本低廉而且效率很高,但是,这样使用开源代码的风险却很少有人去考虑。

新华网曾发表过一篇《美裁定开放源代码的免费软件也有版权》的文章,免费软件开中的源代码如果使用不恰当,使用者则可能被状告侵犯知识产权。一般来说,程序开发者出售受知识产权保护的产品,用以获利。开放源代码的免费软件虽不涉及金钱交易,但并不意味着其中不含经济因素。软件程序开发人员先前对如何恰当使用开源代码认识不清,导致侵权现象层出不穷。他们把免费软件的部分源代码编入自己的程序以开发盈利性产品,却不遵守该开源代码的许可证要求(比如未注明免费软件的出版商等),或者他们根本不知道自己使用的是拥有知识产权的代码。

然而,为什么会出现这种现象呢?首先,程序开发者在开源风险管理上,对于侵犯知识产权的问题没有一个很好的检测和管理手段,通常的人工管理很难发现全部的开源代码滥用问题,这会导致一些侵权的问题在企业和开发者毫不知情的情况下发生;其次,在软件代码测试与管理的过程中,有些企业和开发者没有开源风险的意识,不了解开源软件可能带来的风险或者没有外部的压力,导致其忽视该问题的存在,但随着我国知识产权保护意识的逐渐增强,相应法律法规正在不断的完善,国家层面也加强了这方面的监管和检查力度,将来,程序开发者会在开源代码侵权的问题上付出巨大的代价。

程序开发者在使用开源代码时,除了会有知识产权的风险,还会面临安全漏洞的威胁。

根据源码托管服务公司Sonatype估计,80%到90%的企业应用代码实际上是由开源组件构成,是从公开代码库直接导入的,而很多企业却很少对这些内容进行检查。Sonatype分析了3000家机构的超过2.5万企业级应用,发现其中一家企业每年下载了5000多个不同的开源组件,之中年代最悠久的组件包含安全漏洞的几率也最高。

这些存在于开源软件中的安全漏洞很有可能被人利用,从而使软件开发者承受相当大的损失。

安全漏洞


程序开发者在使用开源代码的时候,需要避免侵权的行为,同时也要避免代码中存在的安全漏洞。但如何可以做到呢?首先,在使用开源代码的时候,使用专业的开源代码检测工具对代码进行检测是十分必要的,通过检测,可以确认代码的组成成分,进而发现所使用的开源代码存在哪些风险,包括代码的合规性性风险以及安全漏洞风险;另一方面,在代码测试的过程中,对代码进行安全性相关的测试(比如代码静态分析糊测试等),也可以有效的发现代码中存在的缺陷,提升代码的质量,降低安全风险。

业界已经有一些工具可以帮助开发者发现和管理开源软件的风险,这些产品依托于自身的开源代码知识库(Knowledge Base)能够有效的发现并管理开源软件带来的风险。

在开源代码的使用上,拿来主义会有风险,开源代码亦能侵权。然而借助恰当的工具,谨慎、合理的使用开源代码,既可以避免开源代码侵权,避开代码安全漏洞等开源管理风险事情的发生,同时也可以节省开发成本,提高开发效率,从而赢得市场竞争。