• 开源软件总体使用情况分析


    1、开源软件总体使用情况分析

    • 1)国内企业软件项目 100%使用开源软件

    在被分析的 2557 个国内企业软件项目中,无一例外,均使用了 开源软件。最多的项目使用了 3878 个开源软件,平均每个项目使用 126 个开源软件。使用开源软件最多的 5 个项目情况如下表所示。

    项目名称使用的开源软件数量
    项目 13878
    项目 23838
    项目 33536
    项目 43062
    项目 52637
    经过后续的调研和访谈,我们还发现,软件项目中使用的开源软 件数量大大超出了软件项目管理者和程序员自身的认知。由于开源软 件之间的依赖关系错综复杂,且软件开发中依赖包的管理通常通过包 管理器程序自动管理,软件开发者常常意识不到自己使用了数量巨大 的开源软件,因此当某个开源软件曝出安全漏洞时,软件开发者常常 “躺枪”而不自知,这中间隐含了巨大的软件供应链安全风险。
    • 2)流行开源软件被近 1/4 的软件项目使用

    一些流行开源软件会被很多软件项目所使用,这些开源软件一旦 出现安全漏洞,影响面将会非常巨大。对于大型企业来说,企业内部 可能就有数以百计的软件开发项目,更加需要对流行开源软件保持足 够的关注和重视,应该做到对其在本单位内的使用情况心中有数。经 统计,在我们分析的 2557 个国内企业软件项目中,被使用最多的开 源软件为 Apache Commons Lang,被 622 个项目所使用,占比达 24.3%。 被使用最多的前 5 名开源软件如下表所示。

    开源软件名称使用它的项目数量被使用率
    Apache Commons Lang62224.3%
    Apache Commons Collections62024.2%
    dom4j: flexible XML framework for Java56322.0%
    Simple Logging Facade for Java (SLF4J)51019.9%
    Javax Inject47218.5%
    2、开源软件漏洞风险分析
    • 1)近 9 成软件项目存在已知开源软件漏洞

    分析发现,在 2557 个国内企业软件项目中,存在已知开源软件 漏洞的项目有 2280 个,占比高达 89.2%;存在已知高危开源软件漏 洞的项目有 2062 个,占比为 80.6%;存在已知超危开源软件漏洞的 项目有 1802 个,占比为 70.5%。

    • 2)平均每个软件项目存在 66 个已知开源软件漏洞

    在 2557 个国内企业软件项目中,共检出 168604 个已知开源软件 漏洞(涉及到 4166 个唯一 CVE漏洞编号),平均每个软件项目存在 66 个已知开源软件漏洞,最多的软件项目存在 1200 个已知开源软件漏 洞。存在已知开源软件漏洞数量排名前 5 的项目情况如下表所示。

    项目存在开源软件漏洞数量
    项目 11200
    项目 21013
    项目 3649
    项目 4517
    项目 5426
    • 3)影响最广的开源软件漏洞存在于 44.3%的软件项目中

    从漏洞的影响度来分析,影响范围最大的开源软件漏洞为 CVE- 2020-5421,影响了 44.3%的软件项目。影响度排名前 5 的开源软件 漏洞情况如下表所示。

    漏洞名称CVE 编号影响项 目数量影响度
    Spring Framework 安全漏洞CVE-2020-5421113244.3%
    Google Guava 访问控制错误漏洞CVE-2020-8908102139.9%
    Apache Log4j 信任管理问题漏洞CVE-2020-9488102039.9%
    FasterXML Jackson-databind 代码问题漏洞CVE-2020-884090535.4%
    FasterXML Jackson-databind 代码问题漏洞CVE-2020-2564986633.9%
    • 4)15 年前的开源软件漏洞仍然存在于多个软件项目中

    分析发现,部分软件项目中存在十几年前公开的古老开源软件漏 洞,最古老的漏洞是 2005 年 11 月公开的 CVE-2005-3510,仍然存在 于 31 个项目中。部分古老开源软件漏洞的影响情况如下表所示。

    漏洞名称CVE 编号发布日期影响项 目数量
    Apache Tomcat 目录列表拒绝服务漏洞CVE-2005-35102005.11.0631
    Jetty URL 编码的反斜杠源代码泄露漏洞CVE-2005-37472005.11.2241
    Apache Tomcat 跨站脚本攻击漏洞CVE-2005-48382005.12.3132
    Apache Struts ActionForm 拒绝服务漏洞CVE-2006-15472006.3.3032
    Apache Struts 特定参数安全绕过漏洞CVE-2006-15462006.3.30

    泛获取开源软件信息和漏洞信息,帮助客户掌握开源软件资产状况, 及时获取开源软件漏洞情报,降低由开源软件带来的安全风险,奇安 信开源卫士目前可识别 4500 多万个开源软件版本,兼容 NVD、CNNVD、 CNVD等多个漏洞库。奇安信代码卫士和奇安信开源卫士目前已经在 数百家大型企业和机构中应用,帮助客户构建自身的代码安全保障体 系,消减软件代码安全隐患,并入选国家发改委数字化转型伙伴行动、 工信部中小企业数字化赋能专项行动,为中小企业提供软件代码安全 检测平台和服务。

    本文主要学习 2021年中国软件供应链安全分析报告进行整理的笔记,如有错误,请随时联系

  • 相关阅读:
    升级了Springboot版本后项目启动不了了
    中国陆地生态系统服务价值空间分布数据集
    go语言零碎笔记
    RPA在票据处理中的应用
    Open Mobile API(GP2.3)规范阅读笔记
    SpringBoot+Vue“咱村那些事”乡村基层信息采集系统
    人傻了,在学校也没人跟我说微服务这么重要啊!惨遭工作毒打的我只能说这份微服务笔记真是我的救星!
    【Python深入学习】- 书籍推荐|数据结构和算法介绍|内建集合数据类型
    瑞意教育集团阳光助学 军训展风采 青春正当时2024级新生军训圆满落幕
    2019Android高级面试题总结
  • 原文地址:https://blog.csdn.net/m0_73803866/article/details/127036479