com.google.guava:guava 组件安全漏洞及健康分析

文章更新时间:2023-08-28 18:00

com.google.guava:guava

组件简介

维护者google组织许可证类型Apache-2.0
首次发布2010 年 4 月 26 日最新发布时间2023 年 8 月 1 日
GitHub Star48189GitHub Fork10716
依赖包28,694依赖存储库219,576

Guava 是 Google 的一组核心 Java 库,其中包括新的集合类型(例如 multimap 和 multiset)、不可变集合、图形库以及用于并发、I/O、哈希、原语、字符串等的实用程序。

官网:https://guava.dev/

官方仓库:https://github.com/google/guava

参考链接:

https://packages.ecosyste.ms/registries/repo1.maven.org/packages/com.google.guava:guava

组件健康度

技术健康度该组件是由谷歌开发的一套核心Java库,包含了多种新的集合类型(如multimap和multiset)、不可变集合、图形库以及并发、I/O、哈希、基本类型、字符串等方面的实用工具。该组件的代码质量高,测试覆盖率高,性能优化良好,功能丰富而稳定。
社区健康度该组件在GitHub上有超过4.8万个星标,1万多个分支,632个未解决的问题和93个未合并的拉取请求。该组件有一个活跃的社区,用户可以在StackOverflow上提出问题,或者在guava-announce和guava-discuss两个邮件列表上获取最新的发布信息和讨论话题。
更新和维护频率该组件的最新版本是32.1.2,于2023年8月1日发布。该组件的发布周期大约为3个月左右,每次发布都会包含一些新特性、改进和修复。该组件的开发团队由谷歌内部的Java核心库团队负责,他们对该组件的更新和维护非常积极和专业。
兼容性该组件提供了两种不同的”风味”:一种是用于Java 8或更高版本的JRE上,另一种是用于Android或任何想要与Android兼容的库上。这两种风味在Maven版本字段中分别指定为32.1.2-jre或32.1.2-android。该组件只需要一个运行时依赖,即failureaccess-1.0.1.jar。该组件遵循语义化版本控制原则,尽量保持向后兼容性,但也会在必要时对一些标记为@Beta注解的API进行变更。
文档和支持该组件有一个完善的用户指南Guava Explained,以及详细的Javadoc文档。该组件还提供了JDiff文档来展示不同版本之间的API差异。此外,该组件还有一个GitHub项目页面,用户可以在上面查看源代码、提交问题或拉取请求、参与讨论等。

综上所述,com.google.guava:guava 是一个健康度较高的组件,具有成熟的技术、活跃的社区、频繁的更新和维护、良好的兼容性和丰富的文档和支持。

参考链接:

https://github.com/google/guava

https://github.com/google/guava/releases

https://guava.dev/

组件许可证解读

Apache License 2.0 是一种开源软件许可证,广泛用于授权开源项目和代码。Apache License 2.0 允许用户自由地使用、修改和分发受许可的软件,而无需支付版权费用或专利费用。它鼓励开发者共享他们的代码,并保护用户的权利。以下是该许可证的一些重要特点:

  1. 代码使用权:用户可以自由地使用、复制、修改、合并、发布、分发和销售受许可软件。
  2. 版权声明:用户必须在所有源代码副本中保留原始的版权声明、许可证声明和免责声明。
  3. 修改代码:如果用户对代码进行了修改,需要清楚标明哪些部分发生了变化,并不能暗示原作者同意这些修改。
  4. 商标使用:Apache License 2.0 并未授予使用原软件的任何商标或名称的权利。
  5. 专利许可:该许可证授予了在使用、修改或分发受许可软件时相关专利的非独占许可。这意味着如果用户授权其他人使用该软件,相关专利许可也会传递给接收方。
  6. 再许可:用户可以将受 Apache License 2.0 许可的代码作为一部分整合到其它开源项目中,并使用不同的许可证授权整个项目。但是,需要在代码中显式地说明使用了 Apache License 2.0 许可的部分。

需要注意的是,Apache License 2.0 并不保证软件没有缺陷或不稳定性,使用该软件的风险由用户自行承担。

许可证原文链接:https://github.com/google/guava/blob/master/LICENSE

组件漏洞版本及修复方案

