MariaDB Connector/Nodejs, Cleartext Transmission of Sensitive Information, CVE-2026-55854 (Medium) -DC-Aug2026-2037

Listen to this Post

MariaDB Connector/Node.js is a driver that enables Node.js applications to connect to MariaDB and MySQL databases. A security vulnerability, identified as CVE-2026-55854, exists in versions prior to 3.2.4, 3.3.3, 3.4.6, and 3.5.3. This flaw allows a malicious actor to obtain a user’s password in cleartext during the authentication process.
The root cause lies in the inconsistent enforcement of security policies for different authentication plugins. The `mysql_clear_password` plugin, which transmits passwords in cleartext, is correctly protected. The driver refuses to use it over an insecure, plain TCP connection. However, the PAM (Pluggable Authentication Modules) `dialog` plugin, handled by SendPamAuthPacketFactory, did not inherit this same secure-transport gate. It retained the default `secure-required` value of false.
This oversight creates a dangerous scenario. With default settings—where `sslMode` is set to `DISABLE` and `restrictedAuth` is null—the connection is not encrypted. An attacker positioned on the network path (a Man-in-the-Middle) can exploit this. During the initial handshake, the malicious server sends an “Authentication Switch Request”, instructing the client to use the PAM `dialog` plugin. Because this plugin lacks the secure-transport check, the connector complies and sends the user’s password in cleartext over the network.
This attack does not require any non-default options and can be triggered with the driver’s standard configuration. Connections that use properly verified TLS or a local Unix socket are not vulnerable to this attack vector. However, connections relying solely on self-signed certificate fingerprint validation are still susceptible. The vulnerability is classified as medium severity with a CVSS v3.1 base score of 5.9.

DailyCVE Form:

  • Platform: MariaDB Connector/Node.js
  • Version: <3.2.4, <3.3.3, <3.4.6, <3.5.3
  • Vulnerability: Cleartext password disclosure
  • Severity: Medium (CVSS 5.9)
  • Date: 2026-08-28
  • Prediction: 2026-09-04

    What Undercode Say:

  • Vulnerable Code Path: The flaw exists in `lib/cmd/handshake/auth/pam-password-auth.js` and lib/cmd/handshake/authentication.js.
  • Misconfigured Gate: The `SendPamAuthPacketFactory` for the `dialog` plugin lacks the `secure-required` flag.
  • Default Insecurity: The default `sslMode=DISABLE` and `restrictedAuth=null` settings make the attack possible.
  • Patch Strategy: The fix applies the same secure-transport requirement to PAM as used for mysql_clear_password.
  • Mitigation: Upgrade to version 3.2.4, 3.3.3, 3.4.6, or 3.5.3.

Affected Code Snippet (Vulnerable Logic)

// lib/cmd/handshake/auth/pam-password-auth.js
// The SendPamAuthPacketFactory does not enforce a secure transport.
// This allows the password to be sent in cleartext over plain TCP.
class SendPamAuthPacketFactory {
// Missing: this.secureRequired = true;
// ...
}

Exploit: (Educational Purposes!)

A successful exploit relies on a Man-in-the-Middle (MITM) position. The attacker’s server must be able to intercept and modify the traffic between the client and the legitimate database server.
1. Intercept Connection: The attacker positions themselves on the network path and intercepts the client’s connection attempt to the database.
2. Send Auth Switch: Instead of completing the normal authentication, the malicious server sends an `Authentication Switch Request` packet to the client.
3. Request Dialog Plugin: This request instructs the client to switch to the PAM `dialog` authentication plugin.
4. Receive Cleartext Password: The vulnerable client, lacking the secure-transport check, complies and sends the user’s password in cleartext back to the attacker’s server.

Example of a MITM setup using tools like ettercap or tcpdump to capture traffic
This is a simplified illustration of the network interception point.
On the attacker's machine, to capture traffic on a network interface:
sudo tcpdump -i eth0 port 3306 -A
The attacker would then need to craft and inject an Authentication Switch Request
packet for the 'dialog' plugin. The specific packet crafting is beyond this summary.

Protection

Protecting against CVE-2026-55854 involves several strategies, with upgrading being the most definitive.
– Upgrade: The primary and most reliable fix is to upgrade to a patched version of the MariaDB Connector/Node.js. The issue is resolved in versions 3.2.4, 3.3.3, 3.4.6, and 3.5.3.
– Enforce TLS: If an immediate upgrade is not possible, enforce a secure connection. Set `sslMode` to `REQUIRED` or `VERIFY_CA` instead of DISABLED.
– Restrict Authentication Plugins: Use the `restrictedAuth` configuration option to explicitly disallow the `dialog` plugin from being negotiated over insecure connections.
– Avoid PAM over Plain TCP: As a workaround, avoid using PAM (dialog) authentication over plain, unencrypted TCP connections.

Impact

The successful exploitation of this vulnerability has a severe impact on the confidentiality of user credentials.
– Credential Theft: An attacker can capture the database account password in cleartext.
– Unauthorized Access: With the stolen credentials, the attacker can authenticate to the database as the compromised user.
– Lateral Movement: If the password is reused for other services or applications, the attacker can use it to gain access to those systems as well, leading to a broader security breach.
– Data Breach: Once authenticated, the attacker can access, modify, or exfiltrate sensitive data stored in the database.

🎯Let’s Practice Exploiting & Learn Patching For Free:

🎓 Live Courses & Certifications:

Join Undercode Academy for Verified Certifications

🚀 Request a Custom Project:

Secure, high-velocity infrastructure and disruptive technological engineering. Contact our engineering team for high-tier development and proprietary systems:
[email protected]
💎 Smart Architecture | 🛡️ Secure by Design | ⭐ Trusted by Thousands

Sources:

Reported By: github.com
Extra Source Hub:
Undercode

🔐JOIN OUR CYBER WORLD [ CVE News • HackMonitor • UndercodeNews ]

💬 Whatsapp | 💬 Telegram

📢 Follow DailyCVE & Stay Tuned:

𝕏 formerly Twitter 🐦 | @ Threads | 🔗 Linkedin Featured Image

Scroll to Top