Quark / Inceptor JDBC 驱动漏洞修复说明

  其他常见问题
内容纲要

概要描述


Quark / Inceptor JDBC 驱动 quark-driver-8.37.3.jar 被安全扫描报出 guava 和 commons-lang 的 5 个漏洞。扫描结果中的组件和 CVE 如下:

com.google.guava:guava:31.1-jre
  CVE-2026-102554 (Medium) fixVersion: [33.7.2]
  CVE-2026-118042 (Low)    fixVersion: [33.7.2-android]
  CVE-2023-2976   (High)   fixVersion: [32.0.0-android][32.0.1-jre]
  CVE-2020-8908   (Low)    fixVersion: [32.0.0-android]
commons-lang:commons-lang:2.6
  CVE-2025-48924  (Medium)

命中路径:

quark-driver-8.37.3.jar/META-INF/maven/com.google.guava/guava/pom.xml
quark-driver-8.37.3.jar/META-INF/maven/commons-lang/commons-lang/pom.xml

这两个依赖以重定位方式打包在驱动 jar 中(包名改为 io.transwarp.thirdparty.*),不是独立的 jar 文件。扫描工具根据 jar 内 META-INF/maven 下的 pom 文件识别组件版本。

漏洞修复版驱动已升级或替换这些依赖,详见下文。

详细说明


漏洞信息

CVE 组件 扫描等级 问题 受影响版本 修复版本
CVE-2020-8908 guava Low Files.createTempDir() 创建的临时目录使用默认权限,同一台机器上的其他用户可能读取其中的数据 32.0.0 之前 32.0.0
CVE-2023-2976 guava High FileBackedOutputStream 在 Java 默认临时目录创建文件,同一台机器上的其他用户可能读取这些文件 1.0 ~ 31.1 32.0.0(官方建议 32.0.1,32.0.0 在 Windows 上有功能问题)
CVE-2026-102554 guava Medium CompactHashMap、CompactHashSet、MapMakerInternalMap 在 Java 原生反序列化时按数据流中声明的大小一次性分配内存,构造的小数据流即可导致 OutOfMemoryError(拒绝服务) 4.0 ~ 33.7.1 33.7.2
CVE-2026-118042 guava Low HashBiMap 和 LinkedHashMultimap 遇到大量哈希冲突的键或值时,构造耗时变为二次方级(拒绝服务) 13.0 ~ 33.7.2 33.8.0
CVE-2025-48924 commons-lang Medium ClassUtils.getClass(...) 处理超长输入时递归过深,抛出 StackOverflowError commons-lang 2.0 ~ 2.6;commons-lang3 3.0 ~ 3.17.x commons-lang3 3.18.0(2.x 没有修复版本)

注意:

  • CVE-2026-118042 的修复版本以 33.8.0 为准: 扫描结果写的是 33.7.2-android,但 Guava 官方公告列出的受影响范围包含 33.7.2-jre,修复在 33.8.0 中发布。只升级到 33.7.2 修不了这个漏洞。
  • commons-lang 2.x 已停止维护: 只能迁移到 commons-lang3。

依赖变更

依赖 原驱动 修复版驱动 变更
com.google.guava:guava 31.1-jre 33.8.0-jre 升级,修复上表中 4 个 guava 漏洞
com.google.guava:failureaccess 无 1.0.3 新增。它是 guava 的运行时依赖,原驱动漏打了这个包
commons-lang:commons-lang 2.6 无 移除,修复 CVE-2025-48924
org.apache.commons:commons-lang3 无 3.21.0 新增,替代 commons-lang 2.6
  • 重定位规则不变: guava 和 failureaccess 位于 io.transwarp.thirdparty.com.google.*,commons-lang3 位于 io.transwarp.thirdparty.org.apache.commons.lang3.*。
  • 其他依赖版本不变: httpclient 4.5.13、httpcore 4.4.13、antlr-runtime 3.4、stringtemplate 3.2.1、slf4j-api 1.7.5。
  • 已核对: 修复版驱动中 guava、failureaccess、commons-lang3 的类,与 Maven Central 官方 jar 逐个类、逐个方法签名比对,完全一致;commons-lang 2.6 的类已全部移除。在 OSV 漏洞库中查询,这三个新版本组件均无已知漏洞(2026-11-06 查询)。

修复驱动获取

quark-driver-8.37.3.jar(漏洞修复版)

其他信息


确认驱动是否为修复版

修复版驱动的版本号仍为 8.37.3,不能只看版本号判断。需要分别确认 guava 和 commons-lang 两个依赖。

  1. 查看 guava 版本:

    unzip -p quark-driver-8.37.3.jar META-INF/maven/com.google.guava/guava/pom.properties
  2. 查看 commons-lang 的打包情况:

    unzip -l quark-driver-8.37.3.jar | grep 'META-INF/maven/.*commons-lang.*pom.properties'
检查项 修复版 未修复版
guava 版本(命令 1) version=33.8.0-jre version=31.1-jre
commons-lang(命令 2) 只列出 META-INF/maven/org.apache.commons/commons-lang3/pom.properties 列出 META-INF/maven/commons-lang/commons-lang/pom.properties

两项都符合修复版才是修复版。如需进一步确认 commons-lang3 的版本,执行 unzip -p quark-driver-8.37.3.jar META-INF/maven/org.apache.commons/commons-lang3/pom.properties,修复版输出 version=3.21.0。

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。