漏洞编号漏洞标题漏洞等级影响版本修复版本
MPS-mfku-xzh3Guava<32.0.0 存在竞争条件漏洞中危[1.0,32.0.0-jre)32.0.0-jre
MPS-2020-17429Google Guava 访问控制错误漏洞低危(-∞,30.0-jre)30.0-jre
MPS-2018-5515Google Guava 不可信数据的反序列化漏洞中危[24.1.1-android,24.1.1-jre)24.1.1-jre

同类型可替代组件

  • Caffeine:一个基于Java 8的高性能、近乎最优的缓存库,支持多种过期策略和异步加载。官网:https://github.com/ben-manes/caffeine
  • Eclipse Collections:一个提供了丰富的集合类型和实用工具的Java库,包括列表、集合、映射、多映射、堆栈、袋子、双端队列等。官网:https://eclipse.dev/collections/ja/index.html
  • Apache Commons Collections:一个扩展了Java集合框架的库,提供了一些新的集合类型,如双向映射、循环缓冲区、有序集合等,以及一些转换器、迭代器、比较器等实用工具。官网:https://commons.apache.org/proper/commons-collections/
  • Javatuples:一个简单而强大的Java元组库,支持从一元组到十元组的不可变对象,以及一些操作元组的方法。官网:https://www.javatuples.org/

组件SBOM

组件名称版本是否直接依赖仓库
com.google.guava:listenablefuture9999.0-empty-to-avoid-conflict-with-guavamaven
com.google.guava:listenablefuture1.0maven
com.google.errorprone:error_prone_annotations2.21.1maven
com.google.guava:guavaHEAD-jre-SNAPSHOTmaven
org.hamcrest:hamcrest-core1.3maven
com.google.j2objc:j2objc-annotations2.8maven
com.google.guava:guavaHEAD-android-SNAPSHOTmaven
com.google.guava:failureaccess1.0.1maven
junit:junit4.13.2maven

该SBOM清单仅展示部分内容

完整SBOM清单及检测报告:

https://www.murphysec.com/console/report/1696087042139447296/1696087065539469312?allow=1

(0)
上一篇 2023年8月25日 下午5:07
下一篇 2023年8月28日 下午8:32

相关推荐

  • com.google.code.gson:gson 组件安全漏洞及健康度分析

    文章更新时间:2023-09-26 11:40 组件简介 维护者 Google 组织 许可证类型 Apache-2.0 首次发布 2008 年 8 月 10 日 最新发布时间 2023 年 1 月 6 日 GitHub Star 22450 GitHub Fork 4296 依赖包 13,282 依赖存储库 291,545 Gson(又称Google Gso…

    2023年9月26日
    0
  • com.fasterxml.woodstox:woodstox-core 组件安全漏洞及健康度分析

    文章更新时间:2023-09-25 16:20 组件简介 维护者 FasterXML 组织 许可证类型 Apache-2.0 首次发布 2015 年 2 月 24 日 最新发布时间 2023 年 4 月 19 日 GitHub Star 192 GitHub Fork 73 依赖包 491 依赖存储库 1,896 Woodstox是一个快速、开源的StAX实…

    2023年9月25日
    0
  • com.google.inject:guice 安全漏洞及健康度分析

    文章更新时间:2023-09-18 15:30 组件简介 维护者 Google 组织 许可证类型 Apache-2.0 首次发布 2010 年 12 月 10 日 最新发布时间 2023 年 5 月 12 日 GitHub Star 12142 GitHub Fork 1651 依赖包 4,984 依赖存储库 28,555 描述:Guice是Google开发…

    2023年9月18日
    0
  • com.flipkart.zjsonpatch:zjsonpatch 组件安全漏洞及健康度分析

    文章更新时间:2023-09-26 16:10 组件简介 维护者 flipkart-incubator 组织 许可证类型 Apache-2.0 首次发布 2015年10月9日 最新发布时间 2023年1月11日 GitHub Star 496 GitHub Fork 150 依赖包 65 依赖存储库 267 zjsonpatch是一个对json字符串进行操作…

    2023年9月26日
    0
  • 小心恶意NPM包让你成为51Pwn的肉鸡

    10月31日,墨菲安全实验室监测到名为hktalent的开发者在NPM中央仓库发布了aliyundrive、spring-projects 等15个NPM投毒包,组件包通过混淆进行反检测,开发者难以发现隐藏的恶意代码。 其中 aliyundrive 组件包仿冒了阿里云盘名称,国内用户开发者在使用阿里云盘过程中有可能中招。 当用户安装时会窃取用户的操作系统、网…

    2023年11月1日
    0