天元知晓 | 金融行业如何合规使用开源技术?

2021-12-29 18:35:00
本文结合开源软件使用的现状,就开源软件使用存在的法律风险、合规管理必要性等对《开源意见》进行解读。

作者 | 孙彦 李昀锴 天元律师事务所

编辑 | 玄袂

开栏语:

各位同仁,各位读者:即日起,天元律师事务所与知产力合作推出“天元知晓”专栏。天元律师事务所创立近30年,在法律服务行业享有盛誉,天元知识产权团队将基于扎实深厚的法律功底和多年法律深耕经验,为各位读者带来原创法律热点观察、专业评析、经验分享,期于诸位有所裨益。

近期,人民银行办公厅、中央网信办秘书局、工业和信息化部办公厅等联合发布《关于规范金融业开源技术应用与发展的意见》(以下简称为“《开源意见》”),就规范金融机构合理应用开源技术,促进开源技术可持续发展进行工作布局,进行指导。本文结合开源软件使用的现状,就开源软件使用存在的法律风险、合规管理必要性等对《开源意见》进行解读。

01

开源软件的使用现状

“开源”是指开放软件源代码、设计文档等供公众使用的软件开发模式,是开放共享、协作创新的新型生产方式。正是基于前述理念,开源模式经历几十年的发展,已经成为全球软件技术和产业创新的主导模式。目前我国正在进行数字化转型,在转型过程中不少企业选择了开源软件及开源技术。据统计,开源软件在云计算、人工智能、大数据、数据库等领域应用广泛,已逐渐成为互联网软件开发和生态建设的重要力量。

640?wx_fmt=png

目前,金融机构在信息化建设过程中,广泛使用开源软件。根据我国金融行业的调研结果,我国金融机构中超过90%的企业均引入了开源软件。中间件(90.63%)、大数据(87.5%)、数据库(87.5%)与工具(78.13%)是主要的开源软件应用方向。开源软件引入形式包含源代码引入、开源组件级引入、商业解决方案间接引入等方式。

开源软件的蓬勃发展,给我国的软件产业、软件技术、软件生态的发展都带来了莫大的助力。但由于开源软件的数量众多,并且不同开源软件的代码质量、协议要求均存在明显差别,金融机构如想要用好开源技术,必须先对其风险有理性的认知,以进一步完善开源治理、开源运营、开源安全合规等问题。

02

开源软件使用的相关风险

由于开源软件种类复杂,代码的安全性往往缺少审查和管理,开源软件的知识产权也存在很多不确定性。因此,如何认识及管理开源软件的风险、如何进行开源软件管理制度建设是金融企业管理过程中不可避免的一环。风险的管理首先是进行风险的准确识别。

根据我们的研究,开源软件使用过程中存在如下风险:

(一)法律适用及域外管辖风险

据了解,80%以上的开源软件均由国外开发者贡献,多数金融机构使用的开源软件的版权都归属于国外公司(如Oracle、Red Hat、Google)或者由国外公司管理,管理和颁发开源软件许可的协议由国外开源基金会维护,主要的代码托管平台如github、gitlab也注册在国外。故现有大部分开源软件的运营、维护、发展都必须遵守版权所有人或者版权管理者所在国的法律法规。在当前国际贸易竞争加剧的环境下,如果所在国政策发生变化,相关开源软件可能受到所在国的出口管制,甚至如产生纠纷并由国外法院进行域外管辖,无端增加相关金融机构的合规风险。 

(二)开源协议的知识产权风险

开源协议的复杂性导致其成为金融机构使用、治理开源软件将面临的最显著问题。开源协议本质上是权利人采用的格式化的版权许可使用协议,其法律性质已经被我国司法实践所认可。经统计,目前经开放源代码促进会(OSI,Open Source Initiative)认证的开源协议为91种,常用开源协议有9种,但除木兰协议外基本均为英文协议。各项开源协议中对被许可人的授权类型、使用限制、法律义务等均不相同,导致其管理政策均需根据使用情况针对性调整。特别是很多开源协议要求用户修改的代码或者衍生的代码也需要开源,如果金融机构未能将其代码进行开源,违反了开源协议的规定,则可能被视为授权无效,金融机构就该开源软件的所有使用行为均可能被视为侵权,其潜在的知识产权侵权风险非常显著。 

