新思科技《2021年开源安全和风险分析》 告(OSSRA)发现开源安全、许可证合规性和维护问题依然很普遍。其中,高达91%的代码存在开源依赖项,这些开源组件在过去两年内没有任何开发活动——没有进行代码改进,也没有任何安全修复。这无疑是一个风险敞口。掌握开源信息,保护供应链安全,才能构建可信软件。
近日,非营利性组织Linux基金会和哈佛创新科学实验室发布了“自由和开放源码软件普查II – 应用库”。这次普查列出了1,000多个最为广泛使用的开源应用库。新思科技 络安全研究中心(CyRC)将自身基于数千家公司代码库的扫描结果数据匿名化后,贡献给了此次普查 告,有助于更全面地了解 FOSS(自由/开源软件,free and open source software)的使用情况。
Linux基金会普查 II (Linux Foundation Census II)检查了最受欢迎的开源应用库,并且罗列了影响这些应用库安全问题的因素。
新思科技软件质量与安全部门安全解决方案经理Mike McGuire将软件包和版本比作汽车的型 、生产年份和配置。他说:“如果我只说我开一辆丰田凯美瑞汽车,但你仍可能不会知道我开的是哪一款车。1999年版本,还是2022年版本?在订购零部件、获得服务、跟踪召回等时候了解这些信息非常重要。”
Linux基金会普查 II的目的
Mike McGuire对此表示赞同。广泛使用并不代表更关键。他解释道:“大量的应用程序可能正在使用某一特定的 Java GUI 框架,所以这个框架非常流行。但它可能不是软件的关键部分。每个企业应用程序构建的方式不同,其关键组成也大相径庭。”
尽管如此,一旦确定了使用最广泛的软件,我们就更容易评估风险状况。
开源管理的挑战
现在,改善软件识别、分类和维护面临着一些挑战。随着行业朝着广泛标准化和采用软件物料清单(SBOM)的方向发展,了解这些挑战都非常重要,包括:
新思科技中国区软件应用安全技术总监杨国梁表示:“开源软件易获取、开放、共享,为业界带来丰富的红利。但同时,对开源组件漏洞的利用,甚至伪装成开源贡献者预埋漏洞,这些都屡见不鲜。近期,Log4Shell和Spring4Shell漏洞在业界沸沸扬扬,这也体现了掌握已使用开源组件信息的必要性。在漏洞披露时,相关方可以采取更及时的行动。因此,软件组成分析 (SCA) 解决方案的重要性日益凸显。SCA可以为应用生成SBOM,如果组件中出现新漏洞,会及时主动通知用户。”
大多数企业级应用,包括我们常用的购物 站、 交媒体等,服务海量用户,需要持续地稳定运行。为此,开发人员经常使用日志,以监控应用的状态和安全。Log4j2是提供日志功能的开源组件;Spring Core Framework用于Java应用,在基于J2EE的应用中被广泛地使用。由此可见,Log4Shell和Spring4Shell漏洞的影响范围之大。
影响FOSS长期安全的问题
这些问题包括:
Mike McGuire表示:“Linux基金会普查 II展示了最常用的FOSS以及一些深刻的洞察。虽然它不是指导,但是指出组织和个人都需要积极参与FOSS的开发,而不是留给一小部分开发人员像现在这样领导开源项目。该 告还显示了SCA工具在检测开源历史遗留软件方面的重要性,以及 SBOM 领域对标准化的持续需求。”
新思科技开源专家王永雷补充道:“BOM的概念来自制造业,传统BOM是详细列出产品组成的物资明细。当发现缺陷零件时,制造商可以准确地知道哪个产品受到了影响,以便安排修理或更换。现在,随着开源组件的大规模使用,SBOM需求已经开始呈现出增长态势。新思科技的开源管理工具Black Duck可以创建和管理企业级的上下游软件供应链完整的SBOM,帮助管理在应用和容器中使用开源和第三方代码所带来的安全、质量和许可证合规性风险。”
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!