CVE-2026-49261: MariaDB Server Command Execution Vulnerability
Critical CVSS (10.0) reachable over local.
| Field | Value |
|---|---|
| CVE ID | CVE-2026-49261 |
| CVSS score | 10.0 Critical |
| Attack vector | Not provided in the NVD response reviewed |
| Auth required | Unknown from published summary; vulnerable condition is wsrep_notify_cmd enabled |
| Patch status | Fixed releases available |
TL;DR - MariaDB Server can execute shell commands embedded in a joiner node name when
wsrep_notify_cmdis enabled. - Affects specific 10.6, 10.11, 11.4, 11.8, and 12.3 releases. - Patch urgently or disablewsrep_notify_cmdimmediately.
Vulnerability at a glance
CVE-2026-49261 is a critical MariaDB Server vulnerability affecting clustered deployments that use wsrep and have wsrep_notify_cmd enabled. According to the NVD description, the bug allows shell commands embedded in the name of the joiner node to be executed. This issue crosses a trust boundary: data that should be treated as metadata about a cluster node can reach a shell execution path.
The most important nuance is scope. This is not a blanket vulnerability affecting every MariaDB instance. It is tied to specific MariaDB Server version ranges and requires wsrep_notify_cmd to be enabled. For defenders, asset scoping matters: a standalone MariaDB server with no wsrep/Galera usage is in a very different risk position than a clustered deployment using notification hooks.
| Item | Details |
|---|---|
| Vendor | MariaDB |
| Product | MariaDB Server |
| Severity | Critical |
| NVD CVSS | 10.0 |
| KEV status | Not listed in CISA KEV as of 2026-06-11 |
| In-the-wild exploitation | No primary-source confirmation found |
| Public PoC | No verified public PoC confirmed from available sources |
What this vulnerability is
The published description indicates that MariaDB Server would execute shell commands embedded in the name of the joiner node when wsrep_notify_cmd is enabled. This points to an unsafe shell invocation pattern in wsrep/Galera notification handling. If untrusted or insufficiently sanitized node name data is passed into a shell command context, command injection becomes possible.
For practitioners, the risk is less about the abstract label and more about the execution path. wsrep_notify_cmd is intended to run a command or script in response to wsrep state changes. This feature is often used for automation, alerting, or service coordination in clustered environments. However, once a shell is in the path, any untrusted input incorporated into that command becomes dangerous. Here, the joiner node name is the reported unsafe input source.
Technical Notes
A simplified example of the risky pattern defenders should think about is shelling out with unsanitized variables:
# Illustrative only, not vendor source code
wsrep_notify_cmd="/usr/local/bin/cluster-hook.sh"
joiner_name="node1; id; uname -a"
sh -c "$wsrep_notify_cmd $joiner_name"
You can inspect whether the feature is enabled from MariaDB:
SHOW VARIABLES LIKE 'wsrep_notify_cmd';
SHOW VARIABLES LIKE 'wsrep_on';
SHOW VARIABLES LIKE 'wsrep_cluster_name';
If wsrep_notify_cmd is non-empty, treat the system as exposed if it also falls in an affected version range.
Who is affected
Based on the NVD description, the affected MariaDB Server versions are exactly:
10.6.1 through 10.6.2610.11.1 through 10.11.1711.4.1 through 11.4.1111.8.1 through 11.8.712.3.1
The issue is fixed in:
10.6.2710.11.1811.4.1211.8.812.3.2
The vulnerable condition is also explicit: wsrep_notify_cmd must be enabled. This means version matching alone is not enough to determine exposure. You need both an affected release and the feature enabled. In many environments, this will primarily affect Galera-based or wsrep-enabled MariaDB cluster nodes rather than general-purpose database servers.
A useful triage approach is to answer three questions quickly. First, are you running one of the listed affected versions? Second, are you using wsrep/Galera clustering features on that host? Third, is wsrep_notify_cmd configured to a non-empty value? If the answer to all three is yes, prioritize the system as immediately exposed until patched or reconfigured.
| Status | Version |
|---|---|
| Affected | 10.6.1 through 10.6.26 |
| Affected | 10.11.1 through 10.11.17 |
| Affected | 11.4.1 through 11.4.11 |
| Affected | 11.8.1 through 11.8.7 |
| Affected | 12.3.1 |
| Fixed | 10.6.27 |
| Fixed | 10.11.18 |
| Fixed | 11.4.12 |
| Fixed | 11.8.8 |
| Fixed | 12.3.2 |
Severity and exploitation status
NVD assigns CVSS 10.0, placing this at the highest severity tier. The full vector string was not available in the source material reviewed, so defenders should avoid assuming specifics about attack complexity or privileges required beyond what is explicitly documented. What is documented is enough to justify urgent action: remote command execution behavior tied to cluster join metadata is inherently high risk in environments that expose or automate cluster operations.
On exploitation status, there is currently no primary-source confirmation that CVE-2026-49261 is being exploited in the wild. It is not listed in CISA’s Known Exploited Vulnerabilities catalog as of 2026-06-11. Likewise, from the available source set, there is no verified public proof-of-concept repository or exploit code to cite. That does not reduce the operational priority much. For a CVSS 10.0 issue with straightforward command execution semantics, defenders should assume weaponization is plausible even if no public reporting is yet available.
When data is missing, the safest operational assumption is this: treat the issue as high-likelihood-to-be-exploited in exposed clustered environments, but do not claim active exploitation unless you have telemetry or a trusted source proving it. That distinction matters for incident communication and change prioritization.
What defenders should do next
First, identify every MariaDB deployment using wsrep/Galera and inventory the exact version and wsrep_notify_cmd setting. This can usually be done quickly through configuration management, SQL queries, or CMDB enrichment. If you find an affected version with wsrep_notify_cmd enabled, classify it as urgent.
Second, patch or disable the feature, then perform a short retrospective hunt. Because this vulnerability can lead to shell execution, review process logs, audit logs, EDR telemetry, and change history for suspicious child processes from MariaDB around cluster joins. If your logging is incomplete, document that gap and increase monitoring on any still-exposed nodes until remediation is complete.
For additional context on related vulnerabilities, refer to CVE-2026-8719 and CVE-2026-8760.
Detection and hunting guidance
Detection for this vulnerability is not likely to rely on a clean, vendor-provided IOC set yet. Instead, focus on configuration exposure, process ancestry, and unusual cluster event handling. Start by finding every MariaDB node with wsrep_notify_cmd enabled, then determine whether those hosts are on affected versions. That scoping exercise is your highest-value detection step because it identifies where exploitation is even possible.
After that, hunt for suspicious child processes spawned by the MariaDB server process, especially around cluster membership changes or joiner events. The vulnerable behavior implies command execution through a shell or helper process. Depending on the operating system and deployment style, suspicious children might include sh, bash, dash, python, perl, curl, wget, or other interpreters and utilities launched from mariadbd or related service units.
Technical Notes
Check version and configuration directly:
SELECT VERSION();
SHOW VARIABLES LIKE 'wsrep_notify_cmd';
SHOW VARIABLES LIKE 'wsrep_on';
On Linux hosts, look for MariaDB child process execution:
ps -eo pid,ppid,user,cmd | egrep 'mariadbd|mysqld|/bin/sh|/bin/bash|curl|wget'
Auditd-style process hunting example:
ausearch -ts today -i | egrep 'mariadbd|mysqld|/bin/sh|/bin/bash|curl|wget'
A concrete log pattern to search for is any wsrep-related join event immediately followed by shell execution from the MariaDB service account. If you centralize process logs in SIEM, a generic detection query could look like:
-- Pseudocode / SIEM-style logic
SELECT timestamp, host, parent_process, process_name, command_line
FROM process_events
WHERE parent_process IN ('mariadbd', 'mysqld')
AND process_name IN ('sh', 'bash', 'dash', 'curl', 'wget', 'python', 'perl')
ORDER BY timestamp DESC;
If you collect MariaDB logs, also search for wsrep cluster state change markers near suspicious process launches. Exact log phrasing can vary by version and configuration, so defenders should baseline normal wsrep join activity first, then look for anomalous timing or command execution around those events.
Mitigation and patching
The best fix is to upgrade to a patched release. The documented fixed versions are 10.6.27, 10.11.18, 11.4.12, 11.8.8, and 12.3.2. Choose the fixed version that matches your current MariaDB release branch and support policy. In clustered environments, stage and validate the upgrade carefully to avoid unnecessary availability impact, but do not let that become a reason to defer the fix without compensating controls.
If you cannot upgrade immediately, the documented workaround is to disable wsrep_notify_cmd. This is the right emergency mitigation because the vulnerable behavior is explicitly conditioned on that feature being enabled. Before changing it, review any automation or operational workflows that depend on notification hooks so teams are not surprised by side effects. A short interruption to nonessential automation is preferable to leaving a critical command execution path exposed.
Technical Notes
To verify current runtime configuration:
SHOW VARIABLES LIKE 'wsrep_notify_cmd';
A temporary runtime change may be possible depending on deployment and configuration management, but defenders should persist the workaround in the MariaDB configuration file. For example, review MariaDB config locations such as /etc/mysql/my.cnf, /etc/my.cnf, or included conf.d files and set:
[mysqld]
wsrep_notify_cmd=
Then restart MariaDB during a planned maintenance window:
sudo systemctl restart mariadb
Package upgrade examples will vary by platform and repository. Common Linux examples include:
# Debian/Ubuntu
sudo apt update
sudo apt install mariadb-server
# RHEL/Rocky/AlmaLinux
sudo dnf update MariaDB-server
# SUSE
sudo zypper update MariaDB-server
After upgrading, confirm the installed version is one of the fixed releases and re-check the configuration:
SELECT VERSION();
SHOW VARIABLES LIKE 'wsrep_notify_cmd';
If you are unsure whether wsrep_notify_cmd is needed, the safest immediate action is to disable it first, then test and plan the upgrade. In the absence of more detailed vendor exploitation guidance, assume unpatched exposed nodes deserve accelerated maintenance.
References
Primary references used for this article:
- NVD record for CVE-2026-49261
- GitHub Security Advisory:
https://github.com/MariaDB/server/security/advisories/GHSA-3p3m-4x7c-p4pw - MariaDB Jira issue:
https://jira.mariadb.org/browse/MDEV-39721 - MariaDB security vulnerabilities documentation:
https://mariadb.com/docs/server/security/cve/community-server
This article may contain affiliate links. We earn a commission on qualifying purchases at no extra cost to you.