CVE-2026-119281Medium· 5.9▾ SunlitMariaDB Connector/J: Server could switch character_set_results away from UTF-8 without the client noticing
▾ Sunlit zone — Low / medium · no exploitation signal
impact 32.5 · likelihood 0.1 · exploitation 0
Need a working PoC? Pro members can cast a request and our team develops one — it lands right here.
Disclosure to exploitation, from the record and what we observed since indexing it.
Disclosed via GHSA
0.3%
MariaDB Connector/J decodes every result as UTF-8 and guards
character_set_client against a change to another charset, but did not guard
character_set_results, and relied on the server's global
session_track_system_variables list to be told about charset changes at all.
The connector learns about session variable changes through session tracking,
and closes the connection when character_set_client is switched away from UTF-8,
so that its UTF-8 decoding stays correct. Two gaps remained:
character_set_results was not guarded: a server could switch it to another
charset, after which the bytes of every result were decoded as UTF-8 although
encoded otherwise.session_track_system_variables: a server configured, or made, not to track
the character set variables could change them silently.The fix requests an explicit session tracking list that includes both character
set variables whatever the server's global setting, and closes the connection
when character_set_results is changed to a charset other than utf8, utf8mb3
or utf8mb4, as it already did for character_set_client.
Integrity: a malicious or compromised server, or a MitM, can make the strings an application reads differ from the bytes the server returned (inappropriate encoding for the output context), which can defeat application-side validation or escaping built on those values. Exploitation requires control of the server side of the connection; no confidentiality or availability impact.
Reported by fg0x0
org.mariadb.jdbc:mariadb-java-client >= 3.0.0, < 3.3.7org.mariadb.jdbc:mariadb-java-client >= 3.4.0, < 3.4.5org.mariadb.jdbc:mariadb-java-client >= 3.5.0, < 3.5.11Upgrade to a patched release:
org.mariadb.jdbc:mariadb-java-client 3.3.7org.mariadb.jdbc:mariadb-java-client 3.4.5org.mariadb.jdbc:mariadb-java-client 3.5.11Connected by shared product, vendor, weakness, or advisory.
CVE-2026-119280Low· 3.7MariaDB Connector/J: XA recover() trusted server-supplied gtrid and bqual lengths
CVE-2026-119210Medium· 5.9MariaDB Connector/J: LOAD DATA LOCAL INFILE file check could be satisfied by text inside quoted identifiers, letting a malicious server read client files
CVE-2026-119276Medium· 5.9MariaDB Connector/J: Rogue server can drive large heap allocations from server-declared lengths in OK packets
CVE-2026-119279Medium· 5.9MariaDB Connector/J: Length-encoded integers larger than Integer.MAX_VALUE were truncated before being used as lengths
CVE-2026-55858Medium· 5.9MariaDB Connector/J is used to connect applications developed in Java to MariaDB and MySQL databases
CVE-2026-55856Medium· 5.9MariaDB Connector/J is used to connect applications developed in Java to MariaDB and MySQL databases