揭晓全球使用最广泛的开源应用库
开源更需要社区参与才能蓬勃发展。如果没有社区参与,企业将开源组件用于商业软件,项目活力很容易减弱。在数字经济时代,软件风险等同于业务风险。掌握软件中开源组件的信息有利于管理软件风险,进而保障业务。
近日,非营利性组织Linux基金会和哈佛创新科学实验室发布了“自由和开放源码软件普查II - 应用库”。这次普查列出了1,000多个最为广泛使用的开源应用库。新思科技网络安全研究中心(CyRC)将自身基于数千家公司代码库的扫描结果数据匿名化后,贡献给了此次普查报告,有助于更全面地了解 FOSS(自由/开源软件,free and open source software)的使用情况。
Linux基金会普查 II (Linux Foundation Census II)检查了最受欢迎的开源应用库,并且罗列了影响这些应用库安全问题的因素。
报告作者指出:“完全理解 FOSS 的健壮性、经济价值和安全性是一件很难的事情,因为它是以去中心化和分布式的方式产生的。”由于软件组件打包方式以及版本分类和识别方式多种多样,因此该报告将它们归纳汇总成8 种Top 500排名。
新思科技软件质量与安全部门安全解决方案经理Mike McGuire将软件包和版本比作汽车的型号、生产年份和配置。他说:“如果我只说我开一辆丰田凯美瑞汽车,但你仍可能不会知道我开的是哪一款车。1999年版本,还是2022年版本?在订购零部件、获得服务、跟踪召回等时候了解这些信息非常重要。”
Linux基金会普查 II的目的
报告作者表示:“这是为了维持 FOSS 长期安全和健康的活动提供信息。”该报告可以帮助我们预估哪些FOSS软件包被广泛地使用在不同的应用中。它不是评估衡量该软件的风险状况。许多指标可以用来风险提示,但各家企业可能对因素的权重不同。
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,帮助管理在应用和容器中使用开源和第三方代码所带来的安全、质量和许可证合规性风险。”
好文章,需要你的鼓励
后来广为人知的“云上奥运”这一说法,正是从这一刻起走上历史舞台。云计算这一概念,也随之被越来越多的人所熟知。乘云科技CEO郝凯对此深有感受,因为在2017年春节过后不久,他的公司开始成为阿里云的合作伙伴,加入了滚滚而来的云计算大潮中。同一年,郝凯带领团队也第一次参加了阿里云的“双11”活动,实现了800万元的销售业绩。
随着各行各业数字化变革的不断深入,人类社会正加速迈向智能化。作为智能世界和数字经济的坚实底座,数据中心也迎来了蓬勃发展。面