CVE-2026-119280
MariaDB Connector/J : XA recover() trusted server-supplied gtrid and bqual lengths
MariaDB Connector/J is used to connect applications developed in Java to MariaDB and MySQL databases. From 3.0.0 until 3.3.7, 3.4.5, and 3.5.11, the MariaDbPoolConnection.recover() and MariaDbPoolPinnedConnection.recover() implementations trusted the gtrid_length and bqual_length columns returned by XA RECOVER. The methods allocated and split Xid byte arrays without validating the lengths against Xid.MAXGTRIDSIZE, Xid.MAXBQUALSIZE, or the actual data payload. A malicious or compromised server, or a machine-in-the-middle attacker, could cause large allocations, NegativeArraySizeException, or ArrayIndexOutOfBoundsException during XA recovery. This issue is fixed in versions 3.3.7, 3.4.5, and 3.5.11.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- Low
Exploit likelihood
What each source reports
CVE List Score used
3.7
MariaDB Connector/J : XA recover() trusted server-supplied gtrid and bqual lengths
MariaDB Connector/J is used to connect applications developed in Java to MariaDB and MySQL databases. From 3.0.0 until 3.3.7, 3.4.5, and 3.5.11, the MariaDbPoolConnection.recover() and MariaDbPoolPinnedConnection.recover() implementations trusted the gtrid_length and bqual_length columns returned by XA RECOVER. The methods allocated and split Xid byte arrays without validating the lengths against Xid.MAXGTRIDSIZE, Xid.MAXBQUALSIZE, or the actual data payload. A malicious or compromised server, or a machine-in-the-middle attacker, could cause large allocations, NegativeArraySizeException, or ArrayIndexOutOfBoundsException during XA recovery. This issue is fixed in versions 3.3.7, 3.4.5, and 3.5.11.
- Record
CVE-2026-119280- CVSS 3.1
- 3.7 Low
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L - Weakness
- CWE-20, CWE-789
- Updated
- 2026-11-02
EUVDEUVD-2026-113387
3.7
MariaDB Connector/J is used to connect applications developed in Java to MariaDB and MySQL databases. From 3.0.0 until 3.3.7, 3.4.5, and 3.5.11, the MariaDbPoolConnection.recover() and MariaDbPoolPinnedConnection.recover() implementations trusted the gtrid_length and bqual_length columns returned by XA RECOVER. The methods allocated and split Xid byte arrays without validating the lengths against Xid.MAXGTRIDSIZE, Xid.MAXBQUALSIZE, or the actual data payload. A malicious or compromised server, or a machine-in-the-middle attacker, could cause large allocations, NegativeArraySizeException, or ArrayIndexOutOfBoundsException during XA recovery. This issue is fixed in versions 3.3.7, 3.4.5, and 3.5.11.
- Record
EUVD-2026-113387- CVSS 3.1
- 3.7 Low
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-4jq2-8v3c-97w8
3.7
MariaDB Connector/J: XA recover() trusted server-supplied gtrid and bqual lengths
Summary
XAResource.recover() in MariaDB Connector/J trusted the gtrid_length and
bqual_length columns returned by XA RECOVER to allocate and split each Xid.
Details
MariaDbPoolConnection and MariaDbPoolPinnedConnection built each Xid of
the recovery list by allocating new byte[gtrid_length] and
new byte[bqual_length] and copying from the data column, without validating
the lengths against the XA specification bounds (Xid.MAXGTRIDSIZE,
Xid.MAXBQUALSIZE) or the actual payload. Negative or oversized lengths, or
lengths that do not fit the data, ended in large allocations or unchecked
exceptions (NegativeArraySizeException, ArrayIndexOutOfBoundsException)
during recovery.
The fix validates the lengths before any allocation or copy and reports an
invalid row as an XAException (XAER_RMFAIL).
Impact
Availability only, and limited to applications running XA recovery: a malicious or compromised server, or a MitM, can crash the recovery or drive large allocations. Exploitation requires control of the server side of the connection.
Credit
Reported by fg0x0
- Record
GHSA-4jq2-8v3c-97w8- CVSS 3.1
- 3.7 Low
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L - Weakness
- CWE-20, CWE-789
- Updated
- 2026-11-02
NVD
3.7
MariaDB Connector/J is used to connect applications developed in Java to MariaDB and MySQL databases. From 3.0.0 until 3.3.7, 3.4.5, and 3.5.11, the MariaDbPoolConnection.recover() and MariaDbPoolPinnedConnection.recover() implementations trusted the gtrid_length and bqual_length columns returned by XA RECOVER. The methods allocated and split Xid byte arrays without validating the lengths against Xid.MAXGTRIDSIZE, Xid.MAXBQUALSIZE, or the actual data payload. A malicious or compromised server, or a machine-in-the-middle attacker, could cause large allocations, NegativeArraySizeException, or ArrayIndexOutOfBoundsException during XA recovery. This issue is fixed in versions 3.3.7, 3.4.5, and 3.5.11.
- Record
CVE-2026-119280- CVSS 3.1
- 3.7 Low
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L - Weakness
- CWE-20, CWE-789
- Updated
- 2026-11-02
OSV
3.7
MariaDB Connector/J : XA recover() trusted server-supplied gtrid and bqual lengths
MariaDB Connector/J is used to connect applications developed in Java to MariaDB and MySQL databases. From 3.0.0 until 3.3.7, 3.4.5, and 3.5.11, the MariaDbPoolConnection.recover() and MariaDbPoolPinnedConnection.recover() implementations trusted the gtrid_length and bqual_length columns returned by XA RECOVER. The methods allocated and split Xid byte arrays without validating the lengths against Xid.MAXGTRIDSIZE, Xid.MAXBQUALSIZE, or the actual data payload. A malicious or compromised server, or a machine-in-the-middle attacker, could cause large allocations, NegativeArraySizeException, or ArrayIndexOutOfBoundsException during XA recovery. This issue is fixed in versions 3.3.7, 3.4.5, and 3.5.11.
- Record
CVE-2026-119280- CVSS 3.1
- 3.7 Low
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L - Weakness
- CWE-20, CWE-789
- Updated
- 2026-11-04
OSVDEBIAN-CVE-2026-119280
3.7
MariaDB Connector/J is used to connect applications developed in Java to MariaDB and MySQL databases. From 3.0.0 until 3.3.7, 3.4.5, and 3.5.11, the MariaDbPoolConnection.recover() and MariaDbPoolPinnedConnection.recover() implementations trusted the gtrid_length and bqual_length columns returned by XA RECOVER. The methods allocated and split Xid byte arrays without validating the lengths against Xid.MAXGTRIDSIZE, Xid.MAXBQUALSIZE, or the actual data payload. A malicious or compromised server, or a machine-in-the-middle attacker, could cause large allocations, NegativeArraySizeException, or ArrayIndexOutOfBoundsException during XA recovery. This issue is fixed in versions 3.3.7, 3.4.5, and 3.5.11.
- Record
DEBIAN-CVE-2026-119280- CVSS 3.1
- 3.7 Low
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L - Updated
- 2026-11-02
OSVGHSA-4jq2-8v3c-97w8
3.7
MariaDB Connector/J: XA recover() trusted server-supplied gtrid and bqual lengths
Summary
XAResource.recover() in MariaDB Connector/J trusted the gtrid_length and
bqual_length columns returned by XA RECOVER to allocate and split each Xid.
Details
MariaDbPoolConnection and MariaDbPoolPinnedConnection built each Xid of
the recovery list by allocating new byte[gtrid_length] and
new byte[bqual_length] and copying from the data column, without validating
the lengths against the XA specification bounds (Xid.MAXGTRIDSIZE,
Xid.MAXBQUALSIZE) or the actual payload. Negative or oversized lengths, or
lengths that do not fit the data, ended in large allocations or unchecked
exceptions (NegativeArraySizeException, ArrayIndexOutOfBoundsException)
during recovery.
The fix validates the lengths before any allocation or copy and reports an
invalid row as an XAException (XAER_RMFAIL).
Impact
Availability only, and limited to applications running XA recovery: a malicious or compromised server, or a MitM, can crash the recovery or drive large allocations. Exploitation requires control of the server side of the connection.
Credit
Reported by fg0x0
- Record
GHSA-4jq2-8v3c-97w8- CVSS 3.1
- 3.7 Low
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L - Weakness
- CWE-20, CWE-789
- Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-119280
3.7
MariaDB Connector/J is used to connect applications developed in Java to MariaDB and MySQL databases. From 3.0.0 until 3.3.7, 3.4.5, and 3.5.11, the MariaDbPoolConnection.recover() and MariaDbPoolPinnedConnection.recover() implementations trusted the gtrid_length and bqual_length columns returned by XA RECOVER. The methods allocated and split Xid byte arrays without validating the lengths against Xid.MAXGTRIDSIZE, Xid.MAXBQUALSIZE, or the actual data payload. A malicious or compromised server, or a machine-in-the-middle attacker, could cause large allocations, NegativeArraySizeException, or ArrayIndexOutOfBoundsException during XA recovery. This issue is fixed in versions 3.3.7, 3.4.5, and 3.5.11.
- Record
UBUNTU-CVE-2026-119280- CVSS 3.1
- 3.7 Low
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L - Updated
- 2026-11-05
OSVopenSUSE-SU-2026:12401-1 No score
mariadb-java-client-3.5.11-1.1 on GA media
These are all security issues fixed in the mariadb-java-client-3.5.11-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:12401-1- Updated
- 2026-11-04
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
org.mariadb.jdbc:mariadb-java-clientMaven |
3.0.0 up to 3.3.7 | 3.3.7 |
org.mariadb.jdbc:mariadb-java-clientMaven |
3.4.0 up to 3.4.5 | 3.4.5 |
org.mariadb.jdbc:mariadb-java-clientMaven |
3.5.0 up to 3.5.11 | 3.5.11 |
mariadb-connector-javaDebian:12 |
All versions, plus listed versions 2.7.15-12.7.6-13.5.10-1 |
None known |
mariadb-connector-javaDebian:13 |
All versions, plus listed versions 2.7.15-12.7.6-13.5.10-1 |
None known |
mariadb-connector-javaDebian:14 |
All versions, plus listed versions 2.7.15-12.7.6-13.5.10-1 |
None known |
org.mariadb.jdbc:mariadb-java-clientMaven |
3.0.0 up to 3.3.7, plus listed versions 3.0.1-beta3.0.103.0.113.0.2-rc3.0.3 Show 19 moreShow less3.0.43.0.53.0.63.0.73.0.83.0.93.1.03.1.13.1.23.1.33.1.43.2.03.3.03.3.13.3.23.3.33.3.43.3.53.3.6 |
3.3.7 |
org.mariadb.jdbc:mariadb-java-clientMaven |
3.4.0 up to 3.4.5, plus listed versions 3.4.13.4.23.4.33.4.4 |
3.4.5 |
org.mariadb.jdbc:mariadb-java-clientMaven |
3.5.0 up to 3.5.11, plus listed versions 3.5.13.5.103.5.23.5.33.5.4 Show 5 moreShow less3.5.53.5.63.5.73.5.83.5.9 |
3.5.11 |
mariadb-connector-javaUbuntu:18.04:LTS |
All versions, plus listed versions 2.3.0-1~18.04 |
None known |
Show 6 moreShow less
| Package | Affected | Fixed |
|---|---|---|
mariadb-connector-javaUbuntu:20.04:LTS |
All versions, plus listed versions 2.4.2-1build22.5.3-1 |
None known |
mariadb-connector-javaUbuntu:22.04:LTS |
All versions, plus listed versions 2.7.2-12.7.4-1 |
None known |
mariadb-connector-javaUbuntu:24.04:LTS |
All versions, plus listed versions 2.7.6-1 |
None known |
mariadb-connector-javaUbuntu:26.10 |
All versions, plus listed versions 2.7.6-1build1 |
None known |
mariadb-connector-javaUbuntu:26.04:LTS |
All versions, plus listed versions 2.7.6-12.7.6-1build1 |
None known |
mariadb-java-clientopenSUSE:Tumbleweed From an advisory covering 7 CVEs |
before 3.5.11-1.1 | 3.5.11-1.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected | OSV | |
| affected, aliases, facts, references | OSV | |
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-119280 is a low vulnerability (CVSS 3.7) in Mariadb-corporation Mariadb-connector-j, published October 29, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.31%, the 23rd percentile. Fixed in org.mariadb.jdbc:mariadb-java-client 3.3.7.
References
github.com/mariadb-corporation/mariadb-connector-j/security/advisories/GHSA-4jq2-8v3c-97w8
github.com/mariadb-corporation/mariadb-connector-j/commit/280efcfb4390055858fa2dd12b722d85a6a13ab8
github.com/mariadb-corporation/mariadb-connector-j/commit/47aba5a23548b35191865a428cc674316b95ee47
github.com/mariadb-corporation/mariadb-connector-j/commit/e9d767103bfd178ed57caa4cb97bbfbf7e54da6b
github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.3.7
github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.4.5
Show 15 moreShow less
github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.5.11
nvd.nist.gov/vuln/detail/CVE-2026-119280
github.com/advisories/GHSA-4jq2-8v3c-97w8
github.com/CVEProject/cvelistV5/tree/main/cves/2026/119xxx/CVE-2026-119280.json
security-tracker.debian.org/tracker/CVE-2026-119280
github.com/mariadb-corporation/mariadb-connector-j
ubuntu.com/security/CVE-2026-119280
cve.org/CVERecord?id=CVE-2026-119280
suse.com/security/cve/CVE-2026-119210
suse.com/security/cve/CVE-2026-119276
suse.com/security/cve/CVE-2026-119277
suse.com/security/cve/CVE-2026-119278
suse.com/security/cve/CVE-2026-119279
suse.com/security/cve/CVE-2026-119280
suse.com/security/cve/CVE-2026-119281