(三)开源软件的安全管理风险

由于开源软件的复杂性,开源漏洞信息往往散落分布在各大社区,很多漏洞信息不能及时被开发者收录。同时,对于软件使用者,由于缺少漏洞信息跟踪能力,不可能注意到全部的漏洞信息,使得漏洞修复具有滞后性,始终存在安全隐患。特别是,当前金融系统越来越多的使用分布式架构,各软件之间依赖关系趋于复杂,开源软件间安全漏洞、后门风险可能连锁传播,会引发金融机构关键系统的安全危机,可能有不可控的风险。比如2020年2月,国家信息安全漏洞共享平台发布了关于Apache Tomcat包含漏洞的公告,该漏洞可以造成Tomcat上所有webapp目录下的重要配置文件或源代码等敏感数据的泄露,若同时存在文件上传功能,则可以进一步实现远程代码执行(RCE),直接控制服务器。故如金融机构对于该类漏洞不能及时的关注及修复,引起的后果将不可想象。

同时,金融机构的信息系统作为关键基础设施,其程序代码的安全性至关重要,如果这些代码因遵守开源协议需要而进行开源,也会对系统的安全稳定带来影响。

(四)开源软件缺乏技术保障的风险

对一般商业软件而言,为了提高其产品的市场份额,其开发者会同时提供与该软件直接相关的部署、运维、培训等服务,提供与软件运营相关的完备技术保障。但开源软件的运营及维护很大程度上均归属于社区,开源软件开发者不会专门提供对外运维服务,更不会对软件的安全性、隐私风险进行保障,其本身出现安全风险的可能性较高。特别是,如果金融机构需要对开源软件进行二次开发,因其使用场景不具有通用性,在开源软件进行较大的版本升级后,金融机构仍需要重复开发、测试、上线,徒然增加了后续的运维成本。 

(五)开源软件商业模式变更风险

目前,很多成功的开源软件都是由国外公司推动,开源软件仅能为其带来流量、关注度,但是不会带来直接的商业利益。为此,在开源软件经过社区迭代推广之后,很多公司可能选择对开源软件的模式进行调整,将直接影响后续其他开发者的使用。比如,Oracle公司在收购Sun Microsystems公司(Java的设计者及版权人)之后,在2018年9月即更新了Java SE的开源协议,此后不向没有商业许可证的业务、商用或生产用途提供。由于使用Java SE软件的企业很多,当时对许多家公司的业务都造成了直接而显著的影响。

03

《开源意见》如何指导金融机构的开源管理

尽管开源软件已经在国内应用多年,但此前对于相关开源软件的管理制度并无明确规定,国内的开源管理制度基本由企业自行探索,并未形成统一的实践惯例或标准。《开源意见》的出台,对企业落实开源技术管理具有明确的指引作用,具体体现为:

1、明确开源技术管理范围

《开源意见》第一条规定应进行开源管理的技术范围,即“本意见所指开源技术是金融机构从代码托管平台、技术社区、开源机构官方网站等渠道获取,或通过合作研发、商业采购等方式引入的开源代码、开源组件、开源软件和基于开源技术的云服务等。”根据前述规定,目前金融行业要进行开源使用治理的范围主要为企业直接使用的源代码及软件,第三方服务商开发引入的源代码及软件,商业采购的产品、解决方案涉及的开源代码及软件。 

2、明确开源技术管理制度的基本要求

