Summary
MariaDB's connector leaks the cleartext password to an MitM despite `ssl: true`
Advisory details
Summary
When SSL/TLS is enabled but no CA / server certificate is provided, the connector verifies the server's identity using fingerprint validation. The check is effective, the connection is ultimately rejected when it fails, but it happens after the authentication exchange. As a result, the credentials are sent before validation occurs, so an active man-in-the-middle who presents their own certificate receives the password in the handshake before the connection is aborted.
Impact
The credentials are transmitted to the peer before the server's identity is validated. An on-path attacker (MitM) presenting any certificate can capture the account password, even though the connection then fails the fingerprint check and is closed. The disclosed credentials can subsequently be used to authenticate directly against the server.
- Attacker requirement: active man-in-the-middle position on the network path
- Affected configuration: SSL/TLS enabled without a CA / server certificate
Affected versions
- < 3.2.4
- 3.3.0 – 3.3.2
- 3.4.0 – 3.4.5
- 3.5.0 – 3.5.2
Patches
Fixed in 3.2.4, 3.3.3, 3.4.6, and 3.5.3. Upgrade to one of these (or later) on your branch.
Workarounds
Until you can upgrade, configure certificate verification explicitly, provide the server/CA certificate and use a verifying SSL mode (e.g. VERIFY_CA / VERIFY_FULL).
Reported by haaahaaahiihiiii (no GitHub account).
References
- https://github.com/advisories/GHSA-cqhc-2h57-wpxf
- https://github.com/mariadb-corporation/mariadb-connector-nodejs/security/advisories/GHSA-cqhc-2h57-wpxf
- https://github.com/mariadb-corporation/mariadb-connector-nodejs/commit/514576a5a1fab3ea8498613e259a0b7a764e7302
- https://github.com/mariadb-corporation/mariadb-connector-nodejs/commit/c47d7275835c78c7eb8186cd23e9d57c045c128b
- https://github.com/mariadb-corporation/mariadb-connector-nodejs/commit/ecd36958e6e3bf0e0fa8389546f50c0ed6dbb2ac
- https://hackerone.com/reports/3777370
- https://github.com/mariadb-corporation/mariadb-connector-nodejs/releases/tag/3.3.3
- https://github.com/mariadb-corporation/mariadb-connector-nodejs/releases/tag/3.4.6
Related vulnerabilities
All Supply chain →- HIGHCVE-2026-72793
SiYuan: Non-administrator responses from /api/system/getConf omit three secrets that the configuration-export path explicitly strips, disclosing the session-cookie signing key and the OS username to anonymous readers
- HIGHCVE-2026-72794
SiYuan: The session-cookie signing key (Conf.CookieKey) is returned to anonymous readers by /api/system/getConf
- HIGHCVE-2026-72801
SiYuan: Encrypted-notebook key-derivation material and wrapped notebook keys disclosed to anonymous readers, enabling offline master-password cracking
- HIGHGHSA-vx52-2968-3vc6
pnpm: Environment secrets exfiltrated via env-placeholder expansion in proxy settings read from an untrusted pnpm-workspace.yaml
- HIGHGHSA-3f6p-5ww8-9rcr
MySQL2: Auth Plugin Downgrade to mysql_clear_password Leaks Plaintext Credentials
- MEDIUMCVE-2026-55860
org.mariadb:r2dbc-mariadb vulnerable to cleartext password disclosure to a man-in-the-middle server (clear-text auth plugins not gated on a secure transport)