关注风险与开源治理
时间:2022-04-18 01:21:01 | 来源:行业动态
时间:2022-04-18 01:21:01 来源:行业动态
随着互联网化和在线化以及云端应用的增加,企业需要将关注点放在风险治理上面,毕竟被攻击的风险和数据的泄露将导致公司名誉的损失,比如Equifax信息泄露事件。
虽然开源业界有着Linus Law这一说法,但是开源项目缺乏维护的现象也十分严重。OSSRA显示,废弃开源组件仍在被广泛使用。高达91%的代码存在开源依赖项,这些开源组件在过去两年内没有任何开发活动没有进行代码改进,也没有任何安全修复。
同时,85%的代码库含有至少四年未曾更新的开源依赖项。与废弃项目不同,这些过时的开源组件拥有活跃的开发人员,但是他们发布的更新及安全补丁却没有被下游商业消费者所采用。除了忽略应用补丁会带来的明显安全隐患之外,使用过时的开源组件还可能带来技术上的麻烦,包括与将来更新相关的功能问题和兼容性问题。
这种风险可以称之为运维风险,这与开源社区息息相关,比如社区的活跃度、贡献者的代码修复情况。此外,随着社区的国际化合作增多,需要尊重本地市场的合规要求,比如是否涉及加密算法等。
王永雷表示,开源的安全问题有时候隐藏在代码逻辑里面,并不容易找到。而且找到之后,没有机制进行及时的通知和修复或者没有人维护,这也会带来很大的问题。所以企业需要良好的开源治理。
为此,我们需要构建完整的BOM物料清单,了解企业组织里使用了哪些开源组件。新思科技提供了覆盖全场景扫描需求的多因子探测技术,帮助企业自动化识别开源组件和代码的使用情况。
王永雷说,将开源组件自动化识别出来是企业开源软件治理的基础,在此之上Black Duck提供了从识别到保护、合规、治理的端到端解决方案。该方案具有轻量级的特点,能够融入到整个软件开发过程,实现开源治理、安全、合规、运营一体化。
当前软件开发流行DevOps、CI/CD集成,其实从集成的角度看,新思科技把软件开发和部署分为五个阶段设计、提交代码、构建、测试、生产。在整个软件开发生命周期中,我们可以采用两个治理思路,一个是主动治理,一个是被动治理。
主动治理就是左移,在设计阶段就要考察社区情况、项目的选型等。而在代码提交阶段,需要快速反馈和快速修正,识别开源依赖项,进行QA(质量保证),形成一个完整、合规、安全的软件,发布到生产环境。
软件发后需要进行持续跟踪监控,毕竟软件的漏洞是动态变化的。针对漏洞,我们需要准备相应的解决方案,对于开源的全生命周期管理,需要与开发运营进行集成,更好地构建安全优质的软件。
构建安全优质的软件需要人、流程和技术的紧密协同。在人的方面,培养开源方案专家、举办开源治理活动和培训、领导重视;在流程方面,制定适合组织的治理流程和框架,持续改进流程;在技术方面,自下而上选型适合组织的技术,定制适合组织现状的解决方案。
王永雷表示,为了确保开源合规安全管理,企业首先要选择一个合适的工具,该工具要具有很强的探测能力、自动化、容易集成、可持续,然后在组织层面协调开发、安全、合规、法务、专利等部门,制定规范流程。新思科技除了提供专业的工具之外,还有行业的最佳实践以及本地化的服务支持,帮助客户落地可实践的方案。
另外,新思科技具有强大的研发能力,在知识库(Knowledge Base)方面,新思科技网络安全研究中心(CyRC)持续监控组件是否有新的漏洞,漏洞的发布频率以小时来计,保证披露的及时性,并提供对应的解决方案。