Ad · Leaderboard 728×90

CVE-2026-102469

9.2Critical

Published 15 Oct 2026 · NVD status: Undergoing Analysis · AI triage by gemini-3.8-flash

9.2Critical
Attack vector
Network
Complexity
High
Privileges needed
None
User interaction
None
Impact
Full C/I/A compromise
Weakness
CWE-502

Impact

A malicious or man-in-the-middle DB2 server can execute arbitrary code or crash your application via Java deserialization. Exploitation requires network positioning to intercept traffic or control over the target DB2 server.

Root cause

The DRDA protocol handler deserializes User Defined Type column data using a raw ObjectInputStream.readObject() call without any class filtering or allowlists.

Affected systems

Eclipse Vert.x vertx-db2-client versions 4.0.0 through 4.5.34, 5.0.0 through 5.0.12, 5.1.0 through 5.1.9, and 5.2.0.

CVSS v4.0 · CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

Fix & remediation

Fixed versions are not specified in the advisory; upgrade to the latest patched releases of io.vertx:vertx-db2-client once available. As an immediate mitigation, enforce TLS for all DB2 client connections to prevent man-in-the-middle attacks.

AI-suggested. Run it in staging first and check it against the vendor advisory. Why?

Ad · In-content banner

NVD description

In Eclipse Vert.x versions [4.0.0, 4.5.34] or [5.0.0,5.0.12] or [5.1.0,5.1.9] or [5.2.0, 5.2.0], the Vert.x DB2 client (vertx-db2-client) contains DRDA protocol handling code that deserializes User Defined Type (UDT) column data using a bare ObjectInputStream.readObject() call with no ObjectInputFilter or class allowlist. This code path is triggered when a DRDA server sends a result set with a column tagged as UDT (FDOCA protocol LID 0x50). However, DB2 does not support this type of UDT. The FDOCA 0x50 type is never sent by a legitimate DB2 server. Nevertheless, a malicious or man-in-the-middle DRDA server could craft a response with a 0x50-tagged column, causing the client to deserialize arbitrary attacker-controlled bytes on the Vert.x event loop before any application code can inspect or reject the data. If a Java deserialization gadget chain is present on the application's classpath, this enables remote code execution. Without a gadget chain, denial of service is possible via crafted object graphs. TLS is disabled by default, making man-in-the-middle exploitation feasible. The impacted component is io.vertx:vertx-db2-client.

References

Source: nvd.nist.gov/vuln/detail/CVE-2026-102469

Ad · Sticky 320×50 / 728×90