Skip to main content

MariaDB Connector/J CVE-2026-55857

MEDIUM
Cleartext Transmission of Sensitive Information (CWE-319)
2026-08-28 GitHub_M GHSA-qxvw-fvwx-5cp7
5.9
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Achieve on-path MITM or rogue server position
  2. Delivery
    Intercept plain TCP database connection (sslMode=DISABLE)
  3. Exploit
    Inject Authentication Switch Request for 'dialog' plugin
  4. Execution
    Unpatched connector transmits password in cleartext
  5. Persist
    Capture database account credentials
  6. Impact
    Authenticate directly to MariaDB server

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V12 - Secure Communication Transport encryption
Exploitation Conditions

Exploitation requires all three of the following conditions to hold simultaneously. First, the MariaDB server must be configured to use PAM authentication for the target account - this is a non-default server-side configuration requiring explicit setup of the 'dialog' authentication plugin on the MariaDB server. Second, the connector must operate with sslMode=DISABLE (which IS the default connector configuration) or with a TLS mode that relies solely on self-signed certificate fingerprint validation rather than CA-verified TLS; connections using properly verified TLS (sslMode=verify-full or verify-ca) are immune. Third, an attacker must achieve an on-path network position (MITM via ARP/DNS spoofing, rogue WiFi, compromised network device) or cause the client to connect to a server they control (rogue server). Exploitation is blocked by: verified TLS on the connector (any sslMode other than DISABLE and fingerprint-only), Unix domain socket connections, setting restrictedAuth to exclude 'dialog', or the absence of PAM authentication on the server. The MITM requirement (AC:H in CVSS) is the most significant real-world limiting factor for widespread exploitation.

Impact

The NVD CVSS 3.1 score of 5.9 (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N) correctly captures the central tension: the confidentiality impact is high (full plaintext credential capture) but attack complexity is high because the attacker must occupy an on-path MITM position or control a server the client connects to. No EPSS data was supplied in the intelligence feed and the vulnerability is absent from CISA KEV, so exploitation probability cannot be quantified numerically. No public exploit code has been identified. The practical risk is bounded by three converging requirements: PAM authentication must be configured server-side (non-default), the connector must operate with sslMode=DISABLE (the default, but not universal), and the attacker must achieve network-layer interposition. Deployments using verified TLS or Unix sockets are fully immune even without patching. The vulnerability is therefore a real priority for organizations using PAM-authenticated MariaDB over unencrypted networks - particularly containerized or cloud-native environments where TLS is sometimes intentionally disabled on internal links - but carries limited risk for deployments already enforcing TLS, which is common in security-conscious environments.

Exploit ScenarioDerived

An attacker performing ARP spoofing or DNS poisoning positions themselves between a Java application server and its MariaDB backend, intercepting the TCP connection. When the application initiates a database connection, the attacker forwards traffic normally until the authentication phase, then injects an Authentication Switch Request nominating the 'dialog' plugin. The unpatched connector, lacking a secure-transport gate on the PAM handler, responds with the account password in cleartext; the attacker captures it and subsequently authenticates directly to the real MariaDB server. No public exploit code has been identified, but the attack requires only standard MITM tooling and knowledge of the MySQL wire protocol.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 28, 2026

MariaDB Connector/J exposes database account passwords in cleartext to on-path attackers or hostile servers when PAM (dialog) authentication is used over plain TCP. The driver's PAM handler (SendPamAuthPacketFactory, plugin name 'dialog') failed to override the requireSsl() gate that correctly protects its sibling mysql_clear_password plugin, inheriting a default value of false and thus omitting the secure-transport requirement. Under the default connector configuration (sslMode=DISABLE, restrictedAuth=null), a man-in-the-middle or rogue server can issue an Authentication Switch Request for the dialog plugin and receive the account password in cleartext, granting full credential reuse against the real database. No public exploit has been identified and the vulnerability is not listed in CISA KEV, but the attack mechanics are straightforward for any on-path attacker against affected deployments.

RemediationAI

Upgrade to the patched release on the applicable branch: 2.x users should upgrade to 2.7.14; 3.0-3.3.x users to 3.3.5; 3.4.x users to 3.4.3; 3.5.x users to 3.5.9. Tagged releases are available at https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.4.3 and https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.5.9. Full patch details are documented in the advisory at https://github.com/mariadb-corporation/mariadb-connector-j/security/advisories/GHSA-qxvw-fvwx-5cp7. Where immediate patching is not feasible, the following compensating controls fully mitigate the attack vector: (1) Set sslMode to verify-full or verify-ca in the JDBC URL to enforce TLS with server identity validation - this eliminates the plaintext TCP path entirely; note this requires provisioning a valid server certificate and may require changes to database server configuration. (2) Restrict database connections to local Unix domain sockets where the application and database co-reside, as Unix sockets are immune to this attack vector per the advisory. (3) Set restrictedAuth to a value that excludes the 'dialog' plugin (e.g., restrictedAuth=native), preventing PAM authentication negotiation entirely, though this will break PAM-authenticated users and may require server-side authentication reconfiguration.

