当前位置:首页 > 厂商动态 > 新思科技(Synopsys)
[导读]开源已经成为软件行业的趋势。然而,由于开源使用的便捷性,有些企业可能会忽略其带来的风险。开源组件和依赖管理对于软件安全性和可信性来说极其重要。

开源已经成为软件行业的趋势。然而,由于开源使用的便捷性,有些企业可能会忽略其带来的风险。开源组件和依赖管理对于软件安全性和可信性来说极其重要。

开源软件无处不在。无论在什么行业,每个企业都需要依赖软件来满足其业务需要。而且,企业构建和使用的大多数应用程序都包含了开源代码。随着各行各业迁移至云原生应用以及应用程序越来越复杂,软件的安全风险也随之增长。企业需要在其软件开发生命周期(SLDC)中实施开源依赖最佳实践,并选择正确的工具来管理其开源风险。新思科技指出对开发人员进行开源安全培训和部署强大的软件组成分析(SCA)工具,都是保护代码、降低开源软件风险的关键步骤。

新思科技中国区软件应用安全业务总监杨国梁表示:“开源已经被明确列入了中国‘十四五’规划,其价值正在被越来越多的领域所认可。虽然凭借其开放、协作、共享的特性,开源这一赛道持续火热。但其中的风险隐患也不容忽视。过度依赖开源组件可能导致产品同质化;更需要重视的是,这还会增加安全风险、知识产权风险、供应链安全风险等。企业需要制定清晰的开源策略,并在内部及供应链贯彻该策略,借助可靠的测试工具,以满足业务发展需求的速度开发可信软件产品。”

新思科技发布的《2022年开源安全和风险分析》报告(OSSRA)强调了在商业和专有应用程序中使用开源的趋势,并提供了见解,以帮助开发人员更好地了解他们所处的互联软件生态系统,同时还详细地介绍了非托管开源所带来的安全隐患,包括安全漏洞、过期或废弃的组件以及许可证合规性问题。该报告调研了17个行业,其中计算机硬件和半导体、网络安全、能源与清洁技术,以及物联网这四个行业被审计的代码库中100%包含开源组件。其余的垂直行业的代码库中有93%到99%包含开源组件。

报告还发现许可证冲突总体上在减少。超过一半(53%)的被审代码库存在许可证冲突,与 2020 年的 65% 相比大幅下降。尽管如此,未经审查的依赖关系的用例有所增加。也就是说,当开发人员引入开源依赖项时,他们通常不知道其中包含许可条款的子依赖项。例如,常用的 node.js 组件的某些版本包含一个依赖项,该依赖项使用了 CC-SA 3 许可协议下许可的代码,这可能会对被许可人提出非预期的要求,需要对可能的知识产权IP问题或其它影响进行法律评估。

更糟糕的是使用过时的开源组件仍然是常态。在新思科技Black Duck审计服务团队今年分析的2,097个代码库中, 88%的代码库包含过时版本的组件。这意味着,市场上有可用的更新/修复版本,但开发人员并未采用。

没有将软件升级到最新版本的理由有很多。但是,如果没有一份清单,准确列明其在代码使用的开源组件,那过时的组件可能就会被遗忘;直到变成一个易受攻击的高风险漏洞。

这正是Log4j漏洞产生的原因。漏洞本身固然危险,但引起企业恐慌和混乱的是,当他们试图修复漏洞时,却不知道Log4j在其系统和应用程序中的位置。甚至有的企业还在着急地检查他们是否应用了Log4j。

在危机发生之前建立开源依赖最佳实践

建立一个全面的开源软件管理程序或许令人望而却步,但企业可以参考一些最佳实践,以循环渐进提升开源软件安全。

为了避免“零日漏洞”带来的风险,保护资源和数据,企业需要建立软件治理,包括制定策略、设置审批流程以及对现有开源软件依赖项进行全面审计。

制定策略

制定开源策略可以最大限度地降低使用开源软件的法律、技术和业务风险。有一些企业甚至设立开源项目办公室,以管理与开源软件相关的所有事宜。

制定开源策略的第一步是要明确主要利益相关者。这包括开发人员、高层管理人员、IT人员、使用开源组件的团队经理、就开源许可证合规性提供建议的法律专家以及软件架构师等。他们都会受到策略的影响。所有利益相关者都应该今早参与到开源相关流程。

开源策略应该列明企业使用开源组件的目的;目前使用多少开源组件;如何使用开源组件;包含哪些开源许可证;开源软件的使用对于内部开发和交付的软件有何不同等。企业还需要建立开源软件采购和选择流程。比较理想的情况下,该流程标明允许使用的网站、存储库、获取开源软件的方法,以及如何确定特定软件包是否适用。此外,还需要规定谁可以下载开源软件、从哪里下载,以及在下载、使用或分发之前是否需要许可。

设置审批流程

您还应该建立一个审批流程,以确定软件包是否满足企业的需求和质量标准。需要考虑的标准包括代码质量、支持级别、项目成熟度、贡献者声誉和漏洞趋势。

如果流程审批要发挥作用,则需要快速处理请求。建立一个预先批准的开源列表可以帮助加速处理请求。

创建审计流程以检测开源软件

除了确保遵守内部政策外,审计还可以全面了解正在使用的开源软件。这将帮助识别和定位开源组件,对于维护开源许可证合规性至关重要。而且,当有漏洞披露时,企业也可以尽快响应。

为了查明应用中易受攻击的组件,您必须首先掌握应用中的所有开源组件。这需要考虑代码的所有版本和fork,检测源代码和二进制形式的组件,分析经常嵌入开源的商业软件,并检查包管理器中声明以外的内容。手动记录开源清单通常不准确,将这些任务自动化很有必要。

审计后,企业将能够创建任务列表和相应的计划,以帮助改善软件并实现合规性。此类任务可能包括提供源代码,包括代码或文档中所需的通知,以及更新最终用户许可协议。如不符合合规性,您需要寻找替代方案,例如不同的库。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

业内消息,日前欧洲软件巨头SAP宣布了一项重组计划推动人工智能增长,该计划将涉及大约8000名员工的岗位调整,这些员工将被纳入自愿休假计划和内部再培训措施,即鼓励员工自愿离职或进行内部转岗。

关键字: AI 重组 软件 裁员 SAP

业内消息,近日芯片设计软件制造商Synopsys表示,将通过价值350亿美元的现金加股票交易收购EDA厂商Ansys 。该交易完成的话将是自芯片制造商博通以来科技领域最大的收购案,博通去年以690亿美元的交易收购了软件制...

关键字: 新思科技 Synopsys 收购 EDA Ansys

业内消息,国家工信部近日公布了今年前三季度我国软件和信息技术服务业的具体情况,整体运行态势平稳,软件业务收入两位数增长,利润总额保持较快增长,软件业务出口降幅收窄。

关键字: 工信部 软件

嵌入式系统是一种特殊的计算机系统,它被嵌入到其他设备中,以完成特定的任务。嵌入式系统的结构组成是由硬件和软件两部器、输入输出设备和总线等组件,而软件部分则包括操作系统、应用程序和驱动程序等。

关键字: 嵌入式 计算机 软件

嵌入式软件系统是现代技术中广泛应用的一种软件形式,它通常嵌入在各种设备中,如汽车、电子设备、医疗设备等。由于这些设备的功能和性能对人们的生活至关重要,因此对嵌入式软件系统进行全面而有效的测试非常重要。本文将介绍如何对嵌入...

关键字: 嵌入式 设备 软件

安全态势可控、移动安全可及、安全开发可行

关键字: 软件 软件安全 智能终端

嵌入式系统已经成为现代生活中不可或缺的一部分,它们被广泛运用于各行各业,包括智能手机、汽车、家用电器、医疗设备等。在全球嵌入式软件市场中,中国作为制造业大国,自然也扮演着重要的角色。本文将详细分析国产嵌入式软件的发展趋势...

关键字: 嵌入式系统 软件 人工智能

在众多行业的数字化转型过程中,基于硬件的数据处理加速是构建高性能、高效率智能系统的关键之处,因而市场上出现了诸如FPGA、GPU和xPU等许多通用或者面向特定应用(如NPU)的硬件加速器。尽管它们的性能和效率都高于通用处...

关键字: 软件 硬件 FPGA GPU

上海2023年9月25日 /美通社/ -- 回顾"中国制造"的崛起之路,我们逐渐从「志造」、「制造」一路走到了「智造」,在如今智能化主导的时代中,制造仍然是有志者们的主战场,硝烟未散。亿个制造强者,才...

关键字: 软件 TOP P10 离散

该AI驱动型数据分析解决方案能够挖掘未开发的、具有可操作的洞察,以提高芯片设计、制造、测试和现场部署的效率  摘要:  全面的AI驱动型数据分析解决方案可整合并利用IC设计、测试和制造流程中...

关键字: EDA SYNOPSYS 大数据分析 新思科技
关闭