《开源意见》第五条规定,“鼓励金融机构建立健全开源技术应用管理制度体系,规范开源技术的引入审批、技术评估、合规使用、漏洞检测、更新维护、应急处置、停用退出等行为。”该条对金融行业需要采用的管理制度进行了直接规定,即金融机构在使用开源技术之前,应预先建立开源技术管理制度,从管理制度、组织架构、流程管控等维度进行整体建设,具体体现为:(1)在公司管理方面,应建立包含开源技术的引入审批、技术评估、合规使用、漏洞检测、更新维护、应急处置、停用退出等行为的制度,构建开源技术管理体系;(2)在公司组织架构中需成立由技术部、法务部等组成的开源技术团队,进行针对化管理;(3)在流程管控中需建立开源技术应用台账,及时掌握开源技术的变化情况,确保从开源代码到产品安全合规;(4)通过整体规划实行开源技术常态化管理,定期组织培训、交流,规避风险;(5)适当引入第三方机构进行技术评估及合规审查。 

3、建立开源技术引入审批及技术评估制度

《开源意见》第六条对引入审批、技术评估的制度要求进一步细化:“金融机构可以根据金融业务场景,选择适宜的技术路线,制定合理的开源技术应用策略,包括独立完成开源技术应用及运维、引入第三方机构的开源技术支持服务、采购开源技术提供商的商业软件版本及服务等。”根据该规定可以看出,在引入审批及技术评估方面,金融机构选择开源技术时,应以业务场景目标为核心,由技术团队对软件功能性进行详细评测,制定可操作的测评标准,从项目活跃、软件功能、技术路线、软件安全性、运维支持等多个角度考察开源软件情况,综合评估该软件或服务商是否应该引入。 

4、金融机构需对开源软件建立应用台账

《开源意见》第七条规定“金融机构可以根据开源技术使用情况,建立开源技术应用台账,及时掌握开源许可证变更、漏洞、闭源、停服等变化情况,实行常态化管理,规避风险”。关于更新维护方面,金融机构应构建开源软件代码台账对开源软件进行统一管理,持续跟踪使用的开源软件的版本更新情况、开源许可证情况、漏洞情况等,辅助实现开源软件信息的登记和更新,定期对相关信息进行分析、评估和处置,避免开源软件更新带来的安全风险及法律风险。 

5、金融机构应对开源技术进行合规审查

《开源意见》第十条规定“支持金融机构对开源技术版权、专利、商标、声明等进行事前合规审查,通过审查开源许可证遵从性和兼容性、梳理开源技术间依赖性等,避免法律纠纷。可根据需要引入第三方合规审查服务。”这意味着,金融机构在采用开源技术之前,除了进行技术评估之外还需要通过法律团队对开源协议的适用性进行尽职调查,结合金融机构将使用的业务场景,对开源协议的审查评估其著作权、商标权、专利的侵权风险。在金融机构对开源软件开发完成后,还应配合法律团队对其开源声明、修改声明的合规性进行审查,避免因此与开源软件的开发者产生纠纷。 

6、开源管理制度将成为金融机构对服务商的审查事项

《开源意见》第十二条规定“支持金融机构加强开源技术供应链管理,保障开源技术产品和服务质量,通过合同或协议条款,明确开源技术提供商义务和责任,并要求开源技术提供商对其提供的开源技术进行技术评估、合规审查等。”根据该规定,开源管理制度不仅是对金融机构自身的要求,如果相关服务商提供的软件产品、云服务产品或整体解决方案中包括开源技术,则金融机构会要求其提供有效的技术评估证明、合规审查文件等,这将有效的提高金融机构对开源技术的管理能力,但是也将同步提高服务商的服务门槛。

开源软件存在不可替代的优势,但在安全方面、合规方面存在薄弱环节,应正确把握金融科技创新与安全的关系。可以预见,随着《开源意见》的生效,近期内金融机构对开源合规建设的需求必然会越来越强,开源制度建设将进一步完成,以确保开源技术“高可用、低风险”,真正地为我国金融创新进行助力。

联系作者

640?wx_fmt=jpeg

孙 彦

天元律师事务所

合伙人

sy@tylaw.com.cn

640?wx_fmt=jpeg

李昀锴

天元律师事务所

资深律师

liyk@tylaw.com.cn

(图片来源 | 网络)

640?wx_fmt=jpeg

+1
0

好文章,需要你的鼓励

参与评论
评论千万条,友善第一条
后参与讨论
评论区