Description
MariaDB Connector/Node.js is used to connect applications developed on Node.js to MariaDB and MySQL databases. Prior to versions 3.3.3, 3.4.6, and 3.5.3, when ssl is enabled without a pinned CA or server certificate, MariaDB Connector/Node.js sends credentials before completing certificate fingerprint validation. In lib/cmd/handshake/auth/handshake.js, a server that selects mysql_clear_password as the initial authentication plugin can receive the password before the post-TLS identity check. In lib/cmd/handshake/authentication.js, an authentication switch can evaluate the previous plugin instead of the requested target plugin, allowing mysql_clear_password to send the credential first. An active man-in-the-middle can present a self-signed certificate, capture the database password, and use it to authenticate directly even though the connector later rejects the server and closes the connection. This issue is fixed in versions 3.3.3, 3.4.6, and 3.5.3.
Published: 2026-08-28
Score: 7.5 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

In the affected MariaDB Connector/Node.js implementations, credentials are transmitted in cleartext before the SSL/TLS server certificate is fully verified. This occurs when the connector is configured with `ssl: true` but no pinned CA or server certificate is supplied. The connector first sends the password when mysql_clear_password is selected as the authentication plugin, and this occurs before the post‑TLS identity check completes. As a result, an attacker performing a man‑in‑the‑middle can receive the cleartext password, capture it, and later use the same credentials to authenticate to the database. The weakness is a classic disclosure of sensitive information (CWE‑295) and inadequate protection of credentials (CWE‑522). Attackers may not gain code execution but can compromise account access, leading to potential data theft or further exploitation.

Affected Systems

The vulnerability affects the MariaDB Connector/Node.js library for Node.js applications. Versions prior to 3.3.3, 3.4.6, and 3.5.3 are impacted. The vendor is MariaDB Corporation, product name Connector/Node.js. Any Node.js application using this connector will be susceptible until the library is upgraded to a fixed release.

Risk and Exploitability

The CVSS score of 7.5 indicates a high vulnerability severity. The exploit requires an active network attacker capable of intercepting traffic between the Node.js application and the MariaDB or MySQL server. If the connection occurs over an unsecured network or a compromised LAN, the attacker can present a forged self‑signed certificate, capture the password, and later authenticate to the database until the connection is rejected. The EPSS score is not available, and the vulnerability is not listed in the CISA KEV catalog, suggesting that while the risk is significant, there is no current evidence of widespread exploitation.

Generated by OpenCVE AI on August 28, 2026 at 20:50 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the MariaDB Connector/Node.js library to version 3.3.3, 3.4.6, or 3.5.3 (or a newer release) where the issue is resolved.
  • Configure the connector to use a trusted CA certificate or enable server certificate pinning so that the server identity is verified before authentication begins.
  • Ensure that connections are established over secure, trusted networks or through a VPN, and avoid using untrusted or public Wi‑Fi when enabling SSL without certificate pinning.

Generated by OpenCVE AI on August 28, 2026 at 20:50 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-cqhc-2h57-wpxf MariaDB's connector leaks the cleartext password to an MitM despite `ssl: true`
History

Fri, 28 Aug 2026 19:45:00 +0000

Type Values Removed Values Added
Description MariaDB Connector/Node.js is used to connect applications developed on Node.js to MariaDB and MySQL databases. Prior to versions 3.3.3, 3.4.6, and 3.5.3, when ssl is enabled without a pinned CA or server certificate, MariaDB Connector/Node.js sends credentials before completing certificate fingerprint validation. In lib/cmd/handshake/auth/handshake.js, a server that selects mysql_clear_password as the initial authentication plugin can receive the password before the post-TLS identity check. In lib/cmd/handshake/authentication.js, an authentication switch can evaluate the previous plugin instead of the requested target plugin, allowing mysql_clear_password to send the credential first. An active man-in-the-middle can present a self-signed certificate, capture the database password, and use it to authenticate directly even though the connector later rejects the server and closes the connection. This issue is fixed in versions 3.3.3, 3.4.6, and 3.5.3.
Title MariaDB Connector/Node.js: Connector leaks the cleartext password to an MitM despite `ssl: true`
Weaknesses CWE-295
CWE-522
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-28T19:02:49.413Z

Reserved: 2026-06-16T16:16:32.627Z

Link: CVE-2026-55215

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-28T20:18:26.353

Modified: 2026-08-28T20:18:26.353

Link: CVE-2026-55215

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-28T21:00:04Z

Weaknesses
  • CWE-295

    Improper Certificate Validation

  • CWE-522

    Insufficiently Protected Credentials