Affected Packages

maven org.mariadb.jdbc:mariadb-java-client fix: 2.7.14, 3.3.5, 3.4.3, 3.5.9

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in maven

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

MariaDB Connector/J (Maven artifact org.mariadb.jdbc:mariadb-java-client, CPE cpe:2.3:a:mariadb-corporation:mariadb-connector-j:*:*:*:*:*:*:*:*) is the official JDBC driver for Java applications connecting to MariaDB and MySQL. CWE-319 (Cleartext Transmission of Sensitive Information) identifies the root cause: the authentication dispatcher selectively enforced a secure-transport gate. The mysql_clear_password plugin correctly returns true from requireSsl(), blocking its use over unencrypted TCP. The PAM handler (SendPamAuthPacketFactory/SendPamAuthPacket, server plugin name 'dialog') lacked this override and inherited false, meaning the protocol-level password exchange it performs - functionally identical in cleartext exposure - was allowed over plain TCP. During connection setup, the server sends an Authentication Switch Request naming the desired plugin; an attacker controlling or intercepting the server-side of that handshake can nominate 'dialog', causing the unpatched driver to respond with the plaintext password. The patch, visible in commit a8599ab, adds requireSsl() returning true to SendPamAuthPacket and updates the dispatcher to also accept local Unix domain sockets as a secure channel, aligning PAM exactly with mysql_clear_password.

Know when Java gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 5.9 MEDIUM
AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
vuln.today AI 5.9 MEDIUM

MITM or hostile server required (AC:H); attacker needs no privileges; only credential confidentiality is impacted (C:H, I:N, A:N).

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
SUSE MEDIUM
Red Hat 5.9 MEDIUM

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
None

DescriptionCVE.org

MariaDB Connector/J is used to connect applications developed in Java to MariaDB and MySQL databases. Prior to 2.7.14, 3.3.5, 3.4.3, and 3.5.9, PAM dialog authentication can be coerced into transmitting the account password over an insecure connection. The mysql_clear_password plugin is gated behind a secure transport, but the sibling PAM handler SendPamAuthPacketFactory, named dialog by the server, does not declare that requirement and inherits the default secure-required value false; older branches implement the same affected behavior in SendPamAuthPacket. A hostile or man-in-the-middle server can send an Authentication Switch Request for dialog over plain TCP, causing the driver to return the user's password in cleartext when sslMode=DISABLE and restrictedAuth=null, which is the default configuration. Properly verified TLS and local Unix sockets are not exposed to this transport vector. This issue is fixed in versions 2.7.14, 3.3.5, 3.4.3, and 3.5.9.

Threat Intelligence Overview

EPSS Score
0.2%
Top 90% exploitable
Prevalence
Medium
popular JDBC driver for MariaDB/MySQL in Java enterprise ecosystems
Threat Intel
1
1 sources
Exploit
POC
Public exploit code exists
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium
NVD CVE.org EPSS Vulnrichment GHSA Vendor CIRCL GitHub

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

50
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +30
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Affected Products (CPE)CVE.org

cpe:2.3:a:mariadb-corporation:mariadb-connector-j:*:*:*:*:*:*:*:*

More in Java

View all
CVE-2012-4681 CRITICAL POC
9.8 Aug 28

Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m

CVE-2015-7450 CRITICAL POC
9.8 Jan 02

Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti

CVE-2013-2465 CRITICAL POC
9.8 Jun 18

Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent

CVE-2011-3544 CRITICAL POC
9.8 Oct 19

Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug

CVE-2010-1871 HIGH POC
8.8 Aug 05

JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to

CVE-2012-1723 CRITICAL POC
9.8 Jun 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up

CVE-2013-0422 CRITICAL POC
9.8 Jan 10

Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using

CVE-2012-0507 CRITICAL POC
9.8 Jun 07

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up

CVE-2015-4852 CRITICAL POC
9.8 Nov 18

The WLS Security component in Oracle WebLogic Server 10.3.6.0, 12.1.2.0, 12.1.3.0, and 12.2.1.0 allows remote attackers

CVE-2012-5076 CRITICAL POC
9.8 Oct 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow

CVE-2017-3066 CRITICAL POC
9.8 Apr 27

Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla

CVE-2012-0391 CRITICAL POC
9.8 Jan 08

The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during

Vendor StatusVendor

SUSE

Severity: Moderate

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy