CVE-2026-111440
在 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。
CVSS
- Base score
- 7
- Version
- 3.1
- Vector
- CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Exploitation probability (EPSS)
- Probability of exploitation in the next 30 days
- 0.22 %
- Percentile among all scored CVEs
- 12
- Score date
- 10/21/2026
EPSS (Exploit Prediction Scoring System, FIRST) estimates how likely a vulnerability is to be exploited in the wild within 30 days. It complements CVSS (impact) and CISA KEV (confirmed exploitation).
ATT&CK techniques
How this vulnerability is exploited and what the attacker gains, in MITRE ATT&CK terms.
- Exploitation
T1068Exploitation for Privilege Escalationprivilege escalation85 % - Primary impact
T1574Hijack Execution Flowstealth · execution35 %
El vector AV:L/UI:N/PR:L indica acceso local sin interacción; el texto describe carga e instanciación no esperada de clases en el cliente vía logger, sin ejecución de comandos explícita.
Inferred by our analysis agent from the official description, CVSS vector and CWE, and checked by a supervisor. May contain errors.
ATT&CK mitigations that cover these techniques
Affected technologies (1)
⚠ AI-inferred from the description — NVD hasn't analyzed this CVE yet, these aren't verified CPEs.
CWEs
- CWE-470
References
Show 1 references
Raw JSON (NVD)
Show
{
"id": "CVE-2026-111440",
"cveTags": [],
"metrics": {
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"id": "CVE-2026-111440",
"role": "CISA Coordinator",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "total"
}
],
"version": "2.0.3",
"timestamp": "2026-10-19T17:39:30.858779Z"
}
}
],
"cvssMetricV31": [
{
"type": "Secondary",
"source": "a1a479f7-907b-4ae8-a999-9148cadc9224",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 7,
"attackVector": "LOCAL",
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H",
"integrityImpact": "HIGH",
"userInteraction": "NONE",
"attackComplexity": "HIGH",
"availabilityImpact": "HIGH",
"privilegesRequired": "LOW",
"confidentialityImpact": "HIGH"
},
"impactScore": 5.9,
"exploitabilityScore": 1
}
]
},
"affected": [
{
"source": "a1a479f7-907b-4ae8-a999-9148cadc9224",
"affectedData": [
{
"vendor": "openGauss-server",
"product": "openGauss-connector-jdbc",
"versions": [
{
"status": "unaffected",
"version": "7.0.0-LTS"
},
{
"status": "affected",
"version": "1.0.0, 1.0.1, 1.1.0"
},
{
"status": "affected",
"version": "2.0.0, 2.1.0"
},
{
"status": "affected",
"version": "3.0.0-3.0.5"
},
{
"status": "affected",
"version": "3.1.0-3.1.1"
},
{
"status": "affected",
"version": "5.0.0-5.0.3"
},
{
"status": "affected",
"version": "5.1.0"
},
{
"status": "affected",
"version": "5.0.0-RC1"
},
{
"status": "affected",
"version": "6.0.0-RC1"
},
{
"status": "affected",
"version": "6.0.0-6.0.6"
},
{
"status": "affected",
"version": "7.0.0-RC1, 7.0.0-RC2, 7.0.0-RC3"
}
],
"platforms": [
"openEuler",
"Centos"
],
"collectionURL": "https://opengauss.org/zh/download/archive/?version=7.0.0-RC3",
"defaultStatus": "unaffected"
}
]
}
],
"published": "2026-10-19T04:17:03.657",
"references": [
{
"url": "https://gitcode.com/opengauss/openGauss-connector-jdbc/pull/423",
"source": "a1a479f7-907b-4ae8-a999-9148cadc9224"
}
],
"vulnStatus": "Deferred",
"weaknesses": [
{
"type": "Secondary",
"source": "a1a479f7-907b-4ae8-a999-9148cadc9224",
"description": [
{
"lang": "en",
"value": "CWE-470"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "在 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 中存在可被加载的类时,可能在客户端触发非预期的类加载与构造副作用。\n\n此漏洞自 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。"
}
],
"lastModified": "2026-10-19T20:56:36.663",
"sourceIdentifier": "a1a479f7-907b-4ae8-a999-9148cadc9224"
}