CVE-2026-55856: MariaDB has cleartext password disclosure to a MITM on the initial-handshake
When a Java application connects with sslMode=verify-full (or verify-ca) and a password but does not pin a server certificate, Connector/J deliberately accepts an untrusted/self-signed certificate at the TLS layer (the “MITM-proof without a CA” feature) and proves the server’s identity afterwards by binding the certificate fingerprint into the authentication exchange. That fingerprint enforcement is applied to the OK-packet and auth-switch paths but not to the initial-handshake path. An active man-in-the-middle that presents a self-signed certificate, claims to be MariaDB, and names the initial authentication plugin mysql_clear_password receives the victim’s database password in cleartext, before any fingerprint/identity check runs. The connection is torn down a moment later, but the credential is already gone.
References
- github.com/advisories/GHSA-g9jj-cgmh-9f38
- github.com/mariadb-corporation/mariadb-connector-j/commit/149ec6a626376214966c01f42d48be1b80d06056
- github.com/mariadb-corporation/mariadb-connector-j/commit/d90b9872322c76b05a48219be66bff1d33102f8a
- github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.4.3
- github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.5.9
- github.com/mariadb-corporation/mariadb-connector-j/security/advisories/GHSA-g9jj-cgmh-9f38
- hackerone.com/reports/3777370
- jira.mariadb.org/browse/CONJ-1325
- nvd.nist.gov/vuln/detail/CVE-2026-55856
Code Behaviors & Features
Detect and mitigate CVE-2026-55856 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →