JDBC LogFactory 任意类加载/构造导致潜在 RCE
Summary
| CVE | CVE-2026-111440 |
|---|---|
| State | PUBLISHED |
| Assigner | openGauss |
| Source Priority | CVE Program / NVD first with legacy fallback |
| Published | 2026-10-19 04:17:03 UTC |
| Updated | 2026-10-19 20:56:36 UTC |
| Description | 在 openGauss-connector-jdbc 的 pgjdbc/src/main/java/org/postgresql/log/LogFactory.java 中,LogFactory 根据 JDBC 连接参数中的 logger 类名调用 Class.forName 加载类后,直接反射调用以 String 为参数的构造函数,再转换为 Log。缺少 asSubclass(Log.class) 校验,非 Log 实现类也会在类型检查前被实例化。因此,当攻击者可控制 JDBC URL 或连接属性中的 logger 类名,且客户端 classpath 中存在可被加载的类时,可能在客户端触发非预期的类加载与构造副作用。 此漏洞自 JDBC 1.1.0引入,影响 1.1.0 及之后的 2.x、3.x、5.x、6.x 各版本及补丁(含 6.0.0 分支最新 6.0.6),以及 7.0.0-RC1、7.0.0-RC2、7.0.0-RC3,并在 7.0.0-LTS 版本修复。修复在 Class.forName 之后先执行 asSubclass(Log.class),仅允许 Log 子类进入构造。修复pr见https://gitcode.com/opengauss/openGauss-connector-jdbc/pull/423。 |
Risk And Classification
Primary CVSS: v3.1 7 HIGH from a1a479f7-907b-4ae8-a999-9148cadc9224
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
EPSS: 0.002210000 probability, percentile 0.118820000 (date 2026-10-19)
Problem Types: CWE-470 | CWE-470 CWE-470 Use of Externally-Controlled input to select classes or code ('unsafe reflection')
| Version | Source | Type | Score | Severity | Vector |
|---|---|---|---|---|---|
| 3.1 | a1a479f7-907b-4ae8-a999-9148cadc9224 | Secondary | 7 | HIGH | CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H |
| 3.1 | CNA | CVSS | 7 | HIGH | CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H |
CVSS v3.1 Breakdown
Attack Vector
LocalAttack Complexity
HighPrivileges Required
LowUser Interaction
NoneScope
UnchangedConfidentiality
HighIntegrity
HighAvailability
HighCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Vendor Declared Affected Products
| Source | Vendor | Product | Version | Platforms |
|---|---|---|---|---|
| CNA | OpenGauss-server | OpenGauss-connector-jdbc | unaffected 7.0.0-LTS | openEuler, Centos |
| CNA | OpenGauss-server | OpenGauss-connector-jdbc | affected 1.0.0, 1.0.1, 1.1.0 | openEuler, Centos |
| CNA | OpenGauss-server | OpenGauss-connector-jdbc | affected 2.0.0, 2.1.0 | openEuler, Centos |
| CNA | OpenGauss-server | OpenGauss-connector-jdbc | affected 3.0.0-3.0.5 | openEuler, Centos |
| CNA | OpenGauss-server | OpenGauss-connector-jdbc | affected 3.1.0-3.1.1 | openEuler, Centos |
| CNA | OpenGauss-server | OpenGauss-connector-jdbc | affected 5.0.0-5.0.3 | openEuler, Centos |
| CNA | OpenGauss-server | OpenGauss-connector-jdbc | affected 5.1.0 | openEuler, Centos |
| CNA | OpenGauss-server | OpenGauss-connector-jdbc | affected 5.0.0-RC1 | openEuler, Centos |
| CNA | OpenGauss-server | OpenGauss-connector-jdbc | affected 6.0.0-RC1 | openEuler, Centos |
| CNA | OpenGauss-server | OpenGauss-connector-jdbc | affected 6.0.0-6.0.6 | openEuler, Centos |
| CNA | OpenGauss-server | OpenGauss-connector-jdbc | affected 7.0.0-RC1, 7.0.0-RC2, 7.0.0-RC3 | openEuler, Centos |
References
| Reference | Source | Link | Tags |
|---|---|---|---|
| gitcode.com/opengauss/openGauss-connector-jdbc/pull/423 | a1a479f7-907b-4ae8-a999-9148cadc9224 | gitcode.com | |
| CVE Program record | CVE.ORG | www.cve.org | canonical |
| NVD vulnerability detail | NVD | nvd.nist.gov | canonical, analysis |
No vendor comments have been submitted for this CVE.
There are currently no legacy QID mappings associated with this CVE.